|
kusano |
7d535a |
/** @file superlu_enum_consts.h
|
|
kusano |
7d535a |
* \brief enum constants header file
|
|
kusano |
7d535a |
*
|
|
kusano |
7d535a |
* -- SuperLU routine (version 4.1) --
|
|
kusano |
7d535a |
* Lawrence Berkeley National Lab, Univ. of California Berkeley,
|
|
kusano |
7d535a |
* October 1, 2010
|
|
kusano |
7d535a |
*
|
|
kusano |
7d535a |
*/
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
#ifndef __SUPERLU_ENUM_CONSTS /* allow multiple inclusions */
|
|
kusano |
7d535a |
#define __SUPERLU_ENUM_CONSTS
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
/***********************************************************************
|
|
kusano |
7d535a |
* Enumerate types
|
|
kusano |
7d535a |
***********************************************************************/
|
|
kusano |
7d535a |
typedef enum {NO, YES} yes_no_t;
|
|
kusano |
7d535a |
typedef enum {DOFACT, SamePattern, SamePattern_SameRowPerm, FACTORED} fact_t;
|
|
kusano |
7d535a |
typedef enum {NOROWPERM, LargeDiag, MY_PERMR} rowperm_t;
|
|
kusano |
7d535a |
typedef enum {NATURAL, MMD_ATA, MMD_AT_PLUS_A, COLAMD,
|
|
kusano |
7d535a |
METIS_AT_PLUS_A, PARMETIS, ZOLTAN, MY_PERMC} colperm_t;
|
|
kusano |
7d535a |
typedef enum {NOTRANS, TRANS, CONJ} trans_t;
|
|
kusano |
7d535a |
typedef enum {NOEQUIL, ROW, COL, BOTH} DiagScale_t;
|
|
kusano |
7d535a |
typedef enum {NOREFINE, SINGLE=1, DOUBLE, EXTRA} IterRefine_t;
|
|
kusano |
7d535a |
typedef enum {LUSUP, UCOL, LSUB, USUB, LLVL, ULVL} MemType;
|
|
kusano |
7d535a |
typedef enum {HEAD, TAIL} stack_end_t;
|
|
kusano |
7d535a |
typedef enum {SYSTEM, USER} LU_space_t;
|
|
kusano |
7d535a |
typedef enum {ONE_NORM, TWO_NORM, INF_NORM} norm_t;
|
|
kusano |
7d535a |
typedef enum {SILU, SMILU_1, SMILU_2, SMILU_3} milu_t;
|
|
kusano |
7d535a |
#if 0
|
|
kusano |
7d535a |
typedef enum {NODROP = 0x0000,
|
|
kusano |
7d535a |
DROP_BASIC = 0x0001, /* ILU(tau) */
|
|
kusano |
7d535a |
DROP_PROWS = 0x0002, /* ILUTP: keep p maximum rows */
|
|
kusano |
7d535a |
DROP_COLUMN = 0x0004, /* ILUTP: for j-th column,
|
|
kusano |
7d535a |
p = gamma * nnz(A(:,j)) */
|
|
kusano |
7d535a |
DROP_AREA = 0x0008, /* ILUTP: for j-th column, use
|
|
kusano |
7d535a |
nnz(F(:,1:j)) / nnz(A(:,1:j))
|
|
kusano |
7d535a |
to limit memory growth */
|
|
kusano |
7d535a |
DROP_SECONDARY = 0x000E, /* PROWS | COLUMN | AREA */
|
|
kusano |
7d535a |
DROP_DYNAMIC = 0x0010,
|
|
kusano |
7d535a |
DROP_INTERP = 0x0100} rule_t;
|
|
kusano |
7d535a |
#endif
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
/*
|
|
kusano |
7d535a |
* The following enumerate type is used by the statistics variable
|
|
kusano |
7d535a |
* to keep track of flop count and time spent at various stages.
|
|
kusano |
7d535a |
*
|
|
kusano |
7d535a |
* Note that not all of the fields are disjoint.
|
|
kusano |
7d535a |
*/
|
|
kusano |
7d535a |
typedef enum {
|
|
kusano |
7d535a |
COLPERM, /* find a column ordering that minimizes fills */
|
|
kusano |
7d535a |
ROWPERM, /* find a row ordering maximizes diagonal. */
|
|
kusano |
7d535a |
RELAX, /* find artificial supernodes */
|
|
kusano |
7d535a |
ETREE, /* compute column etree */
|
|
kusano |
7d535a |
EQUIL, /* equilibrate the original matrix */
|
|
kusano |
7d535a |
SYMBFAC, /* symbolic factorization. */
|
|
kusano |
7d535a |
DIST, /* distribute matrix. */
|
|
kusano |
7d535a |
FACT, /* perform LU factorization */
|
|
kusano |
7d535a |
COMM, /* communication for factorization */
|
|
kusano |
7d535a |
SOL_COMM,/* communication for solve */
|
|
kusano |
7d535a |
RCOND, /* estimate reciprocal condition number */
|
|
kusano |
7d535a |
SOLVE, /* forward and back solves */
|
|
kusano |
7d535a |
REFINE, /* perform iterative refinement */
|
|
kusano |
7d535a |
FLOAT, /* time spent in floating-point operations */
|
|
kusano |
7d535a |
TRSV, /* fraction of FACT spent in xTRSV */
|
|
kusano |
7d535a |
GEMV, /* fraction of FACT spent in xGEMV */
|
|
kusano |
7d535a |
FERR, /* estimate error bounds after iterative refinement */
|
|
kusano |
7d535a |
NPHASES /* total number of phases */
|
|
kusano |
7d535a |
} PhaseType;
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
#endif /* __SUPERLU_ENUM_CONSTS */
|