1#ifndef MODULE_IO_BERRYPHASE_H
2#define MODULE_IO_BERRYPHASE_H
40 void lcao_init(
const UnitCell& ucell,
52 const psi::Psi<std::complex<double>>* psi_in,
62 const psi::Psi<std::complex<double>>* psi_in,
74 throw std::logic_error(
"berry phase supports only multi-k");
78 const psi::Psi<std::complex<double>>* psi_in,
Definition sltk_grid_driver.h:43
Definition grid_technique.h:18
3 elements vector
Definition vector3.h:22
Special pw_basis class. It includes different k-points.
Definition pw_basis_k.h:57
A class which can convert a function of "r" to the corresponding linear superposition of plane waves ...
Definition pw_basis.h:56
Definition parallel_orbitals.h:9
Definition berryphase.h:14
void set_kpoints(const K_Vectors &kv, const int direction)
Definition berryphase.cpp:59
int GDIR
Definition berryphase.h:36
static bool berry_phase_flag
Definition berryphase.h:24
berryphase()
Definition berryphase.cpp:11
void Macroscopic_polarization(const UnitCell &ucell, const int npwx, const psi::Psi< double > *psi_in, const ModulePW::PW_Basis *rhopw, const ModulePW::PW_Basis_K *wfcpw, const K_Vectors &kv)
Definition berryphase.h:67
void get_occupation_bands()
Definition berryphase.cpp:27
~berryphase()
Definition berryphase.cpp:23
int occ_nbands
Definition berryphase.h:35
void Berry_Phase(const UnitCell &ucell, int nbands, double &pdl_elec_tot, int &mod_elec_tot, const int npwx, const psi::Psi< std::complex< double > > *psi_in, const ModulePW::PW_Basis *rhopw, const ModulePW::PW_Basis_K *wfcpw, const K_Vectors &kv)
Definition berryphase.cpp:347
std::vector< std::vector< int > > k_index
Definition berryphase.h:32
double stringPhase(const UnitCell &ucell, int index_str, int nbands, const int npwx, const psi::Psi< std::complex< double > > *psi_in, const ModulePW::PW_Basis *rhopw, const ModulePW::PW_Basis_K *wfcpw, const K_Vectors &kv)
Definition berryphase.cpp:221
unkOverlap_pw pw_method
Definition berryphase.h:25
int total_string
Definition berryphase.h:31
int nppstr
Definition berryphase.h:33
int direction
Definition berryphase.h:34
std::string outFormat(const double polarization, const double modulus, const ModuleBase::Vector3< double > project)
Definition berryphase.cpp:681
Definition unk_overlap_lcao.h:22
Definition unk_overlap_pw.h:18