ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
#include <mpi.h>
#include <map>
#include <vector>
Go to the source code of this file.
Namespaces | |
namespace | pexsi |
namespace | pexsi::DistMatrixTransformer |
Functions | |
int | pexsi::DistMatrixTransformer::MinimumIndexPosition (const bool isFirst, const int nprocs, int *size_process, int *displacement_process, const int *index) |
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) |
void | pexsi::DistMatrixTransformer::buffer2CCSvalue (int nnzLocal, int *buffer2ccsIndex, double *buffer, double *nzvalLocal) |
void | pexsi::DistMatrixTransformer::countMatrixDistribution (int N, double *A, std::map< int, int > &P) |
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::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 | pexsi::DistMatrixTransformer::newGroupCommTrans (DistBCDMatrix &SRC_Matrix, DistCCSMatrix &DST_Matrix, MPI_Group &GROUP_TRANS, MPI_Comm &COMM_TRANS) |
int | pexsi::DistMatrixTransformer::deleteGroupCommTrans (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) |