ipar
- ipar
- MKL_INTarray of size 128, holds integer data needed for Fast Helmholtz Solver (both for Cartesian and spherical coordinate systems). Its elements are described in Table"Elements of the ipar Array":
Initial values can be assigned to the array parameters by the appropriate
?_init_Helmholtz_2D/?_init_Helmholtz_3D
/?_init_sph_p/?_init_sph_np
and
?_commit_Helmholtz_2D/?_commit_Helmholtz_3D
/?_commit_sph_p/?_commit_sph_np
routines.
Index
| Description
| |||
---|---|---|---|---|
0 | Contains status value of the last Poisson Solver routine called. In general, it should be 0 on exit from a routine to proceed with the Fast Helmholtz Solver. The element has no predefined values. This element can also be used to inform the
?_commit_Helmholtz_2D/?_commit_Helmholtz_3D /?_commit_sph_p/?_commit_sph_np routines of how the Commit step of the computation should be carried out (see
Figure
"Typical Order of Invoking Poisson Solver Routines" ). A non-zero value of
ipar[0] with decimal representation
![]() a +10b +c , where each of
a ,
b , and
c is equal to 0 or 9, indicates that some parts of the Commit step should be omitted.
Using
ipar[0] you can adjust the routine to your needs and improve efficiency in solving multiple Helmholtz problems that differ only in the right-hand side. You must be cautious when using this method, because any misunderstanding of the commit process may cause incorrect results or program failure (see also
Caveat on Parameter Modifications).
| |||
1 | Contains error messaging options:
In case of errors, the
stat parameter contains a non-zero value on exit from a routine regardless of the
ipar[1] setting.
| |||
2 | Contains warning messaging options:
In case of warnings, the
stat parameter contains a non-zero value on exit from a routine regardless of the
ipar[2] setting.
| |||
3 through 5 | Internal parameters.
| |||
Parameters
6 through 11 are used only in the Cartesian case.
| ||||
6 | Takes this value:
| |||
7 | Takes this value:
| |||
8 | Takes this value:
| |||
9 | Takes this value:
| |||
10 | Takes this value:
| |||
11 | Takes this value:
| |||
12 | Takes the value of
| |||
13 | Takes the value of
| |||
14 | Takes the value of
nz , the number of intervals along the
z -axis. This parameter is used only in the 3D case (Cartesian).
| |||
15 through 22
| Internal parameters which define the internal partitioning of the
dpar /spar array.
| |||
The values of
ipar[21] -
ipar[119] are assigned regardless of the dimension of the problem for the Cartesian solver or of whether the solver on a sphere is periodic.
| ||||
23 | Contains message style options . Specifically :
| |||
24 | Contains the number of OpenMP threads to be used for computations in a multithreaded environment. The default value is 1 in the serial mode, and the result returned by the
mkl_get_max_threads function otherwise.
| |||
25 through 28 | Internal parameters which define the internal partitioning of the
dpar /spar array.
| |||
25 | Takes the value of
ipar[18] +1, which specifies the internal partitioning of the
dpar/spar array in the periodic Cartesian case.
| |||
26 | Takes the value of
ipar[23] +3*ipar[12] /4, which specifies the internal partitioning of the
dpar/spar array in the periodic Cartesian case.
| |||
27 | Takes the value of
ipar[20] +1, which specifies the internal partitioning of the
dpar/spar array in the periodic 3D Cartesian case.
| |||
28 | Takes the value of
ipar[25] +3*ipar[13] /4, which specifies the internal partitioning of the
dpar/spar array in the periodic 3D Cartesian case.
| |||
29 through 39
| Unused.
| |||
40 through 59
| Contain the first twenty elements of the
ipar array of the first Trigonometric Transform that the solver uses. (For details, see
Common Parameters in the "Trigonometric Transform Routines" section.)
| |||
60 through 79
| Contain the first twenty elements of the
ipar array of the second Trigonometric Transform that the 3D Cartesian and periodic spherical solvers use. (For details, see
Common Parameters in the "Trigonometric Transform Routines" section.)
| |||
80 through 99
| Contain the first twenty elements of the
ipar array of the third Trigonometric Transform that the solver uses in case of periodic boundary conditions along the
x -axis. (For details, see
Common Parameters in the "Trigonometric Transform Routines" section.)
| |||
100 through 119
| Contain the first twenty elements of the
ipar array of the fourth Trigonometric Transform used by periodic spherical solvers and 3D Cartesian solvers with periodic boundary conditions along the
y -axis. (For details, see
Common Parameters in the "Trigonometric Transform Routines" section.)
| |||
120 through 128
| Internal parameters used by nonuniform 3D solvers.
|
While you can declare the
, for future compatibility you should declare
.
ipar
array as
MKL_INT ipar[120]
ipar
as
MKL_INT ipar[128]