|
ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
#include <esolver_double_xc.h>
Public Member Functions | |
| ESolver_DoubleXC () | |
| ~ESolver_DoubleXC () | |
| void | before_all_runners (UnitCell &ucell, const Input_para &inp) override |
| Initialize of the first-principels energy solver. | |
| void | cal_force (UnitCell &ucell, ModuleBase::matrix &force) override |
| calcualte forces for the atoms in the given cell | |
Public Member Functions inherited from ModuleESolver::ESolver_KS_LCAO< TK, TR > | |
| ESolver_KS_LCAO () | |
| ~ESolver_KS_LCAO () | |
| void | before_all_runners (UnitCell &ucell, const Input_para &inp) override |
| Initialize of the first-principels energy solver. | |
| double | cal_energy () override |
| calculate total energy of a given system | |
| void | cal_force (UnitCell &ucell, ModuleBase::matrix &force) override |
| calcualte forces for the atoms in the given cell | |
| void | cal_stress (UnitCell &ucell, ModuleBase::matrix &stress) override |
| calcualte stress of given cell | |
| void | after_all_runners (UnitCell &ucell) override |
| perform post processing calculations | |
| const Record_adj & | get_RA () const |
| const Grid_Driver & | get_gd () const |
| const Parallel_Orbitals & | get_pv () const |
| const std::unique_ptr< ModuleGint::GintInfo > & | get_gint_info () const |
| const TwoCenterBundle & | get_two_center_bundle () const |
| const rdmft::RDMFT< TK, TR > & | get_rdmft_solver () const |
| const LCAO_Orbitals & | get_orb () const |
| const ModuleBase::matrix & | get_scs () const |
| const Setup_DeePKS< TK > & | get_deepks () const |
| const Exx_NAO< TK > & | get_exx_nao () const |
Public Member Functions inherited from ModuleESolver::ESolver_KS< TK > | |
| ESolver_KS () | |
| Constructor. | |
| virtual | ~ESolver_KS () |
| Deconstructor. | |
| virtual void | runner (UnitCell &ucell, const int istep) override |
| run energy solver | |
Public Member Functions inherited from ModuleESolver::ESolver_FP | |
| ESolver_FP () | |
| virtual | ~ESolver_FP () |
Public Member Functions inherited from ModuleESolver::ESolver | |
| ESolver () | |
| virtual | ~ESolver () |
Protected Member Functions | |
| void | before_scf (UnitCell &ucell, const int istep) override |
| Something to do before SCF iterations. | |
| void | iter_finish (UnitCell &ucell, const int istep, int &iter, bool &conv_esolver) override |
| Something to do after hamilt2rho function in each iter loop. | |
Protected Member Functions inherited from ModuleESolver::ESolver_KS_LCAO< TK, TR > | |
| virtual void | iter_init (UnitCell &ucell, const int istep, const int iter) override |
| Something to do before hamilt2rho function in each iter loop. | |
| virtual void | hamilt2rho_single (UnitCell &ucell, const int istep, const int iter, const double ethr) override |
| virtual void | after_scf (UnitCell &ucell, const int istep, const bool conv_esolver) override |
| Something to do after SCF iterations when SCF is converged or comes to the max iter step. | |
| virtual void | others (UnitCell &ucell, const int istep) override |
Protected Member Functions inherited from ModuleESolver::ESolver_KS< TK > | |
| void | hamilt2rho (UnitCell &ucell, const int istep, const int iter, const double ethr) |
Protected Attributes | |
| hamilt::Hamilt< TK > * | p_hamilt_base = nullptr |
| Hamiltonian. | |
| psi::Psi< TK > * | psi_base = nullptr |
| Electronic wavefunctions. | |
| elecstate::ElecState * | pelec_base = nullptr |
| Electronic states. | |
| LCAO_domain::Setup_DM< TK > | dmat_base |
| Density Matrix, mohan add 2025-11-03. | |
| Charge | chr_base |
| Electorn charge density. | |
Protected Attributes inherited from ModuleESolver::ESolver_KS_LCAO< TK, TR > | |
| Record_adj | RA |
| Store information about Adjacent Atoms. | |
| Grid_Driver | gd |
| Store information about Adjacent Atoms. | |
| Parallel_Orbitals | pv |
| NAO orbitals: 2d block-cyclic distribution info. | |
| std::unique_ptr< ModuleGint::GintInfo > | gint_info_ |
| GintInfo: used to store some basic infomation about module_gint. | |
| LCAO_Orbitals | orb_ |
| NAO: store related information. | |
| TwoCenterBundle | two_center_bundle_ |
| NAO orbitals: two-center integrations. | |
| LCAO_domain::Setup_DM< TK > | dmat |
| Add density matrix class, mohan add 2025-10-30. | |
| Setup_DeePKS< TK > | deepks |
| Exx_NAO< TK > | exx_nao |
| rdmft::RDMFT< TK, TR > | rdmft_solver |
| For RDMFT calculations, added by jghan, 2024-03-16. | |
| ModuleBase::matrix | scs |
| bool | have_force = false |
Protected Attributes inherited from ModuleESolver::ESolver_KS< TK > | |
| hamilt::Hamilt< TK, base_device::DEVICE_CPU > * | p_hamilt |
| Hamiltonian. | |
| ModulePW::PW_Basis_K * | pw_wfc |
| PW for wave functions, only used in KSDFT, not in OFDFT. | |
| Charge_Mixing * | p_chgmix |
| Charge mixing method. | |
| pseudopot_cell_vnl | ppcell |
| nonlocal pseudopotentials | |
| psi::Psi< TK > * | psi |
| Electronic wavefunctions. | |
| Plus_U | dftu |
| DFT+U method, mohan add 2025-11-07. | |
| std::string | basisname |
| double | esolver_KS_ne |
| esolver_ks_lcao.cpp | |
| double | diag_ethr |
| number of electrons | |
| double | scf_thr |
| the threshold for diagonalization | |
| double | scf_ene_thr |
| scf density threshold | |
| double | drho |
| scf energy threshold | |
| double | hsolver_error |
| the difference between rho_in (before HSolver) and rho_out (After HSolver) | |
| int | maxniter |
| the error of HSolver | |
| int | niter |
| maximum iter steps for scf | |
| bool | oscillate_esolver |
| iter steps actually used in scf | |
| bool | scf_nmax_flag |
Protected Attributes inherited from ModuleESolver::ESolver_FP | |
| elecstate::ElecState * | pelec = nullptr |
| These pointers will be deleted in the free_pointers() function every ion step. | |
| K_Vectors | kv |
| K points in Brillouin zone. | |
| Charge | chr |
| Electorn charge density. | |
| ModulePW::PW_Basis * | pw_rho |
| ModulePW::PW_Basis * | pw_rhod |
| ModulePW::PW_Basis_Big * | pw_big |
| dense grid for USPP | |
| Parallel_Grid | Pgrid |
| parallel for rho grid | |
| Structure_Factor | sf |
| Structure factors that used with plane-wave basis set. | |
| pseudopot_cell_vl | locpp |
| local pseudopotentials | |
| Charge_Extra | CE |
| charge extrapolation method | |
| surchem | solvent |
| solvent model | |
| bool | pw_rho_flag = false |
| flag for pw_rho, 0: not initialized, 1: initialized | |
| double | iter_time |
| the start time of scf iteration | |
Additional Inherited Members | |
Public Attributes inherited from ModuleESolver::ESolver | |
| bool | conv_esolver = true |
| std::string | classname |
| ModuleESolver::ESolver_DoubleXC< TK, TR >::ESolver_DoubleXC | ( | ) |
| ModuleESolver::ESolver_DoubleXC< TK, TR >::~ESolver_DoubleXC | ( | ) |
|
overridevirtual |
Initialize of the first-principels energy solver.
read pseudopotentials
Reimplemented from ModuleESolver::ESolver_KS< TK >.
|
overrideprotectedvirtual |
Something to do before SCF iterations.
calculate D2 or D3 vdW
calculate ewald energy
Reimplemented from ModuleESolver::ESolver_KS_LCAO< TK, TR >.
|
overridevirtual |
calcualte forces for the atoms in the given cell
Implements ModuleESolver::ESolver.
|
overrideprotectedvirtual |
Something to do after hamilt2rho function in each iter loop.
Reimplemented from ModuleESolver::ESolver_KS_LCAO< TK, TR >.
|
protected |
Electorn charge density.
|
protected |
Density Matrix, mohan add 2025-11-03.
|
protected |
Hamiltonian.
|
protected |
Electronic states.
|
protected |
Electronic wavefunctions.