HP MLIB User's Guide Vol. 2 7th Ed.

776 HP MLIB LAPACK User’s Guide
pdgssvx/ pzgssvx, pdgssvx_ABglobal/pzgssvx_ABglobal Solve systems of linear equations
void pzgssvx (superlu_options_t *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, double B[], int ldb, int nrhs,
gridinfo_t *grid, LUstruct_t *LUstruct, SOLVEstruct_t
*SOLVEstruct, double *berr, SuperLUStat_t *stat, int *info)
void pzgssvx_ABglobal (superlu_options_t, *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, doublecomplex B[ ], int ldb,
int nrhs, gridinfo_t *grid, LUstruct_t *LUstruct, double *berr,
SuperLUStat_t *stat, int *info)
SUPERLU_DIST8
void pdgssvx (superlu_options_t *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, double B[], long long ldb, long
long nrhs, gridinfo_t *grid, LUstruct_t *LUstruct,
SOLVEstruct_t *SOLVEstruct, double *berr, SuperLUStat_t *stat,
long long *info)
void pdgssvx_ABglobal (superlu_options_t, *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, double B[ ], long long ldb, long
long nrhs, gridinfo_t *grid, LUstruct_t *LUstruct, double *berr,
SuperLUStat_t *stat, long long *info)
void pzgssvx (superlu_options_t *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, double B[], long long ldb, long
long nrhs, gridinfo_t *grid, LUstruct_t *LUstruct,
SOLVEstruct_t *SOLVEstruct, double *berr,SuperLUStat_t *stat,
long long *info)
void pzgssvx_ABglobal (superlu_options_t, *options, SuperMatrix *A,
ScalePermstruct_t *ScalePermstruct, doublecomplex B[ ], long long
ldb, long long nrhs, gridinfo_t *grid, LUstruct_t *LUstruct, double
*berr, SuperLUStat_t *stat, long long *info)
NOTE 1. The differences between pdgssvx (pzgssvx) and pdgssvx_ABglobal
(pzgssvx_ABglobal) are: for pdgssvx (pzgssvx), the input matrices A and
B are globally available (replicated) on all processes, whereas for
pdgssvx_ABglobal (pzgssvx_ABglobal), the input matrices A and B are
distributed among all processes; and pdgssvx_ABglobal
(pzgssvx_ABglobal) has one more argument SOLVEstruct that is
described below.
SOLVEstruct (input/output)
The data structure to hold the communication pattern used in the
phases of triangular solution and iterative refinement. This pattern
should be intialized only once for repeated solutions. If options->
SolveInitialized = YES, it is an input argument. If options->
SolveInitialized =NOandnrhs != 0, it is an output argument.
2. For the SuperLU_DIST defined data structures, for example