ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Private Types | List of all members
hsolver::DiagoLapack< T > Class Template Reference

#include <diago_lapack.h>

Collaboration diagram for hsolver::DiagoLapack< T >:

Public Member Functions

void diag (hamilt::Hamilt< T > *phm_in, psi::Psi< T > &psi, Real *eigenvalue_in)
 
void dsygvx_diag (const int ncol, const int nrow, const double *const h_mat, const double *const s_mat, double *const ekb, psi::Psi< double > &wfc_2d)
 
void zhegvx_diag (const int ncol, const int nrow, const std::complex< double > *const h_mat, const std::complex< double > *const s_mat, double *const ekb, psi::Psi< std::complex< double > > &wfc_2d)
 
int dsygvx_once (const int ncol, const int nrow, const double *const h_mat, const double *const s_mat, double *const ekb, psi::Psi< double > &wfc_2d) const
 
int zhegvx_once (const int ncol, const int nrow, const std::complex< double > *const h_mat, const std::complex< double > *const s_mat, double *const ekb, psi::Psi< std::complex< double > > &wfc_2d) const
 
void post_processing (const int info, const std::vector< int > &vec)
 
void diag (hamilt::Hamilt< double > *phm_in, psi::Psi< double > &psi, Real *eigenvalue_in)
 
void diag (hamilt::Hamilt< std::complex< double > > *phm_in, psi::Psi< std::complex< double > > &psi, Real *eigenvalue_in)
 

Public Attributes

int degeneracy_max = 12
 

Private Types

using Real = typename GetTypeReal< T >::type
 

Member Typedef Documentation

◆ Real

template<typename T >
using hsolver::DiagoLapack< T >::Real = typename GetTypeReal<T>::type
private

Member Function Documentation

◆ diag() [1/3]

void hsolver::DiagoLapack< double >::diag ( hamilt::Hamilt< double > *  phm_in,
psi::Psi< double > &  psi,
Real eigenvalue_in 
)
Here is the call graph for this function:

◆ diag() [2/3]

void hsolver::DiagoLapack< std::complex< double > >::diag ( hamilt::Hamilt< std::complex< double > > *  phm_in,
psi::Psi< std::complex< double > > &  psi,
Real eigenvalue_in 
)
Here is the call graph for this function:

◆ diag() [3/3]

template<typename T >
void hsolver::DiagoLapack< T >::diag ( hamilt::Hamilt< T > *  phm_in,
psi::Psi< T > &  psi,
Real eigenvalue_in 
)
Here is the caller graph for this function:

◆ dsygvx_diag()

template<typename T >
void hsolver::DiagoLapack< T >::dsygvx_diag ( const int  ncol,
const int  nrow,
const double *const  h_mat,
const double *const  s_mat,
double *const  ekb,
psi::Psi< double > &  wfc_2d 
)

◆ dsygvx_once()

template<typename T >
int hsolver::DiagoLapack< T >::dsygvx_once ( const int  ncol,
const int  nrow,
const double *const  h_mat,
const double *const  s_mat,
double *const  ekb,
psi::Psi< double > &  wfc_2d 
) const
Here is the call graph for this function:

◆ post_processing()

template<typename T >
void hsolver::DiagoLapack< T >::post_processing ( const int  info,
const std::vector< int > &  vec 
)
Here is the call graph for this function:

◆ zhegvx_diag()

template<typename T >
void hsolver::DiagoLapack< T >::zhegvx_diag ( const int  ncol,
const int  nrow,
const std::complex< double > *const  h_mat,
const std::complex< double > *const  s_mat,
double *const  ekb,
psi::Psi< std::complex< double > > &  wfc_2d 
)

◆ zhegvx_once()

template<typename T >
int hsolver::DiagoLapack< T >::zhegvx_once ( const int  ncol,
const int  nrow,
const std::complex< double > *const  h_mat,
const std::complex< double > *const  s_mat,
double *const  ekb,
psi::Psi< std::complex< double > > &  wfc_2d 
) const
Here is the call graph for this function:

Member Data Documentation

◆ degeneracy_max

template<typename T >
int hsolver::DiagoLapack< T >::degeneracy_max = 12

The documentation for this class was generated from the following files: