ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Classes | Macros | Functions
diago_lapack_test.cpp File Reference
#include "source_io/module_parameter/parameter.h"
#include "gtest/gtest.h"
#include <cstring>
#include <vector>
#include "source_hsolver/diago_lapack.h"
Include dependency graph for diago_lapack_test.cpp:

Classes

class  HamiltTEST< T >
 
class  DiagoLapackPrepare< T >
 
class  DiagoLapackGammaOnlyTest
 
class  DiagoLapackKPointsTest
 

Macros

#define private   public
 
#define PASSTHRESHOLD   1e-5
 
#define DETAILINFO   false
 
#define PRINT_HS   false
 
#define REPEATRUN   1
 

Functions

template<class T >
bool read_hs (std::string fname, T &matrix)
 
bool read_solution (std::string fname, std::vector< double > &result)
 
template<class T >
void print_matrix (std::ofstream &fp, T *matrix, int &nrow, int &ncol, bool row_first)
 
 TEST_P (DiagoLapackGammaOnlyTest, LCAO)
 
 INSTANTIATE_TEST_SUITE_P (DiagoLapackTest, DiagoLapackGammaOnlyTest, ::testing::Values(DiagoLapackPrepare< double >(0, 0, 1, 0, "H-GammaOnly-Si2.dat", "S-GammaOnly-Si2.dat", "GammaOnly-Si2-Solution.dat"), DiagoLapackPrepare< double >(0, 0, 32, 0, "H-GammaOnly-Si64.dat", "S-GammaOnly-Si64.dat", "GammaOnly-Si64-Solution.dat")))
 
 TEST_P (DiagoLapackKPointsTest, LCAO)
 
 INSTANTIATE_TEST_SUITE_P (DiagoLapackTest, DiagoLapackKPointsTest, ::testing::Values(DiagoLapackPrepare< std::complex< double > >(0, 0, 1, 0, "H-KPoints-Si2.dat", "S-KPoints-Si2.dat", "KPoints-Si2-Solution.dat"), DiagoLapackPrepare< std::complex< double > >(0, 0, 32, 0, "H-KPoints-Si64.dat", "S-KPoints-Si64.dat", "KPoints-Si64-Solution.dat")))
 
int main (int argc, char **argv)
 

Macro Definition Documentation

◆ DETAILINFO

#define DETAILINFO   false

◆ PASSTHRESHOLD

#define PASSTHRESHOLD   1e-5

◆ PRINT_HS

#define PRINT_HS   false

◆ private

#define private   public

◆ REPEATRUN

#define REPEATRUN   1

Function Documentation

◆ INSTANTIATE_TEST_SUITE_P() [1/2]

INSTANTIATE_TEST_SUITE_P ( DiagoLapackTest  ,
DiagoLapackGammaOnlyTest  ,
::testing::Values(DiagoLapackPrepare< double >(0, 0, 1, 0, "H-GammaOnly-Si2.dat", "S-GammaOnly-Si2.dat", "GammaOnly-Si2-Solution.dat"), DiagoLapackPrepare< double >(0, 0, 32, 0, "H-GammaOnly-Si64.dat", "S-GammaOnly-Si64.dat", "GammaOnly-Si64-Solution.dat"))   
)

◆ INSTANTIATE_TEST_SUITE_P() [2/2]

INSTANTIATE_TEST_SUITE_P ( DiagoLapackTest  ,
DiagoLapackKPointsTest  ,
::testing::Values(DiagoLapackPrepare< std::complex< double > >(0, 0, 1, 0, "H-KPoints-Si2.dat", "S-KPoints-Si2.dat", "KPoints-Si2-Solution.dat"), DiagoLapackPrepare< std::complex< double > >(0, 0, 32, 0, "H-KPoints-Si64.dat", "S-KPoints-Si64.dat", "KPoints-Si64-Solution.dat"))   
)

◆ main()

int main ( int  argc,
char **  argv 
)

◆ print_matrix()

template<class T >
void print_matrix ( std::ofstream &  fp,
T matrix,
int &  nrow,
int &  ncol,
bool  row_first 
)
inline
Here is the caller graph for this function:

◆ read_hs()

template<class T >
bool read_hs ( std::string  fname,
T matrix 
)

◆ read_solution()

bool read_solution ( std::string  fname,
std::vector< double > &  result 
)
Here is the caller graph for this function:

◆ TEST_P() [1/2]

TEST_P ( DiagoLapackGammaOnlyTest  ,
LCAO   
)
Here is the call graph for this function:

◆ TEST_P() [2/2]

TEST_P ( DiagoLapackKPointsTest  ,
LCAO   
)
Here is the call graph for this function: