Visible to Intel only — GUID: GUID-89C1F318-7802-41F5-96F8-4245F4476BF1
Visible to Intel only — GUID: GUID-89C1F318-7802-41F5-96F8-4245F4476BF1
?_init_sph_p/?_init_sph_np
Initializes basic data structures of the periodic and non-periodic Fast Helmholtz Solver on a sphere.
Syntax
void d_init_sph_p (const double * ap, const double * at, const double * bp, const double * bt, const MKL_INT * np, const MKL_INT *nt, const double * q, MKL_INT * ipar, double * dpar, MKL_INT * stat );
void s_init_sph_p (const float * ap, const float * at, const float * bp, const float * bt, const MKL_INT * np, const MKL_INT * nt, const float * q, MKL_INT * ipar, float * spar, MKL_INT * stat );
void d_init_sph_np (const double * ap, const double * at, const double * bp, const double * bt, const MKL_INT * np, const MKL_INT *nt, const double * q, MKL_INT * ipar, double * dpar, MKL_INT * stat );
void s_init_sph_np (const float * ap, const float * at, const float * bp, const float * bt, const MKL_INT * np, const MKL_INT * nt, const float * q, MKL_INT * ipar, float * spar, MKL_INT * stat );
Include Files
- mkl.h
Input Parameters
ap |
double* for d_init_sph_p/d_init_sph_np, float* for s_init_sph_p/s_init_sph_np. The coordinate (angle) of the leftmost boundary of the domain along the φ-axis. |
bp |
double* for d_init_sph_p/d_init_sph_np, float* for s_init_sph_p/s_init_sph_np. The coordinate (angle) of the rightmost boundary of the domain along the φ-axis. |
at |
double* for d_init_sph_p/d_init_sph_np, float* for s_init_sph_p/s_init_sph_np. The coordinate (angle) of the leftmost boundary of the domain along the θ-axis. |
bt |
double* for d_init_sph_p/d_init_sph_np, float* for s_init_sph_p/s_init_sph_np. The coordinate (angle) of the rightmost boundary of the domain along the θ-axis. |
np |
MKL_INT*. The number of mesh intervals along the φ-axis. Must be even in the periodic case. |
nt |
MKL_INT*. The number of mesh intervals along the θ-axis. |
q |
double* for d_init_sph_p/d_init_sph_np, float* for s_init_sph_p/s_init_sph_np. The constant Helmholtz coefficient. To solve the Poisson problem, set the value of q to 0. |
Output Parameters
ipar |
MKL_INT array of size 128. Contains integer data to be used by Fast Helmholtz Solver on a sphere (for details, refer to ipar). |
dpar |
double array of size 5*np/2+nt+10. Contains double-precision data to be used by Fast Helmholtz Solver on a sphere (for details, refer to dpar and spar). |
spar |
float array of size 5*np/2+nt+10. Contains single-precision data to be used by Fast Helmholtz Solver on a sphere (for details, refer to dpar and spar). |
stat |
MKL_INT*. Routine completion status, which is also written to ipar[0]. Continue to call other Poisson Solver routines only if the status is 0. |
Description
The ?_init_sph_p/?_init_sph_np routines initialize basic data structures for Poisson Solver computations. All routines invoked after a call to a ?_init_Helmholtz_2D/?_init_Helmholtz_3D routine use values of the ipar, dpar, and spar array parameters returned by the routine. A detailed description of the array parameters can be found in Common Parameters.
Data structures initialized and created by periodic flavors of the routine cannot be used by non-periodic flavors of any Poisson Solver routines for Helmholtz Solver on a sphere, and vice versa.
You can skip calls to these routines in your code. However, see Caveat on Parameter Modifications for information on initializing the data structures.
Return Values
stat= 0 |
The routine successfully completed the task. In general, to proceed with computations, the routine should complete with this stat value. |
stat= -99999 |
The routine failed to complete the task because of fatal error. |