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

#include <spherical_harmonics_table.hpp>

Public Member Functions

 SphericalHarmonicsTable ()=default
 
void init (const Crystal &crystal_structure, const PlanewaveBasis &planewave_basis, int maximum_angular_momentum)
 
int maximum_angular_momentum () const
 
int number_of_lm_components () const
 
Real value (int g_index, int combined_lm_index) const
 

Detailed Description

Definition at line 22 of file spherical_harmonics_table.hpp.

Constructor & Destructor Documentation

◆ SphericalHarmonicsTable()

q3::SphericalHarmonicsTable::SphericalHarmonicsTable ( )
default

Member Function Documentation

◆ init()

void q3::SphericalHarmonicsTable::init ( const Crystal &  crystal_structure,
const PlanewaveBasis &  planewave_basis,
int  maximum_angular_momentum 
)
inline

Initialize the table for all G-vectors up to the given maximum angular momentum.

Computes Y_lm(Ĝ) for each G-vector in the basis and each (l,m) pair with l ∈ [0, maximum_angular_momentum] and m ∈ [-l, l].

Definition at line 32 of file spherical_harmonics_table.hpp.

References q3::compute_real_spherical_harmonic(), q3::PlanewaveBasis::g_vectors(), q3::harmonic_combined_degree_order_index(), maximum_angular_momentum(), q3::PlanewaveBasis::number_of_g_vectors(), number_of_lm_components(), q3::Crystal::two_pi_over_lattice_parameter(), and q3::Vector3D::x.

Referenced by q3::UltrasoftPlanewaveBasis::init_ultrasoft().

◆ maximum_angular_momentum()

int q3::SphericalHarmonicsTable::maximum_angular_momentum ( ) const
inline

Definition at line 83 of file spherical_harmonics_table.hpp.

Referenced by init().

◆ number_of_lm_components()

int q3::SphericalHarmonicsTable::number_of_lm_components ( ) const
inline

Number of (l,m) components: (lmax+1)².

Definition at line 79 of file spherical_harmonics_table.hpp.

Referenced by init().

◆ value()

Real q3::SphericalHarmonicsTable::value ( int  g_index,
int  combined_lm_index 
) const
inline

Access Y_lm(Ĝ) for a given G-vector index and combined (l,m) index.

Definition at line 69 of file spherical_harmonics_table.hpp.

Referenced by q3::compute_ultrasoft_effective_d_matrix(), and q3::UltrasoftPlanewaveBasis::precompute_q_functions_g().


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