Loading...
Searching...
No Matches
q3::paw_one_center::PawOneCenterConvention Class Reference

#include <init.hpp>

Public Member Functions

virtual ~PawOneCenterConvention ()=default
 
virtual void correct_d_matrix (std::vector< Real > &) const
 Correction applied to D_ij in place. None here.
 
virtual Real energy_correction (const OnSiteOccupancies &) const
 
virtual std::string name () const
 
virtual OneCenterOptions options () const
 Extra terms this convention wants in the one-center energy. None here.
 
virtual void prepare (const ReferenceStateInputs &)
 Build any per-species reference state. Called once, at setup.
 
virtual Real reference_double_counting_energy () const
 
virtual Real reference_one_center_energy () const
 

Detailed Description

The absolute (QE / UPF-PAW) convention: compute E¹ − Ẽ¹ and add it.

Every method is a no-op. Kept as a real class rather than a null pointer so that the SCF driver has one code path, and so every other convention is expressed as a difference from a stated baseline rather than as a branch.

Definition at line 59 of file init.hpp.

Constructor & Destructor Documentation

◆ ~PawOneCenterConvention()

virtual q3::paw_one_center::PawOneCenterConvention::~PawOneCenterConvention ( )
virtualdefault

Member Function Documentation

◆ correct_d_matrix()

virtual void q3::paw_one_center::PawOneCenterConvention::correct_d_matrix ( std::vector< Real > &  ) const
inlinevirtual

Correction applied to D_ij in place. None here.

Definition at line 87 of file init.hpp.

◆ energy_correction()

virtual Real q3::paw_one_center::PawOneCenterConvention::energy_correction ( const OnSiteOccupancies &  ) const
inlinevirtual

Correction added to the one-center energy for the current occupancies.

Zero here. A referencing convention returns −Σ_ij ρ_ij D^ref_ij, which is what makes D remain the exact derivative of the energy after the D correction below is applied.

Definition at line 82 of file init.hpp.

◆ name()

virtual std::string q3::paw_one_center::PawOneCenterConvention::name ( ) const
inlinevirtual

Definition at line 63 of file init.hpp.

◆ options()

virtual OneCenterOptions q3::paw_one_center::PawOneCenterConvention::options ( ) const
inlinevirtual

Extra terms this convention wants in the one-center energy. None here.

Definition at line 68 of file init.hpp.

◆ prepare()

virtual void q3::paw_one_center::PawOneCenterConvention::prepare ( const ReferenceStateInputs &  )
inlinevirtual

Build any per-species reference state. Called once, at setup.

Definition at line 73 of file init.hpp.

◆ reference_double_counting_energy()

virtual Real q3::paw_one_center::PawOneCenterConvention::reference_double_counting_energy ( ) const
inlinevirtual

One-center double counting at the atomic reference state.

For an atomic-referenced convention this is E_Hxc[rho_ref] - rho_ref D_Hxc[rho_ref], including the AE-minus-PS and core-only conventions.

Definition at line 106 of file init.hpp.

◆ reference_one_center_energy()

virtual Real q3::paw_one_center::PawOneCenterConvention::reference_one_center_energy ( ) const
inlinevirtual

Absolute one-center Hxc energy at the dataset's atomic reference state.

This is a radial setup diagnostic, not an atomic total energy a dataset may state for output.

Definition at line 95 of file init.hpp.


The documentation for this class was generated from the following file: