24 this->
bigpw = bigpw_in;
29 if (this->
pot !=
nullptr)
41 virtual const double*
getRho(
int spin)
const;
110 const void* wfcpw =
nullptr);
130 void set_exx(
const double& Eexx);
131 void set_exx(
const std::complex<double>& Eexx);
void set_rhopw(ModulePW::PW_Basis *rhopw_in)
Definition charge.cpp:51
Definition complexmatrix.h:14
Definition pw_basis_big.h:16
A class which can convert a function of "r" to the corresponding linear superposition of plane waves ...
Definition pw_basis.h:56
Definition parallel_grid.h:8
const System_para & globalv
Definition parameter.h:30
Definition elecstate.h:15
const ModulePW::PW_Basis_Big * bigpw
bigpw will be removed later
Definition elecstate.h:117
virtual void cal_tau(const psi::Psi< double > &psi)
Definition elecstate.h:57
ElecState(Charge *chr_in, ModulePW::PW_Basis *rhopw_in, ModulePW::PW_Basis_Big *bigpw_in)
Definition elecstate.h:20
fenergy f_en
energies contribute to the total free energy
Definition elecstate.h:148
void cal_bandgap()
calculate band gap
Definition elecstate_energy.cpp:13
void init_scf(const UnitCell &ucell, const Parallel_Grid &pgrid, const ModuleBase::ComplexMatrix &strucfac, const bool *numeric, ModuleSymmetry::Symmetry &symm, const void *wfcpw=nullptr)
Init rho_core, init rho, renormalize rho, init pot.
Definition elecstate.cpp:30
double get_etot_efield()
Definition elecstate_energy_terms.cpp:17
virtual const double * getRho(int spin) const
Definition elecstate.cpp:13
const K_Vectors * klist
pointer to k points lists
Definition elecstate.h:116
virtual void cal_tau(const psi::Psi< std::complex< float > > &psi)
Definition elecstate.h:61
double bandgap_up
spin up bandgap
Definition elecstate.h:154
virtual void print_psi(const psi::Psi< double > &psi_in, const int istep=-1)
Definition elecstate.h:88
std::string classname
Definition elecstate.h:111
Potential * pot
pointer to potential
Definition elecstate.h:114
virtual double get_spin_constrain_energy()
Definition elecstate.h:140
double get_dftu_energy()
Definition elecstate_energy_terms.cpp:37
virtual void psiToRho(const psi::Psi< std::complex< double > > &psi)
Definition elecstate.h:45
virtual void cal_tau(const psi::Psi< std::complex< double > > &psi)
Definition elecstate.h:53
ModuleBase::matrix vnew
Definition elecstate.h:126
double bandgap_dw
spin down bandgap
Definition elecstate.h:155
ModuleBase::matrix wg
occupation weight for each k-point and band
Definition elecstate.h:158
double get_hartree_energy()
Definition elecstate_energy_terms.cpp:12
double get_local_pp_energy()
Definition elecstate_energy_terms.cpp:42
double cal_delta_escf() const
calculate descf
Definition elecstate_energy.cpp:188
double bandgap
bandgap = E_{lumo} - E_{homo}
Definition elecstate.h:153
double cal_delta_eband(const UnitCell &ucell) const
calculate deband
Definition elecstate_energy.cpp:106
Charge * charge
pointer to charge density
Definition elecstate.h:115
void cal_energies(const int type)
calculate energies
Definition elecstate_energy.cpp:284
void init_nelec_spin()
Definition elecstate.cpp:20
virtual void print_psi(const psi::Psi< std::complex< double > > &psi_in, const int istep=-1)
Definition elecstate.h:92
double get_solvent_model_Acav()
Definition elecstate_energy_terms.cpp:32
double get_solvent_model_Ael()
Definition elecstate_energy_terms.cpp:27
void set_exx(const std::complex< double > &Eexx)
ElecState()
Definition elecstate.h:17
bool skip_weights
Definition elecstate.h:162
void init_ks(Charge *chr_in, const K_Vectors *klist_in, int nk_in, const ModulePW::PW_Basis_Big *bigpw_in)
Definition elecstate.cpp:48
std::vector< double > nelec_spin
Definition elecstate.h:86
virtual void getNewRho()
Definition elecstate.h:72
void set_exx(const double &Eexx)
calculation if converged
Definition elecstate_exx.cpp:8
bool vnew_exist
Definition elecstate.h:127
virtual ~ElecState()
Definition elecstate.h:27
ModuleBase::matrix ekb
band energy at each k point, each band.
Definition elecstate.h:157
int iter
scf iteration
Definition elecstate.h:113
void cal_bandgap_updw()
calculate spin up & down band gap
Definition elecstate_energy.cpp:50
double get_etot_gatefield()
Definition elecstate_energy_terms.cpp:22
void cal_converged()
calculation if converged
Definition elecstate_energy.cpp:266
Efermi eferm
fermi energies
Definition elecstate.h:149
virtual void psiToRho(const psi::Psi< double > &psi)
Definition elecstate.h:49
Definition potential_new.h:49
This file contains all energies about first-principle calculations.
Parameter PARAM
Definition parameter.cpp:3
bool two_fermi
true if "nupdown" is set
Definition system_parameter.h:24
Definition fp_energy.h:63
bool two_efermi
Definition fp_energy.h:67
Definition fp_energy.h:17