|
| | ESolver_LR (ModuleESolver::ESolver_KS_LCAO< T, TR > &&ks_sol, const Input_para &inp, UnitCell &ucell) |
| | a move constructor from ESolver_KS_LCAO
|
| |
| | ESolver_LR (const Input_para &inp, UnitCell &ucell) |
| | a from-scratch constructor
|
| |
| | ~ESolver_LR () |
| |
| virtual void | before_all_runners (UnitCell &ucell, const Input_para &inp) override |
| | input: input, call, basis(LCAO), psi(ground state), elecstate
|
| |
| virtual void | runner (UnitCell &ucell, int istep) override |
| | run energy solver
|
| |
| virtual void | after_all_runners (UnitCell &ucell) override |
| | perform post processing calculations
|
| |
| virtual double | cal_energy () override |
| | calculate total energy of a given system
|
| |
| virtual void | cal_force (UnitCell &ucell, ModuleBase::matrix &force) override |
| | calcualte forces for the atoms in the given cell
|
| |
| virtual void | cal_stress (UnitCell &ucell, ModuleBase::matrix &stress) override |
| | calcualte stress of given cell
|
| |
| | ESolver_FP () |
| |
| virtual | ~ESolver_FP () |
| |
| | ESolver () |
| |
| virtual | ~ESolver () |
| |
| virtual void | others (UnitCell &ucell, const int istep) |
| |
|
| void | set_gint () |
| |
| void | setup_eigenvectors_X () |
| | allocate and set the inital value of X
|
| |
| void | set_X_initial_guess () |
| |
| void | read_ks_wfc () |
| | read in the ground state wave function, band energy and occupation
|
| |
| void | read_ks_chg (Charge &chg) |
| | read in the ground state charge density
|
| |
| void | init_pot (const Charge &chg_gs) |
| |
| void | parameter_check () const |
| | check the legality of the input parameters
|
| |
| void | set_dimension () |
| | set nocc, nvirt, nbasis, npairs and nstates
|
| |
| void | reset_dim_spin2 () |
| | reset nocc, nvirt, npairs after read ground-state wavefunction when nspin=2
|
| |
| virtual void | before_scf (UnitCell &ucell, const int istep) |
| |
| virtual void | after_scf (UnitCell &ucell, const int istep, const bool conv_esolver) |
| |
| virtual void | iter_finish (UnitCell &ucell, const int istep, int &iter, bool &conv_esolver) |
| |
|
| const Input_para & | input |
| |
| const UnitCell & | ucell |
| |
| Grid_Driver | gd |
| |
| std::vector< double > | orb_cutoff_ |
| |
| std::vector< std::shared_ptr< PotHxcLR > > | pot |
| |
| psi::Psi< T > * | psi_ks = nullptr |
| | ground state wave function
|
| |
| ModuleBase::matrix | eig_ks |
| | ground state bands, read from the file, or moved from ESolver_FP::pelec.ekb
|
| |
| std::vector< ct::Tensor > | X |
| | Excited state wavefunction (locc, lvirt are local size of nocc and nvirt in each process) size of X: [neq][{nstate, nloc_per_band}], namely:
|
| |
| int | nloc_per_band = 1 |
| |
| std::vector< int > | nocc |
| | number of occupied orbitals for each spin used in the calculation
|
| |
| int | nocc_in = 1 |
| | nocc read from input (adjusted by nelec): max(spin-up, spindown)
|
| |
| int | nocc_max = 1 |
| | nelec/2
|
| |
| std::vector< int > | nvirt |
| | number of virtual orbitals for each spin used in the calculation
|
| |
| int | nvirt_in = 1 |
| | nvirt read from input (adjusted by nelec): min(spin-up, spindown)
|
| |
| int | nbands = 2 |
| |
| int | nbasis = 2 |
| |
| std::vector< int > | npairs |
| | n_occ*nvirt, the basis size of electron-hole pair representation
|
| |
| int | nstates = 1 |
| | how many 2-particle states to be solved
|
| |
| int | nspin = 1 |
| |
| int | nk = 1 |
| |
| int | nupdown = 0 |
| |
| bool | openshell = false |
| |
| std::string | xc_kernel |
| |
| std::unique_ptr< ModuleGint::GintInfo > | gint_info_ = nullptr |
| |
| Parallel_2D | paraC_ |
| | variables for parallel distribution of KS orbitals
|
| |
| std::vector< Parallel_2D > | paraX_ |
| | variables for parallel distribution of excited states
|
| |
| Parallel_Orbitals | paraMat_ |
| | variables for parallel distribution of matrix in AO representation
|
| |
| TwoCenterBundle | two_center_bundle_ |
| |
| 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
|
| |
template<typename
T, typename TR = double>
class LR::ESolver_LR< T, TR >
Excited State Solver: Linear Response TDDFT (Tamm Dancoff Approximation)