One branch (all-electron or pseudo) of the one-center terms. More...
#include <energy.hpp>
Public Member Functions | |
| bool | has_gradient_correction () const |
Public Attributes | |
| std::vector< std::vector< Real > > | gradient_angular_weight_lm |
| Q_lm. | |
| std::vector< std::vector< Real > > | gradient_radial_weight_lm |
| P_lm. | |
| Real | hartree_energy {} |
| std::vector< std::vector< Real > > | potential_lm |
| v_H + v_rho, lm-decomposed — what D_ij's local term integrates against. | |
| Real | xc_energy {} |
One branch (all-electron or pseudo) of the one-center terms.
Definition at line 105 of file energy.hpp.
|
inline |
Definition at line 131 of file energy.hpp.
References gradient_radial_weight_lm.
| std::vector<std::vector<Real> > q3::paw_one_center::OneCenterBranch::gradient_angular_weight_lm |
Q_lm.
Definition at line 129 of file energy.hpp.
| std::vector<std::vector<Real> > q3::paw_one_center::OneCenterBranch::gradient_radial_weight_lm |
P_lm.
Gradient-correction weights, empty for LDA.
A GGA energy depends on ∇n, so its derivative carries a term 2∫v_σ ∇n·∇δn. Rather than take the divergence ∇·(2v_σ∇n) — which would introduce a numerical error the D ≡ ∂E/∂ρ identity cannot absorb — the term is integrated by parts against the perturbation's own channels:
2∫ v_σ ∇n·∇δn dV = Σ_lm ∫ dr [ r² g'_lm P_lm + g_lm Q_lm ]
with δn = Σ_lm g_lm(r) Y_lm(Ω), and
P_lm(r) = ∫dΩ 2 v_σ (∂n/∂r) Y_lm Q_lm(r) = ∫dΩ 2 v_σ (∇_Ω n · ∇_Ω Y_lm)
so the identity holds by construction rather than by cancellation.
Definition at line 128 of file energy.hpp.
Referenced by has_gradient_correction().
| Real q3::paw_one_center::OneCenterBranch::hartree_energy {} |
Definition at line 106 of file energy.hpp.
Referenced by q3::paw_one_center::OneCenterEnergy::total().
| std::vector<std::vector<Real> > q3::paw_one_center::OneCenterBranch::potential_lm |
v_H + v_rho, lm-decomposed — what D_ij's local term integrates against.
Definition at line 109 of file energy.hpp.
| Real q3::paw_one_center::OneCenterBranch::xc_energy {} |
Definition at line 107 of file energy.hpp.
Referenced by q3::paw_one_center::OneCenterEnergy::total().