File: slepcfn.h.html

package info (click to toggle)
slepc 3.24.1%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 122,028 kB
  • sloc: ansic: 104,353; javascript: 12,732; python: 5,958; f90: 3,312; cpp: 1,528; makefile: 761; xml: 679; sh: 347
file content (209 lines) | stat: -rw-r--r-- 27,252 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
<center><a href="https://gitlab.com/slepc/slepc/-/blob/bbccb785e5ebe6829936989c71776839602f087b/include/slepcfn.h">Actual source code: slepcfn.h</a></center><br>

<html>
<head>
<title></title>
<meta name="generator" content="c2html 0.9.6">
<meta name="date" content="2025-11-07T08:27:34+00:00">
</head>

<body bgcolor="#FFFFFF">
<pre width=80>
<a name="line1">  1: </a><font color="#B22222">/*</font>
<a name="line2">  2: </a><font color="#B22222">   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -</font>
<a name="line3">  3: </a><font color="#B22222">   SLEPc - Scalable Library for Eigenvalue Problem Computations</font>
<a name="line4">  4: </a><font color="#B22222">   Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain</font>

<a name="line6">  6: </a><font color="#B22222">   This file is part of SLEPc.</font>
<a name="line7">  7: </a><font color="#B22222">   SLEPc is distributed under a 2-clause BSD license (see LICENSE).</font>
<a name="line8">  8: </a><font color="#B22222">   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -</font>
<a name="line9">  9: </a><font color="#B22222">*/</font>
<a name="line10"> 10: </a><font color="#B22222">/*</font>
<a name="line11"> 11: </a><font color="#B22222">   User interface for the mathematical function object in SLEPc</font>
<a name="line12"> 12: </a><font color="#B22222">*/</font>

<a name="line14"> 14: </a><font color="#A020F0">#pragma once</font>

<a name="line16"> 16: </a>#include <A href="../include/slepcsys.h.html">&lt;slepcsys.h&gt;</A>

<a name="line18"> 18: </a><font color="#B22222">/* SUBMANSEC = <a href="../manualpages/FN/FN.html">FN</a> */</font>

<a name="line20"> 20: </a><strong><font color="#228B22">#define FN_MAX_SOLVE 16</font></strong>

<a name="line22"> 22: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNInitializePackage.html">FNInitializePackage</a>(void)</font></strong>;
<a name="line23"> 23: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNFinalizePackage.html">FNFinalizePackage</a>(void)</font></strong>;

<a name="line25"> 25: </a><font color="#B22222">/*S</font>
<a name="line26"> 26: </a><font color="#B22222">   <a href="../manualpages/FN/FN.html">FN</a> - Abstraction of a mathematical function.</font>

<a name="line28"> 28: </a><font color="#B22222">   Level: beginner</font>

<a name="line30"> 30: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCreate.html">FNCreate</a>()`</font>
<a name="line31"> 31: </a><font color="#B22222">S*/</font>
<a name="line32"> 32: </a><font color="#4169E1">typedef struct _p_FN* <a href="../manualpages/FN/FN.html">FN</a>;</font>

<a name="line34"> 34: </a><font color="#B22222">/*J</font>
<a name="line35"> 35: </a><font color="#B22222">   <a href="../manualpages/FN/FNType.html">FNType</a> - String with the name of the mathematical function.</font>

<a name="line37"> 37: </a><font color="#B22222">   Level: beginner</font>

<a name="line39"> 39: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNSetType.html">FNSetType</a>()`, `<a href="../manualpages/FN/FN.html">FN</a>`</font>
<a name="line40"> 40: </a><font color="#B22222">J*/</font>
<a name="line41"> 41: </a><font color="#4169E1">typedef const char *<a href="../manualpages/FN/FNType.html">FNType</a>;</font>
<a name="line42"> 42: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNRATIONAL.html">FNRATIONAL</a> </font><font color="#666666">"rational"</font><font color="#228B22"></font></strong>
<a name="line43"> 43: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNEXP.html">FNEXP</a>      </font><font color="#666666">"exp"</font><font color="#228B22"></font></strong>
<a name="line44"> 44: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNLOG.html">FNLOG</a>      </font><font color="#666666">"log"</font><font color="#228B22"></font></strong>
<a name="line45"> 45: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNPHI.html">FNPHI</a>      </font><font color="#666666">"phi"</font><font color="#228B22"></font></strong>
<a name="line46"> 46: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNSQRT.html">FNSQRT</a>     </font><font color="#666666">"sqrt"</font><font color="#228B22"></font></strong>
<a name="line47"> 47: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNINVSQRT.html">FNINVSQRT</a>  </font><font color="#666666">"invsqrt"</font><font color="#228B22"></font></strong>
<a name="line48"> 48: </a><strong><font color="#228B22">#define <a href="../manualpages/FN/FNCOMBINE.html">FNCOMBINE</a>  </font><font color="#666666">"combine"</font><font color="#228B22"></font></strong>

