ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
Calculate the exchange-correlation (XC) kernel ($f_{xc}=\delta^2E_xc/\delta\rho^2$) and store its components. More...
#include <xc_kernel.h>
Public Member Functions | |
KernelXC (const ModulePW::PW_Basis &rho_basis, const UnitCell &ucell, const Charge &chg_gs, const Parallel_Grid &pgrid, const int &nspin, const std::string &kernel_name, const std::vector< std::string > &lr_init_xc_kernel, const bool openshell=false) | |
~KernelXC () | |
CREF (vrho) | |
CREF (vsigma) | |
CREF (v2rho2) | |
CREF (v2rhosigma) | |
CREF (v2sigma2) | |
CREF3 (v2rhosigma_2drho) | |
CREF3 (v2sigma2_4drho) | |
CREF3 (v2rhosigma_drho_singlet) | |
CREF3 (v2rhosigma_drho_triplet) | |
CREF3 (v2sigma2_drho_singlet) | |
CREF3 (v2sigma2_drho_triplet) | |
CREF3 (v2rhosigma_drho_uu) | |
CREF3 (v2rhosigma_drho_ud) | |
CREF3 (v2rhosigma_drho_du) | |
CREF3 (v2rhosigma_drho_dd) | |
CREF3 (v2sigma2_drho_uu_u) | |
CREF3 (v2sigma2_drho_uu_d) | |
CREF3 (v2sigma2_drho_ud_u) | |
CREF3 (v2sigma2_drho_ud_d) | |
CREF3 (v2sigma2_drho_du_u) | |
CREF3 (v2sigma2_drho_du_d) | |
CREF3 (v2sigma2_drho_dd_u) | |
CREF3 (v2sigma2_drho_dd_d) | |
Public Attributes | |
const std::vector< std::vector< ModuleBase::Vector3< double > > > & | drho_gs = drho_gs_ |
Private Types | |
using | Tvec = std::vector< double > |
using | Tvec3 = std::vector< ModuleBase::Vector3< double > > |
Private Attributes | |
std::vector< double > | vrho_ |
std::vector< double > | vsigma_ |
std::vector< double > | v2rho2_ |
std::vector< double > | v2rhosigma_ |
std::vector< double > | v2sigma2_ |
std::vector< std::vector< ModuleBase::Vector3< double > > > | drho_gs_ |
$\nabla\rho$ of the ground state, size: nspin*nrxx | |
std::vector< ModuleBase::Vector3< double > > | v2rhosigma_2drho_ |
$f^{\rho\sigma}*\nabla\rho *2$ | |
std::vector< ModuleBase::Vector3< double > > | v2sigma2_4drho_ |
$f^{\sigma\sigma}*\nabla\rho *4$ | |
Tvec3 | v2rhosigma_drho_singlet_ |
$2(f^{\rho_u\sigma_{uu}}+f^{\rho_u\sigma_{ud}}+f^{\rho_u\sigma_{dd}})*\nabla\rho)$ | |
Tvec3 | v2rhosigma_drho_triplet_ |
$2(f^{\rho_u\sigma_{uu}}-f^{\rho_u\sigma_{ud}})*\nabla\rho)$ | |
Tvec3 | v2sigma2_drho_singlet_ |
Tvec3 | v2sigma2_drho_triplet_ |
< $(4f^{\sigma_{uu}\sigma_{uu}}+6f^{\sigma_{uu}\sigma_{ud}}+4f^{\sigma_{uu}\sigma_{dd}}+2f^{\sigma_{ud}\sigma_{ud}}+2f^{\sigma_{ud}\sigma_{dd}})\nabla\rho$ | |
Tvec3 | v2rhosigma_drho_uu_ |
< $(4f^{\sigma_{uu}\sigma_{uu}}+2f^{\sigma_{uu}\sigma_{ud}}-4f^{\sigma_{uu}\sigma_{dd}}-2f^{\sigma_{ud}\sigma_{dd}})\nabla\rho$ | |
Tvec3 | v2rhosigma_drho_ud_ |
$f^{\rho_u\sigma_{ud}}\nabla\rho_u+2f^{\rho_u\sigma_{dd}}\nabla\rho_d$ | |
Tvec3 | v2rhosigma_drho_du_ |
$2f^{\rho_d\sigma_{uu}}\nabla\rho_u+f^{\rho_d\sigma_{ud}}\nabla\rho_d$ | |
Tvec3 | v2rhosigma_drho_dd_ |
$f^{\rho_d\sigma_{ud}}\nabla\rho_u+2f^{\rho_d\sigma_{dd}}\nabla\rho_d$ | |
Tvec3 | v2sigma2_drho_uu_u_ |
Tvec3 | v2sigma2_drho_uu_d_ |
$4f^{\sigma_{uu}\sigma_{uu}}\nabla\rho_u+2f^{\sigma_{uu}\sigma_{ud}\nabla\rho_d$ | |
Tvec3 | v2sigma2_drho_ud_u_ |
$2f^{\sigma_{uu}\sigma_{ud}}\nabla\rho_u+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_d$ | |
Tvec3 | v2sigma2_drho_ud_d_ |
$2f^{\sigma_{uu}\sigma_{ud}}\nabla\rho_u+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_d$ | |
Tvec3 | v2sigma2_drho_du_u_ |
$4f^{\sigma_{uu}\sigma_{dd}}\nabla\rho_u+2f^{\sigma_{ud}\sigma_{dd}\nabla\rho_d$ | |
Tvec3 | v2sigma2_drho_du_d_ |
$4f^{\sigma_{uu}\sigma_{dd}}\nabla\rho_d+2f^{\sigma_{uu}\sigma_{ud}\nabla\rho_u$ | |
Tvec3 | v2sigma2_drho_dd_u_ |
$2f^{\sigma_{ud}\sigma_{dd}}\nabla\rho_d+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_u$ | |
Tvec3 | v2sigma2_drho_dd_d_ |
$2f^{\sigma_{ud}\sigma_{dd}}\nabla\rho_d+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_u$ | |
const ModulePW::PW_Basis & | rho_basis_ |
$4f^{\sigma_{dd}\sigma_{dd}}\nabla\rho_d+2f^{\sigma_{ud}\sigma_{dd}\nabla\rho_u$ | |
const bool | openshell_ = false |
Calculate the exchange-correlation (XC) kernel ($f_{xc}=\delta^2E_xc/\delta\rho^2$) and store its components.
|
private |
|
private |
LR::KernelXC::KernelXC | ( | const ModulePW::PW_Basis & | rho_basis, |
const UnitCell & | ucell, | ||
const Charge & | chg_gs, | ||
const Parallel_Grid & | pgrid, | ||
const int & | nspin, | ||
const std::string & | kernel_name, | ||
const std::vector< std::string > & | lr_init_xc_kernel, | ||
const bool | openshell = false |
||
) |
|
inline |
LR::KernelXC::CREF | ( | v2rho2 | ) |
LR::KernelXC::CREF | ( | v2rhosigma | ) |
LR::KernelXC::CREF | ( | v2sigma2 | ) |
LR::KernelXC::CREF | ( | vrho | ) |
LR::KernelXC::CREF | ( | vsigma | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_2drho | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_dd | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_du | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_singlet | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_triplet | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_ud | ) |
LR::KernelXC::CREF3 | ( | v2rhosigma_drho_uu | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_4drho | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_dd_d | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_dd_u | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_du_d | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_du_u | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_singlet | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_triplet | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_ud_d | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_ud_u | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_uu_d | ) |
LR::KernelXC::CREF3 | ( | v2sigma2_drho_uu_u | ) |
const std::vector<std::vector<ModuleBase::Vector3<double> > >& LR::KernelXC::drho_gs = drho_gs_ |
|
private |
$\nabla\rho$ of the ground state, size: nspin*nrxx
|
private |
|
private |
$4f^{\sigma_{dd}\sigma_{dd}}\nabla\rho_d+2f^{\sigma_{ud}\sigma_{dd}\nabla\rho_u$
|
private |
|
private |
|
private |
$f^{\rho\sigma}*\nabla\rho *2$
|
private |
$f^{\rho_d\sigma_{ud}}\nabla\rho_u+2f^{\rho_d\sigma_{dd}}\nabla\rho_d$
|
private |
$2f^{\rho_d\sigma_{uu}}\nabla\rho_u+f^{\rho_d\sigma_{ud}}\nabla\rho_d$
|
private |
$2(f^{\rho_u\sigma_{uu}}+f^{\rho_u\sigma_{ud}}+f^{\rho_u\sigma_{dd}})*\nabla\rho)$
|
private |
$2(f^{\rho_u\sigma_{uu}}-f^{\rho_u\sigma_{ud}})*\nabla\rho)$
|
private |
$f^{\rho_u\sigma_{ud}}\nabla\rho_u+2f^{\rho_u\sigma_{dd}}\nabla\rho_d$
|
private |
< $(4f^{\sigma_{uu}\sigma_{uu}}+2f^{\sigma_{uu}\sigma_{ud}}-4f^{\sigma_{uu}\sigma_{dd}}-2f^{\sigma_{ud}\sigma_{dd}})\nabla\rho$
$2f^{\rho_u\sigma_{uu}}\nabla\rho_u+f^{\rho_u\sigma_{ud}}\nabla\rho_d$
|
private |
|
private |
$f^{\sigma\sigma}*\nabla\rho *4$
|
private |
$2f^{\sigma_{ud}\sigma_{dd}}\nabla\rho_d+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_u$
|
private |
$2f^{\sigma_{ud}\sigma_{dd}}\nabla\rho_d+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_u$
|
private |
$4f^{\sigma_{uu}\sigma_{dd}}\nabla\rho_d+2f^{\sigma_{uu}\sigma_{ud}\nabla\rho_u$
|
private |
$4f^{\sigma_{uu}\sigma_{dd}}\nabla\rho_u+2f^{\sigma_{ud}\sigma_{dd}\nabla\rho_d$
|
private |
|
private |
< $(4f^{\sigma_{uu}\sigma_{uu}}+6f^{\sigma_{uu}\sigma_{ud}}+4f^{\sigma_{uu}\sigma_{dd}}+2f^{\sigma_{ud}\sigma_{ud}}+2f^{\sigma_{ud}\sigma_{dd}})\nabla\rho$
|
private |
$2f^{\sigma_{uu}\sigma_{ud}}\nabla\rho_u+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_d$
|
private |
$2f^{\sigma_{uu}\sigma_{ud}}\nabla\rho_u+f^{\sigma_{ud}\sigma_{ud}}\nabla\rho_d$
|
private |
$4f^{\sigma_{uu}\sigma_{uu}}\nabla\rho_u+2f^{\sigma_{uu}\sigma_{ud}\nabla\rho_d$
|
private |
|
private |
|
private |