44 PastixTagMemSendValAt,
45 PastixTagMemSendValAAt,
47 PastixTagMemRecvIdxAt,
48 PastixTagMemRecvIdxAAt,
49 PastixTagMemRecvValAAt,
135 double bcscInit(
const spmatrix_t *spm,
139 pastix_bcsc_t *bcsc );
141 void bcscExit( pastix_bcsc_t *bcsc );
151 pastix_bcsc_t *bcsc );
156 pastix_bcsc_t *bcsc );
159 const pastix_bcsc_t *bcsc );
161 const pastix_bcsc_t *bcsc,
162 const spmatrix_t *spm );
165 pastix_bcsc_t *bcsc );
168 #if defined(PASTIX_WITH_MPI)
176 const pastix_bcsc_t *bcsc );
BEGIN_C_DECLS typedef int pastix_int_t
void bcsc_restore_coltab(pastix_bcsc_t *bcsc)
Restores the coltab array when it has been modified to initialize the row and values arrays.
void bcsc_init_struct(const spmatrix_t *spm, const SolverMatrix *solvmtx, pastix_bcsc_t *bcsc)
Initializes a block csc.
pastix_int_t bcsc_init_coltab(const spmatrix_t *spm, const pastix_order_t *ord, const SolverMatrix *solvmtx, pastix_bcsc_t *bcsc)
Initializes the coltab of a block csc matrix. The coltab corresponds to the number of rows (expended)...
pastix_int_t * bcsc_init_col2cblk(const SolverMatrix *solvmtx, const pastix_bcsc_t *bcsc, const spmatrix_t *spm)
Creates the array which represents the repartition of each column in the block structure....
void bcsc_handle_comm_init(const SolverMatrix *solvmtx, pastix_bcsc_t *bcsc)
Initializes the bcsc_handle_comm_t structure.
pastix_int_t * bcsc_init_col2cblk_shm(const SolverMatrix *solvmtx, const pastix_bcsc_t *bcsc)
Creates the array which represents the repartition of each column in the block structure....
void bcsc_exit_struct(pastix_bcsc_t *bcsc)
Cleanup the bcsc struct. (symmetric of bcsc_init_struct)
void bcsc_handle_comm_exit(bcsc_handle_comm_t *bcsc_comm)
Frees the bcsc_handle_comm pointers.
bcsc_proc_comm_t data_comm[1]
bcsc_handle_comm_t * bcsc_comm
bcsc_data_amount_t recvAt
pastix_coeftype_t flttype
pastix_coeftype_t flttype
struct bcsc_exch_comm_s bcsc_exch_comm_t
Information about the sending data.
struct bcsc_data_amount_s bcsc_data_amount_t
Information about the amount of data.
enum bcsc_tag_ bcsc_tag_e
Tags used in MPI communications.
double bcscInit(const spmatrix_t *spm, const pastix_order_t *ord, const SolverMatrix *solvmtx, pastix_int_t initAt, pastix_bcsc_t *bcsc)
Initializes the block csc matrix.
struct bcsc_cblk_s bcsc_cblk_t
Compressed colptr format for the bcsc.
struct bcsc_handle_comm_s bcsc_handle_comm_t
Structure to manage communications with distributed spm.
struct bcsc_proc_comm_s bcsc_proc_comm_t
Informations of the data exchanged with other processors.
void bcscExit(pastix_bcsc_t *bcsc)
Frees the block csc structure but do not free the bcsc pointer.
bcsc_tag_
Tags used in MPI communications.
Compressed colptr format for the bcsc.
Information about the amount of data.
Information about the sending data.
Structure to manage communications with distributed spm.
Informations of the data exchanged with other processors.
Internal column block distributed CSC matrix.
spm_coeftype_t pastix_coeftype_t
Arithmetic types.
spm_mtxtype_t pastix_mtxtype_t
Matrix symmetry type property.
Solver column block structure.