#include <dftu.h>
|
| static std::vector< double > | U = {} |
| |
| static std::vector< double > | U0 = {} |
| |
| static std::vector< int > | orbital_corr = {} |
| |
| static double | uramping = 0.0 |
| |
| static int | omc =0 |
| |
| static int | mixing_dftu =0 |
| |
| static bool | Yukawa =false |
| |
|
| void | copy_locale (const UnitCell &ucell) |
| |
| void | zero_locale (const UnitCell &ucell) |
| |
| void | mix_locale (const UnitCell &ucell, const double &mixing_beta) |
| |
| void | write_occup_m (const UnitCell &ucell, std::ofstream &ofs, bool diag=false) |
| |
| void | read_occup_m (const UnitCell &ucell, const std::string &fn) |
| |
| void | local_occup_bcast (const UnitCell &ucell) |
| |
| void | cal_slater_Fk (const UnitCell &ucell, const int L, const int T) |
| |
| void | cal_yukawa_lambda (double **rho, const int &nrxx) |
| |
| double | spherical_Bessel (const int k, const double r, const double lambda) |
| |
| double | spherical_Hankel (const int k, const double r, const double lambda) |
| |
◆ Plus_U()
◆ ~Plus_U()
◆ cal_energy_correction()
| void Plus_U::cal_energy_correction |
( |
const UnitCell & |
ucell, |
|
|
const int |
istep |
|
) |
| |
◆ cal_occ_pw()
| void Plus_U::cal_occ_pw |
( |
const int |
iter, |
|
|
const void * |
psi_in, |
|
|
const ModuleBase::matrix & |
wg_in, |
|
|
const UnitCell & |
cell, |
|
|
const double & |
mixing_beta |
|
) |
| |
calculate occupation matrix for DFT+U
interface for PW base calculate the local occupation number matrix for PW based wave functions
◆ cal_slater_Fk()
| void Plus_U::cal_slater_Fk |
( |
const UnitCell & |
ucell, |
|
|
const int |
L, |
|
|
const int |
T |
|
) |
| |
|
private |
◆ cal_slater_UJ()
| void Plus_U::cal_slater_UJ |
( |
const UnitCell & |
ucell, |
|
|
double ** |
rho, |
|
|
const int & |
nrxx |
|
) |
| |
◆ cal_VU_pot_pw()
| void Plus_U::cal_VU_pot_pw |
( |
const int |
spin | ) |
|
calculate the local DFT+U effective potential matrix for PW base.
◆ cal_yukawa_lambda()
| void Plus_U::cal_yukawa_lambda |
( |
double ** |
rho, |
|
|
const int & |
nrxx |
|
) |
| |
|
private |
◆ copy_locale()
| void Plus_U::copy_locale |
( |
const UnitCell & |
ucell | ) |
|
|
private |
◆ get_eff_pot_pw()
| const std::complex< double > * Plus_U::get_eff_pot_pw |
( |
const int |
iat | ) |
const |
|
inline |
get effective potential matrix for PW base
◆ get_energy()
| static double Plus_U::get_energy |
( |
| ) |
|
|
inlinestatic |
◆ get_size_eff_pot_pw()
| int Plus_U::get_size_eff_pot_pw |
( |
| ) |
const |
|
inline |
◆ init()
◆ local_occup_bcast()
| void Plus_U::local_occup_bcast |
( |
const UnitCell & |
ucell | ) |
|
|
private |
◆ mix_locale()
| void Plus_U::mix_locale |
( |
const UnitCell & |
ucell, |
|
|
const double & |
mixing_beta |
|
) |
| |
|
private |
◆ output()
| void Plus_U::output |
( |
const UnitCell & |
ucell | ) |
|
◆ read_occup_m()
| void Plus_U::read_occup_m |
( |
const UnitCell & |
ucell, |
|
|
const std::string & |
fn |
|
) |
| |
|
private |
◆ set_double_energy()
| static void Plus_U::set_double_energy |
( |
| ) |
|
|
inlinestatic |
◆ set_energy()
| static void Plus_U::set_energy |
( |
const double & |
e | ) |
|
|
inlinestatic |
◆ spherical_Bessel()
| double Plus_U::spherical_Bessel |
( |
const int |
k, |
|
|
const double |
r, |
|
|
const double |
lambda |
|
) |
| |
|
private |
◆ spherical_Hankel()
| double Plus_U::spherical_Hankel |
( |
const int |
k, |
|
|
const double |
r, |
|
|
const double |
lambda |
|
) |
| |
|
private |
◆ u_converged()
| bool Plus_U::u_converged |
( |
| ) |
|
◆ uramping_update()
| void Plus_U::uramping_update |
( |
| ) |
|
◆ write_occup_m()
| void Plus_U::write_occup_m |
( |
const UnitCell & |
ucell, |
|
|
std::ofstream & |
ofs, |
|
|
bool |
diag = false |
|
) |
| |
|
private |
◆ zero_locale()
| void Plus_U::zero_locale |
( |
const UnitCell & |
ucell | ) |
|
|
private |
◆ cal_type
◆ eff_pot_pw
| std::vector<std::complex<double> > Plus_U::eff_pot_pw |
|
private |
◆ eff_pot_pw_index
| std::vector<int> Plus_U::eff_pot_pw_index |
|
private |
◆ energy_u
| double Plus_U::energy_u = 0.0 |
|
staticprivate |
◆ Fk
| std::vector<std::vector<std::vector<std::vector<double> > > > Plus_U::Fk |
|
private |
◆ iatlnmipol2iwt
| std::vector<std::vector<std::vector<std::vector<std::vector<int> > > > > Plus_U::iatlnmipol2iwt |
|
private |
◆ initialed_locale
| bool Plus_U::initialed_locale = false |
◆ J_Yukawa
| std::vector<std::vector<std::vector<double> > > Plus_U::J_Yukawa |
|
private |
◆ lambda
◆ locale
◆ locale_save
| std::vector<std::vector<std::vector<std::vector<ModuleBase::matrix> > > > Plus_U::locale_save |
◆ mixing_dftu
| int Plus_U::mixing_dftu =0 |
|
static |
◆ omc
◆ orbital_corr
| std::vector< int > Plus_U::orbital_corr = {} |
|
static |
◆ paraV
| std::vector< double > Plus_U::U = {} |
|
static |
◆ U0
| std::vector< double > Plus_U::U0 = {} |
|
static |
◆ U_Yukawa
| std::vector<std::vector<std::vector<double> > > Plus_U::U_Yukawa |
|
private |
◆ uramping
| double Plus_U::uramping = 0.0 |
|
static |
◆ Yukawa
| bool Plus_U::Yukawa =false |
|
static |
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_dftu/dftu.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_dftu/dftu.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_dftu/dftu_io.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_dftu/dftu_occup.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_dftu/dftu_pw.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_operator_lcao/test/test_dftu.cpp