Loading...
Searching...
No Matches
q3::PlanewaveEffectiveNonlocalPotential Class Reference

#include <effective_potential_non_local.hpp>

+ Inheritance diagram for q3::PlanewaveEffectiveNonlocalPotential:

Public Member Functions

 PlanewaveEffectiveNonlocalPotential (const PseudopotentialSet &pseudopotential_set, const AugmentationQTable &augmentation_q_table, const SphericalHarmonicsTable &spherical_harmonics_table, const GauntCoefficientTable &gaunt_table, const std::vector< int > &projector_channels_per_type, const std::vector< std::vector< int > > &projector_to_beta_index, const std::vector< std::vector< int > > &projector_combined_lm_index, const std::vector< std::vector< int > > &projector_angular_momentum)
 
 ~PlanewaveEffectiveNonlocalPotential () override=default
 
std::vector< std::vector< Real > > compute (const Crystal &crystal_structure, const PlanewaveBasis &planewave_basis, const std::vector< Complex > &total_potential_g) const override
 Compute the effective D-matrix for all atoms.
 
- Public Member Functions inherited from q3::EffectiveNonlocalPotential
virtual ~EffectiveNonlocalPotential ()=default
 

Detailed Description

Planewave implementation of the effective D-matrix computation.

Stores ultrasoft-specific dependencies as members and implements the abstract EffectiveNonlocalPotential::compute() interface.

Definition at line 55 of file effective_potential_non_local.hpp.

Constructor & Destructor Documentation

◆ PlanewaveEffectiveNonlocalPotential()

q3::PlanewaveEffectiveNonlocalPotential::PlanewaveEffectiveNonlocalPotential ( const PseudopotentialSet &  pseudopotential_set,
const AugmentationQTable &  augmentation_q_table,
const SphericalHarmonicsTable &  spherical_harmonics_table,
const GauntCoefficientTable &  gaunt_table,
const std::vector< int > &  projector_channels_per_type,
const std::vector< std::vector< int > > &  projector_to_beta_index,
const std::vector< std::vector< int > > &  projector_combined_lm_index,
const std::vector< std::vector< int > > &  projector_angular_momentum 
)
inline

Definition at line 57 of file effective_potential_non_local.hpp.

◆ ~PlanewaveEffectiveNonlocalPotential()

q3::PlanewaveEffectiveNonlocalPotential::~PlanewaveEffectiveNonlocalPotential ( )
overridedefault

Member Function Documentation

◆ compute()

std::vector< std::vector< Real > > q3::PlanewaveEffectiveNonlocalPotential::compute ( const Crystal &  crystal_structure,
const PlanewaveBasis &  planewave_basis,
const std::vector< Complex > &  total_potential_g 
) const
inlineoverridevirtual

Compute the effective D-matrix for all atoms.

Implements q3::EffectiveNonlocalPotential.

Definition at line 79 of file effective_potential_non_local.hpp.

References q3::compute_ultrasoft_effective_d_matrix().


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