ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
Functions | |
int | MinimumIndexPosition (const bool isFirst, const int nprocs, int *size_process, int *displacement_process, const int *index) |
void | buildCCSParameter (const int size, const int nprocs, std::vector< int > size_process, std::vector< int > displacement_process, const int *position_index, DistCCSMatrix &DST_Matrix, int *buffer2ccsIndex) |
void | buffer2CCSvalue (int nnzLocal, int *buffer2ccsIndex, double *buffer, double *nzvalLocal) |
void | countMatrixDistribution (int N, double *A, std::map< int, int > &P) |
int | getNonZeroIndex (char layout, const int nrow, const int ncol, double *H_2d, double *S_2d, const double ZERO_Limit, int &nnz, std::vector< int > &rowidx, std::vector< int > &colidx) |
int | buildTransformParameter (DistBCDMatrix &SRC_Matrix, DistCCSMatrix &DST_Matrix, const int NPROC_TRANS, MPI_Group &GROUP_TRANS, MPI_Comm &COMM_TRANS, const int nnz, std::vector< int > &rowidx, std::vector< int > &colidx, int &sender_size, std::vector< int > &sender_size_process, std::vector< int > &sender_displacement_process, int &receiver_size, std::vector< int > &receiver_size_process, std::vector< int > &receiver_displacement_process, std::vector< int > &buffer2ccsIndex) |
int | newGroupCommTrans (DistBCDMatrix &SRC_Matrix, DistCCSMatrix &DST_Matrix, MPI_Group &GROUP_TRANS, MPI_Comm &COMM_TRANS) |
int | deleteGroupCommTrans (MPI_Group &GROUP_TRANS, MPI_Comm &COMM_TRANS) |
int | transformBCDtoCCS (DistBCDMatrix &SRC_Matrix, double *H_2d, double *S_2d, const double ZERO_Limit, DistCCSMatrix &DST_Matrix, double *&H_ccs, double *&S_ccs) |
int | transformCCStoBCD (DistCCSMatrix &SRC_Matrix, double *DMnzvalLocal, double *ENDnzvalLocal, DistBCDMatrix &DST_Matrix, double *DM_2d, double *ED_2d) |
void pexsi::DistMatrixTransformer::buffer2CCSvalue | ( | int | nnzLocal, |
int * | buffer2ccsIndex, | ||
double * | buffer, | ||
double * | nzvalLocal | ||
) |
void pexsi::DistMatrixTransformer::buildCCSParameter | ( | const int | size, |
const int | nprocs, | ||
std::vector< int > | size_process, | ||
std::vector< int > | displacement_process, | ||
const int * | position_index, | ||
DistCCSMatrix & | DST_Matrix, | ||
int * | buffer2ccsIndex | ||
) |
int pexsi::DistMatrixTransformer::buildTransformParameter | ( | DistBCDMatrix & | SRC_Matrix, |
DistCCSMatrix & | DST_Matrix, | ||
const int | NPROC_TRANS, | ||
MPI_Group & | GROUP_TRANS, | ||
MPI_Comm & | COMM_TRANS, | ||
const int | nnz, | ||
std::vector< int > & | rowidx, | ||
std::vector< int > & | colidx, | ||
int & | sender_size, | ||
std::vector< int > & | sender_size_process, | ||
std::vector< int > & | sender_displacement_process, | ||
int & | receiver_size, | ||
std::vector< int > & | receiver_size_process, | ||
std::vector< int > & | receiver_displacement_process, | ||
std::vector< int > & | buffer2ccsIndex | ||
) |
void pexsi::DistMatrixTransformer::countMatrixDistribution | ( | int | N, |
double * | A, | ||
std::map< int, int > & | P | ||
) |
int pexsi::DistMatrixTransformer::deleteGroupCommTrans | ( | MPI_Group & | GROUP_TRANS, |
MPI_Comm & | COMM_TRANS | ||
) |
int pexsi::DistMatrixTransformer::getNonZeroIndex | ( | char | layout, |
const int | nrow, | ||
const int | ncol, | ||
double * | H_2d, | ||
double * | S_2d, | ||
const double | ZERO_Limit, | ||
int & | nnz, | ||
std::vector< int > & | rowidx, | ||
std::vector< int > & | colidx | ||
) |
int pexsi::DistMatrixTransformer::MinimumIndexPosition | ( | const bool | isFirst, |
const int | nprocs, | ||
int * | size_process, | ||
int * | displacement_process, | ||
const int * | index | ||
) |
int pexsi::DistMatrixTransformer::newGroupCommTrans | ( | DistBCDMatrix & | SRC_Matrix, |
DistCCSMatrix & | DST_Matrix, | ||
MPI_Group & | GROUP_TRANS, | ||
MPI_Comm & | COMM_TRANS | ||
) |
int pexsi::DistMatrixTransformer::transformBCDtoCCS | ( | DistBCDMatrix & | SRC_Matrix, |
double * | H_2d, | ||
double * | S_2d, | ||
const double | ZERO_Limit, | ||
DistCCSMatrix & | DST_Matrix, | ||
double *& | H_ccs, | ||
double *& | S_ccs | ||
) |
int pexsi::DistMatrixTransformer::transformCCStoBCD | ( | DistCCSMatrix & | SRC_Matrix, |
double * | DMnzvalLocal, | ||
double * | ENDnzvalLocal, | ||
DistBCDMatrix & | DST_Matrix, | ||
double * | DM_2d, | ||
double * | ED_2d | ||
) |