53 #ifndef _PEXSI_C_PEXSI_INTERFACE_H_
54 #define _PEXSI_C_PEXSI_INTERFACE_H_
231 double* AinvnzvalLocal,
354 double numElectronExact,
359 double numElectronTolerance,
364 double* muMinInertia,
365 double* muMaxInertia,
370 double* numElectronList,
406 int * numElectronList,
519 double numElectronExact,
527 double numElectronTolerance,
532 double* DMnzvalLocal,
533 double* EDMnzvalLocal,
534 double* FDMnzvalLocal,
536 double* numElectronPEXSI,
541 double* numElectronList,
542 double* numElectronDrvList,
617 double* localDOSnzvalLocal,
668 double* AinvnzvalLocal,
724 double* AinvnzvalLocal,
733 #endif // _PEXSI_C_PEXSI_INTERFACE_H_
void ReadDistSparseMatrixFormattedInterface(char *filename, int size, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *nzvalLocal, MPI_Comm comm)
Reading the data of a formatted DistSparseMatrix.
Definition: interface.cpp:120
Real Energy(const NumMat< F > &M)
Energy computes the L2 norm of a matrix (treated as a vector).
Definition: NumMat_impl.hpp:142
void PPEXSISolveInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *HnzvalLocal, int isSIdentity, double *SnzvalLocal, double temperature, double numElectronExact, double mu0, double muMin0, double muMax0, double gap, double deltaE, int numPole, int maxIter, double numElectronTolerance, int ordering, int npPerPole, int npSymbFact, MPI_Comm comm, double *DMnzvalLocal, double *EDMnzvalLocal, double *FDMnzvalLocal, double *muPEXSI, double *numElectronPEXSI, double *muMinPEXSI, double *muMaxPEXSI, int *numIter, double *muList, double *numElectronList, double *numElectronDrvList, int *info)
Main driver routine for solving Kohn-Sham density functional theory using PEXSI.
Definition: interface_old.cpp:927
void PSelInvRealSymmetricInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *AnzvalLocal, int ordering, int npSymbFact, MPI_Comm comm, int nprow, int npcol, double *AinvnzvalLocal, int *info)
Simplified driver interface for computing the selected elements of a real symmetric symmetric...
void PPEXSIRawInertiaCountInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *HnzvalLocal, int isSIdentity, double *SnzvalLocal, double muMin0, double muMax0, int numPole, int ordering, int npPerPole, int npSymbFact, MPI_Comm comm, double *muList, int *numElectronList, int *info)
Directly compute the negative inertia at a set of shifts.
Definition: interface_old.cpp:711
void ReadDistSparseMatrixFormattedHeadInterface(char *filename, int *size, int *nnz, int *nnzLocal, int *numColLocal, MPI_Comm comm)
Read the sizes of a DistSparseMatrix in formatted form (txt) for allocating memory in C...
Definition: interface.cpp:63
void ReadDistSparseMatrixHeadInterface(char *filename, int *size, int *nnz, int *nnzLocal, int *numColLocal, MPI_Comm comm)
Read the sizes of a DistSparseMatrix in unformatted form (csc) for allocating memory in C...
Definition: interface.cpp:153
void PPEXSILocalDOSInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *HnzvalLocal, int isSIdentity, double *SnzvalLocal, double Energy, double eta, int ordering, int npSymbFact, MPI_Comm comm, double *localDOSnzvalLocal, int *info)
Driver interface for computing the local density of states.
Definition: interface_old.cpp:1463
void ParaReadDistSparseMatrixInterface(char *filename, int size, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *nzvalLocal, MPI_Comm comm)
Actual reading the data of a DistSparseMatrix using MPI-IO, assuming that the arrays have been alloca...
Definition: interface.cpp:214
void PPEXSISelInvInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *HnzvalLocal, int isSIdentity, double *SnzvalLocal, double *zShift, int ordering, int npSymbFact, MPI_Comm comm, double *AinvnzvalLocal, int *info)
Driver interface for computing the selected elements of a matrix (in complex arithmietic).
Definition: interface_old.cpp:1217
void PPEXSIInertiaCountInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *HnzvalLocal, int isSIdentity, double *SnzvalLocal, double temperature, double numElectronExact, double muMin0, double muMax0, int numPole, int maxIter, double numElectronTolerance, int ordering, int npPerPole, int npSymbFact, MPI_Comm comm, double *muMinInertia, double *muMaxInertia, double *muLowerEdge, double *muUpperEdge, int *numIter, double *muList, double *numElectronList, int *info)
Driver interface for estimating the chemical potential using inertia counting procedure.
Definition: interface_old.cpp:281
void PSelInvComplexSymmetricInterface(int nrows, int nnz, int nnzLocal, int numColLocal, int *colptrLocal, int *rowindLocal, double *AnzvalLocal, int ordering, int npSymbFact, MPI_Comm comm, int nprow, int npcol, double *AinvnzvalLocal, int *info)
Simplified driver interface for computing the selected elements of a complex symmetric symmetric...
Definition: interface_old.cpp:1557