<a name="line50"> 50: </a><font color="#B22222">/* Logging support */</font>
<a name="line51"> 51: </a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscClassId/">PetscClassId</a> FN_CLASSID;

<a name="line53"> 53: </a><font color="#B22222">/*E</font>
<a name="line54"> 54: </a><font color="#B22222">   <a href="../manualpages/FN/FNCombineType.html">FNCombineType</a> - Determines how two functions are combined.</font>

<a name="line56"> 56: </a><font color="#B22222">   Values:</font>
<a name="line57"> 57: </a><font color="#B22222">+  `<a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a>`      - add the functions</font>
<a name="line58"> 58: </a><font color="#B22222">.  `<a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a>` - multiply the functions</font>
<a name="line59"> 59: </a><font color="#B22222">.  `<a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a>`   - divide the functions</font>
<a name="line60"> 60: </a><font color="#B22222">-  `<a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a>`  - use function composition</font>

<a name="line62"> 62: </a><font color="#B22222">   Level: intermediate</font>

<a name="line64"> 64: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>()`</font>
<a name="line65"> 65: </a><font color="#B22222">E*/</font>
<a name="line66"> 66: </a><font color="#4169E1">typedef</font> <font color="#4169E1">enum</font> { <a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a>,
<a name="line67"> 67: </a>               <a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a>,
<a name="line68"> 68: </a>               <a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a>,
<a name="line69"> 69: </a>               <a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a> } <a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>;

<a name="line71"> 71: </a><font color="#B22222">/*MC</font>
<a name="line72"> 72: </a><font color="#B22222">   <a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a> - In functions of type `<a href="../manualpages/FN/FNCOMBINE.html">FNCOMBINE</a>`, add the two child functions</font>
<a name="line73"> 73: </a><font color="#B22222">   together.</font>

<a name="line75"> 75: </a><font color="#B22222">   Level: intermediate</font>

<a name="line77"> 77: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>`, `<a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>()`, `<a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a>`, `<a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a>`, `<a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a>`</font>
<a name="line78"> 78: </a><font color="#B22222">M*/</font>

<a name="line80"> 80: </a><font color="#B22222">/*MC</font>
<a name="line81"> 81: </a><font color="#B22222">   <a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a> - In functions of type `<a href="../manualpages/FN/FNCOMBINE.html">FNCOMBINE</a>`, multiply the two child functions</font>
<a name="line82"> 82: </a><font color="#B22222">   together.</font>

<a name="line84"> 84: </a><font color="#B22222">   Level: intermediate</font>

<a name="line86"> 86: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>`, `<a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>()`, `<a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a>`, `<a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a>`, `<a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a>`</font>
<a name="line87"> 87: </a><font color="#B22222">M*/</font>

<a name="line89"> 89: </a><font color="#B22222">/*MC</font>
<a name="line90"> 90: </a><font color="#B22222">   <a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a> - In functions of type `<a href="../manualpages/FN/FNCOMBINE.html">FNCOMBINE</a>`, compute the ratio of the</font>
<a name="line91"> 91: </a><font color="#B22222">   two child functions (the first one in the numerator).</font>

<a name="line93"> 93: </a><font color="#B22222">   Level: intermediate</font>

<a name="line95"> 95: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>`, `<a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>()`, `<a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a>`, `<a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a>`, `<a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a>`</font>
<a name="line96"> 96: </a><font color="#B22222">M*/</font>

<a name="line98"> 98: </a><font color="#B22222">/*MC</font>
<a name="line99"> 99: </a><font color="#B22222">   <a href="../manualpages/FN/FN_COMBINE_COMPOSE.html">FN_COMBINE_COMPOSE</a> - In functions of type `<a href="../manualpages/FN/FNCOMBINE.html">FNCOMBINE</a>`, compose the two child functions,</font>
<a name="line100">100: </a><font color="#B22222">   i.e., evaluate the second function on the result of evaluating the first function.</font>

<a name="line102">102: </a><font color="#B22222">   Level: intermediate</font>

<a name="line104">104: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>`, `<a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>()`, `<a href="../manualpages/FN/FN_COMBINE_ADD.html">FN_COMBINE_ADD</a>`, `<a href="../manualpages/FN/FN_COMBINE_MULTIPLY.html">FN_COMBINE_MULTIPLY</a>`, `<a href="../manualpages/FN/FN_COMBINE_DIVIDE.html">FN_COMBINE_DIVIDE</a>`</font>
<a name="line105">105: </a><font color="#B22222">M*/</font>

