SIRIUS 7.5.0
Electronic structure library and applications
Public Member Functions | Protected Attributes | List of all members
sirius::Radial_integrals_base< N > Class Template Reference

Base class for all kinds of radial integrals. More...

#include <radial_integrals.hpp>

Public Member Functions

 Radial_integrals_base (Unit_cell const &unit_cell__, double const qmax__, int const np__)
 Constructor. More...
 
std::pair< int, double > iqdq (double q__) const
 Get starting index iq and delta dq for the q-point on the linear grid. More...
 
template<typename... Args>
double value (Args... args, double q__) const
 Return value of the radial integral with specific indices. More...
 
int nq () const
 
double qmax () const
 

Protected Attributes

Unit_cell const & unit_cell_
 Unit cell. More...
 
Radial_grid< double > grid_q_
 Linear grid of q-points on which the interpolation of radial integrals is done. More...
 
splindex_block spl_q_
 Split index of q-points. More...
 
sddk::mdarray< Spline< double >, N > values_
 Array with integrals. More...
 
double qmax_ {0}
 Maximum length of the reciprocal wave-vector. More...
 

Detailed Description

template<int N>
class sirius::Radial_integrals_base< N >

Base class for all kinds of radial integrals.

Definition at line 38 of file radial_integrals.hpp.

Constructor & Destructor Documentation

◆ Radial_integrals_base()

template<int N>
sirius::Radial_integrals_base< N >::Radial_integrals_base ( Unit_cell const &  unit_cell__,
double const  qmax__,
int const  np__ 
)
inline

Constructor.

Definition at line 58 of file radial_integrals.hpp.

Member Function Documentation

◆ iqdq()

template<int N>
std::pair< int, double > sirius::Radial_integrals_base< N >::iqdq ( double  q__) const
inline

Get starting index iq and delta dq for the q-point on the linear grid.

The following condition is satisfied: q = grid_q[iq] + dq

Definition at line 75 of file radial_integrals.hpp.

◆ value()

template<int N>
template<typename... Args>
double sirius::Radial_integrals_base< N >::value ( Args...  args,
double  q__ 
) const
inline

Return value of the radial integral with specific indices.

Definition at line 96 of file radial_integrals.hpp.

◆ nq()

template<int N>
int sirius::Radial_integrals_base< N >::nq ( ) const
inline

Definition at line 102 of file radial_integrals.hpp.

◆ qmax()

template<int N>
double sirius::Radial_integrals_base< N >::qmax ( ) const
inline

Definition at line 107 of file radial_integrals.hpp.

Member Data Documentation

◆ unit_cell_

template<int N>
Unit_cell const& sirius::Radial_integrals_base< N >::unit_cell_
protected

Unit cell.

Definition at line 42 of file radial_integrals.hpp.

◆ grid_q_

template<int N>
Radial_grid<double> sirius::Radial_integrals_base< N >::grid_q_
protected

Linear grid of q-points on which the interpolation of radial integrals is done.

Definition at line 45 of file radial_integrals.hpp.

◆ spl_q_

template<int N>
splindex_block sirius::Radial_integrals_base< N >::spl_q_
protected

Split index of q-points.

Definition at line 48 of file radial_integrals.hpp.

◆ values_

template<int N>
sddk::mdarray<Spline<double>, N> sirius::Radial_integrals_base< N >::values_
protected

Array with integrals.

Definition at line 51 of file radial_integrals.hpp.

◆ qmax_

template<int N>
double sirius::Radial_integrals_base< N >::qmax_ {0}
protected

Maximum length of the reciprocal wave-vector.

Definition at line 54 of file radial_integrals.hpp.


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