Loading...
Searching...
No Matches
q3::GauntCoefficientTable Struct Reference

#include <coefficients.hpp>

Public Attributes

std::vector< std::vector< std::vector< Real > > > coefficients
 
std::vector< std::vector< std::vector< int > > > nonzero_product_indices
 
std::vector< std::vector< int > > number_of_nonzero_product_indices
 

Detailed Description

Pre-computed Gaunt coefficient table.

Stores the sparse Gaunt coefficient tensor for a given maximum degree. The sparsity tables (lpx, lpl) allow efficient iteration over non-zero entries.

Definition at line 47 of file coefficients.hpp.

Member Data Documentation

◆ coefficients

std::vector<std::vector<std::vector<Real> > > q3::GauntCoefficientTable::coefficients

Gaunt coefficients: ap[lp][lm1][lm2] = ∫ Y_lp Y_lm1 Y_lm2 dΩ Dimensions: [nlm_product][nlm_projector][nlm_projector] where nlm_product = (2*lmax+1)^2 and nlm_projector = (lmax+1)^2

Definition at line 53 of file coefficients.hpp.

Referenced by q3::paw_one_center::build_one_center_densities(), q3::paw_one_center::compute_one_center_d_matrix(), q3::UltrasoftPlanewaveBasis::compute_q_g_single(), q3::compute_ultrasoft_effective_d_matrix(), q3::generate_gaunt_coefficients(), and q3::UltrasoftPlanewaveBasis::precompute_q_functions_g().

◆ nonzero_product_indices

std::vector<std::vector<std::vector<int> > > q3::GauntCoefficientTable::nonzero_product_indices

List of non-zero lp indices for each (lm1, lm2) pair. Dimensions: [nlm_projector][nlm_projector][variable]

Definition at line 65 of file coefficients.hpp.

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

◆ number_of_nonzero_product_indices

std::vector<std::vector<int> > q3::GauntCoefficientTable::number_of_nonzero_product_indices

Number of non-zero lp entries for each (lm1, lm2) pair. Dimensions: [nlm_projector][nlm_projector]

Definition at line 59 of file coefficients.hpp.

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


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