<a name="line107">107: </a><font color="#B22222">/*E</font>
<a name="line108">108: </a><font color="#B22222">   <a href="../manualpages/FN/FNParallelType.html">FNParallelType</a> - Indicates the parallel mode that will be used for matrix</font>
<a name="line109">109: </a><font color="#B22222">   function evaluation.</font>

<a name="line111">111: </a><font color="#B22222">   Values:</font>
<a name="line112">112: </a><font color="#B22222">+  `<a href="../manualpages/FN/FN_PARALLEL_REDUNDANT.html">FN_PARALLEL_REDUNDANT</a>`    - all processes compute redundantly</font>
<a name="line113">113: </a><font color="#B22222">-  `<a href="../manualpages/FN/FN_PARALLEL_SYNCHRONIZED.html">FN_PARALLEL_SYNCHRONIZED</a>` - only the first MPI process performs the computation</font>

<a name="line115">115: </a><font color="#B22222">   Level: advanced</font>

<a name="line117">117: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNSetParallel.html">FNSetParallel</a>()`</font>
<a name="line118">118: </a><font color="#B22222">E*/</font>
<a name="line119">119: </a><font color="#4169E1">typedef</font> <font color="#4169E1">enum</font> { <a href="../manualpages/FN/FN_PARALLEL_REDUNDANT.html">FN_PARALLEL_REDUNDANT</a>,
<a name="line120">120: </a>               <a href="../manualpages/FN/FN_PARALLEL_SYNCHRONIZED.html">FN_PARALLEL_SYNCHRONIZED</a> } <a href="../manualpages/FN/FNParallelType.html">FNParallelType</a>;
<a name="line121">121: </a>SLEPC_EXTERN const char *FNParallelTypes[];

<a name="line123">123: </a><font color="#B22222">/*MC</font>
<a name="line124">124: </a><font color="#B22222">   <a href="../manualpages/FN/FN_PARALLEL_REDUNDANT.html">FN_PARALLEL_REDUNDANT</a> - In matrix function evaluation, all processes compute</font>
<a name="line125">125: </a><font color="#B22222">   redundantly.</font>

<a name="line127">127: </a><font color="#B22222">   Note:</font>
<a name="line128">128: </a><font color="#B22222">   When this parallel mode is selected, all processes will make the computation</font>
<a name="line129">129: </a><font color="#B22222">   redundantly, starting from the same data, and producing the same result.</font>
<a name="line130">130: </a><font color="#B22222">   This result may be slightly different in the different processes if using a</font>
<a name="line131">131: </a><font color="#B22222">   multithreaded BLAS library, which may cause issues in ill-conditioned problems.</font>

<a name="line133">133: </a><font color="#B22222">   Level: advanced</font>

<a name="line135">135: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNParallelType.html">FNParallelType</a>`, `<a href="../manualpages/FN/FNSetParallel.html">FNSetParallel</a>()`, `<a href="../manualpages/FN/FN_PARALLEL_SYNCHRONIZED.html">FN_PARALLEL_SYNCHRONIZED</a>`</font>
<a name="line136">136: </a><font color="#B22222">M*/</font>

<a name="line138">138: </a><font color="#B22222">/*MC</font>
<a name="line139">139: </a><font color="#B22222">   <a href="../manualpages/FN/FN_PARALLEL_SYNCHRONIZED.html">FN_PARALLEL_SYNCHRONIZED</a> - In matrix function evaluation, only the first MPI</font>
<a name="line140">140: </a><font color="#B22222">   process performs the computation.</font>

<a name="line142">142: </a><font color="#B22222">   Note:</font>
<a name="line143">143: </a><font color="#B22222">   When this parallel mode is selected, only the first MPI process performs the</font>
<a name="line144">144: </a><font color="#B22222">   computation and then the computed matrix is broadcast to the other</font>
<a name="line145">145: </a><font color="#B22222">   processes in the communicator. This communication is done automatically at</font>
<a name="line146">146: </a><font color="#B22222">   the end of `<a href="../manualpages/FN/FNEvaluateFunctionMat.html">FNEvaluateFunctionMat</a>()` or `<a href="../manualpages/FN/FNEvaluateFunctionMatVec.html">FNEvaluateFunctionMatVec</a>()`.</font>

<a name="line148">148: </a><font color="#B22222">   Level: advanced</font>

<a name="line150">150: </a><font color="#B22222">.seealso: [](sec:fn), `<a href="../manualpages/FN/FNParallelType.html">FNParallelType</a>`, `<a href="../manualpages/FN/FNSetParallel.html">FNSetParallel</a>()`, `<a href="../manualpages/FN/FN_PARALLEL_REDUNDANT.html">FN_PARALLEL_REDUNDANT</a>`</font>
<a name="line151">151: </a><font color="#B22222">M*/</font>

