HP MLIB User's Guide Vol. 2 7th Ed.
Chapter 11 Introduction to Distributed SuperLU 745
The input argument: options
typedef enum {
COLPERM,
ROWPERM,
RELAX,
ETREE,
EQUIL,
SYMBFAC,
DIST,
FACT,
COMM,
SOL_COMM,
RCOND,
SOLVE,
REFINE,
FLOAT,
TRSV,
GEMV,
FERR,
NPHASES
} PhaseType;
typedef float flops_t;
typedef struct {
int_t *panel_histo; /* histogram of panel size distribution */
double *utime; /* running time at various phases */
flops_t *ops; /* operation count at various phases */
int_t TinyPivots; /* number of tiny pivots */
int_t RefineSteps; /* number of iterative refinement steps */
} SuperLUStat_t;
The input argument: options
Of all the input arguments for the driver routines pdgssvx_ABglobal and
pzgssvx_ABglobal, options is the most important argument.
Depending on options->Fact, the user has several options for solving AX=B.
The standard option is for factoring A from scratch. The other options described
below, are used when A is sufficiently similar to a previously solved problem to
save time by reusing part or all of the previous factorization.
1. The first value of options->Fact assumes no previous information is
available, and the matrix A will be factored from scratch.
• options->Fact = DOFACT: A is factored from scratch
In this case the user must also supply:
• A, the input matrix.