HP MLIB User's Guide Vol. 2 7th Ed.
Chapter 11 Introduction to Distributed SuperLU 741
Distributed SuperLU deļ¬ned data structures
doublecomplex *Lval_buf_2[2];
int_t *Usub_buf;
doublecomplex *Uval_buf;
doublecomplex *ujrow;
int_t bufmax[NBUFFERS];
int_t *ToRecv;
int_t *ToSendD;
int_t **ToSendR;
int_t *fmod;
int_t **fsendx_plist;
int_t *frecv;
int_t nfrecvx;
int_t *bmod;
int_t **bsendx_plist;
int_t *brecv;
int_t nbrecvx;
int_t *ilsum;
int_t ldalsum;
} LocalLU_t;
/***************************************************/
/* Definition of structure: SOLVEstruct_t */
/***************************************************/
typedef struct {
int_t *extern_start;
int_t *ind_tosend;
int_t *ind_torecv;
int_t *ptr_ind_tosend;
int_t *ptr_ind_torecv;
int_t *SendCounts;
int_t *RecvCounts;
doublecomplex *val_tosend;
doublecomplex *val_torecv;
int_t TotalIndSend;
int_t TotalValSend;
} pzgsmv_comm_t;
typedef struct {
int_t iflag;
int_t *row_to_proc;
int_t *inv_perm_c;
int_t num_diag_procs, *diag_procs, *diag_len;
pzgsmv_comm_t *gsmv_comm;
pxgstrs_comm_t *gstrs_comm;
} SOLVEstruct_t;
3. Data structures for both double precision and double complex:
/***************************************************/
/* Definition of structure: superlu_options_t */
/***************************************************/
typedef enum {DOFACT, SamePattern, SamePattern_SameRowPerm, FACTORED}
fact_t;
typedef enum {NOTRANS, TRANS, CONJ}
trans_t;