<a name="line153">153: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNCreate.html">FNCreate</a>(<a href="https://petsc.org/release/manualpages/Sys/MPI_Comm/">MPI_Comm</a>,<a href="../manualpages/FN/FN.html">FN</a>*)</font></strong>;
<a name="line154">154: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetType.html">FNSetType</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNType.html">FNType</a>)</font></strong>;
<a name="line155">155: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNGetType.html">FNGetType</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNType.html">FNType</a>*)</font></strong>;
<a name="line156">156: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetOptionsPrefix.html">FNSetOptionsPrefix</a>(<a href="../manualpages/FN/FN.html">FN</a>,const char[])</font></strong>;
<a name="line157">157: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNAppendOptionsPrefix.html">FNAppendOptionsPrefix</a>(<a href="../manualpages/FN/FN.html">FN</a>,const char[])</font></strong>;
<a name="line158">158: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNGetOptionsPrefix.html">FNGetOptionsPrefix</a>(<a href="../manualpages/FN/FN.html">FN</a>,const char*[])</font></strong>;
<a name="line159">159: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetFromOptions.html">FNSetFromOptions</a>(<a href="../manualpages/FN/FN.html">FN</a>)</font></strong>;
<a name="line160">160: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNView.html">FNView</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Viewer/PetscViewer/">PetscViewer</a>)</font></strong>;
<a name="line161">161: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNViewFromOptions.html">FNViewFromOptions</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscObject/">PetscObject</a>,const char[])</font></strong>;
<a name="line162">162: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNDestroy.html">FNDestroy</a>(<a href="../manualpages/FN/FN.html">FN</a>*)</font></strong>;
<a name="line163">163: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNDuplicate.html">FNDuplicate</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/MPI_Comm/">MPI_Comm</a>,<a href="../manualpages/FN/FN.html">FN</a>*)</font></strong>;

<a name="line165">165: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetScale.html">FNSetScale</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>)</font></strong>;
<a name="line166">166: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNGetScale.html">FNGetScale</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*)</font></strong>;
<a name="line167">167: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetMethod.html">FNSetMethod</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>)</font></strong>;
<a name="line168">168: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNGetMethod.html">FNGetMethod</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>*)</font></strong>;
<a name="line169">169: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNSetParallel.html">FNSetParallel</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNParallelType.html">FNParallelType</a>)</font></strong>;
<a name="line170">170: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNGetParallel.html">FNGetParallel</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNParallelType.html">FNParallelType</a>*)</font></strong>;

<a name="line172">172: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNEvaluateFunction.html">FNEvaluateFunction</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*)</font></strong>;
<a name="line173">173: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNEvaluateDerivative.html">FNEvaluateDerivative</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*)</font></strong>;
<a name="line174">174: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNEvaluateFunctionMat.html">FNEvaluateFunctionMat</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat/">Mat</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat/">Mat</a>)</font></strong>;
<a name="line175">175: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNEvaluateFunctionMatVec.html">FNEvaluateFunctionMatVec</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat/">Mat</a>,<a href="https://petsc.org/release/manualpages/Vec/Vec/">Vec</a>)</font></strong>;

<a name="line177">177: </a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscFunctionList/">PetscFunctionList</a> FNList;
<a name="line178">178: </a><strong><font color="#4169E1"><a name="FNRegister"></a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNRegister.html">FNRegister</a>(const char[],<a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a>(*)(<a href="../manualpages/FN/FN.html">FN</a>)</font></strong>);

<a name="line180">180: </a><font color="#B22222">/* --------- options specific to particular functions -------- */</font>

<a name="line182">182: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNRationalSetNumerator.html">FNRationalSetNumerator</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>[])</font></strong>;
<a name="line183">183: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNRationalGetNumerator.html">FNRationalGetNumerator</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*[])</font></strong>;
<a name="line184">184: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNRationalSetDenominator.html">FNRationalSetDenominator</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>[])</font></strong>;
<a name="line185">185: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNRationalGetDenominator.html">FNRationalGetDenominator</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar/">PetscScalar</a>*[])</font></strong>;

<a name="line187">187: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNCombineSetChildren.html">FNCombineSetChildren</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>,<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FN.html">FN</a>)</font></strong>;
<a name="line188">188: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNCombineGetChildren.html">FNCombineGetChildren</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="../manualpages/FN/FNCombineType.html">FNCombineType</a>*,<a href="../manualpages/FN/FN.html">FN</a>*,<a href="../manualpages/FN/FN.html">FN</a>*)</font></strong>;

<a name="line190">190: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNPhiSetIndex.html">FNPhiSetIndex</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>)</font></strong>;
<a name="line191">191: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode/">PetscErrorCode</a> <a href="../manualpages/FN/FNPhiGetIndex.html">FNPhiGetIndex</a>(<a href="../manualpages/FN/FN.html">FN</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt/">PetscInt</a>*)</font></strong>;
</pre>
</body>

</html>