#include <init.hpp>
Inheritance diagram for q3::NormConservingPlanewaveKohnShamSCFState:Converged SCF state for a pseudopotential plane-wave Kohn-Sham calculation.
Concrete leaf of the SCFState hierarchy. Owns all converged data:
Non-owning (iterator-owned, valid for the iterator's lifetime):
|
default |
Explicitly default move operations: when a base class has a deleted copy constructor the derived class's implicit move constructor is also suppressed. We must restore it.
|
default |
|
overridedefault |
|
inlineoverridevirtual |
Return the converged energy breakdown (covariant return).
Implements q3::PlanewaveKohnShamSCFState.
Definition at line 87 of file init.hpp.
References energies_data_.
Referenced by q3::ExchangeCorrelationStressTensorCalculator::compute(), and q3::HartreeStressTensorCalculator::compute().
|
default |
|
inlineoverridevirtual |
Return the converged pseudopotential quantum system (covariant return). Callers with the concrete type get NormConservingPlanewaveKohnShamQuantumSystem&; callers with PlanewaveKohnShamSCFState& get PlanewaveKohnShamQuantumSystem& via base.
Implements q3::PlanewaveKohnShamSCFState.
Definition at line 82 of file init.hpp.
References quantum_system_snapshot_.
Referenced by q3::add_kleinman_bylander_projectors_to_mean_field_record(), q3::build_mean_field_record(), q3::ScfStateMeanFieldBandSource::coefficients(), q3::NormConservingPlanewaveForceCalculator::compute(), q3::NormConservingPlanewaveStressTensorCalculator::compute(), q3::HubbardStressTensorCalculator::compute(), q3::NonlocalPseudopotentialStressTensorCalculator::compute(), q3::HubbardForceCalculator::compute(), q3::NonlocalPseudopotentialForceCalculator::compute(), q3::ForceCalculator::compute_forces(), q3::compute_stress(), q3::ScfStateMeanFieldProjectorSource::projectors(), and q3::QEPlanewaveKohnShamWavefunctionCheckpoint::write_to_file().
| NormConservingPlanewaveKohnShamEnergies q3::NormConservingPlanewaveKohnShamSCFState::energies_data_ |
Definition at line 45 of file init.hpp.
Referenced by energies(), and q3::PlanewavePseudopotentialKohnShamSCFIterator::result().
| std::vector<std::vector<Complex> > q3::NormConservingPlanewaveKohnShamSCFState::hubbard_d_matrix_per_spin |
Converged per-spin Hubbard D-matrix, block-diagonal column-major buffers (one per spin), matching accumulate_hubbard_occupation_and_potential()'s own storage convention.
Definition at line 67 of file init.hpp.
Referenced by q3::HubbardStressTensorCalculator::compute(), q3::HubbardForceCalculator::compute(), and q3::PlanewavePseudopotentialKohnShamSCFIterator::result().
| std::vector<HubbardManifold> q3::NormConservingPlanewaveKohnShamSCFState::hubbard_manifolds |
DFT+U (Hubbard) resolved manifolds at convergence; empty means no correction is active.
Definition at line 62 of file init.hpp.
Referenced by q3::add_kleinman_bylander_projectors_to_mean_field_record(), q3::NormConservingPlanewaveForceCalculator::compute(), q3::HubbardStressTensorCalculator::compute(), q3::HubbardForceCalculator::compute(), q3::ForceCalculator::compute_forces(), q3::compute_stress(), q3::PlanewavePseudopotentialKohnShamSCFIterator::result(), and q3::HubbardStressTensorCalculator::supports().
| std::string q3::NormConservingPlanewaveKohnShamSCFState::hubbard_projector_type = "atomic" |
"atomic" or "ortho-atomic" – see InputData::hubbard_projector_type. Meaningless when hubbard_manifolds is empty.
Definition at line 72 of file init.hpp.
Referenced by q3::NormConservingPlanewaveStressTensorCalculator::compute(), q3::HubbardStressTensorCalculator::compute(), q3::HubbardForceCalculator::compute(), q3::PlanewavePseudopotentialKohnShamSCFIterator::result(), and q3::HubbardStressTensorCalculator::supports().
Projector overlap coefficients ⟨ψ|β_i⟩⟨β_j|ψ⟩ summed over bands. Empty for norm-conserving; populated for ultrasoft by the US iterator.
Definition at line 51 of file init.hpp.
Referenced by q3::ForceCalculator::compute_forces(), q3::compute_stress(), and q3::UltrasoftPlanewavePseudopotentialKohnShamSCFIterator::result().
| std::vector<Matrix<Real> > q3::NormConservingPlanewaveKohnShamSCFState::projector_overlap_coefficients_by_spin |
The same coefficients per spin channel, un-summed. Empty for an unpolarized run and for norm-conserving.
Paired with total_potential_g_by_spin: the augmentation force and stress must contract spin channel against matching spin channel.
Definition at line 59 of file init.hpp.
Referenced by q3::UltrasoftPlanewavePseudopotentialKohnShamSCFIterator::result().
| std::shared_ptr<NormConservingPlanewaveKohnShamQuantumSystem> q3::NormConservingPlanewaveKohnShamSCFState::quantum_system_snapshot_ |
Definition at line 44 of file init.hpp.
Referenced by quantum_system(), q3::PlanewavePseudopotentialKohnShamSCFIterator::result(), and q3::UltrasoftPlanewavePseudopotentialKohnShamSCFIterator::result().