Chi-Tech
chi_math::SphericalAngularQuadrature Class Reference

#include <spherical_angular_quadrature.h>

Inheritance diagram for chi_math::SphericalAngularQuadrature:
chi_math::CurvilinearAngularQuadrature chi_math::ProductQuadrature chi_math::AngularQuadrature

Public Member Functions

 SphericalAngularQuadrature (const chi_math::Quadrature &quad_polar, const bool verbose=false)
 
virtual ~SphericalAngularQuadrature ()=default
 
void MakeHarmonicIndices (unsigned int scattering_order, int dimension) override
 
- Public Member Functions inherited from chi_math::CurvilinearAngularQuadrature
const std::vector< double > & GetDiamondDifferenceFactor () const
 
const std::vector< double > & GetStreamingOperatorFactor () const
 
- Public Member Functions inherited from chi_math::ProductQuadrature
 ~ProductQuadrature () override=default
 
void AssembleCosines (const std::vector< double > &azimuthal, const std::vector< double > &polar, const std::vector< double > &in_weights, bool verbose)
 
void OptimizeForPolarSymmetry (double normalization) override
 
unsigned int GetAngleNum (const unsigned int polar_angle_index, const unsigned int azimu_angle_index) const
 
const std::map< unsigned int, std::vector< unsigned int > > & GetDirectionMap () const
 
- Public Member Functions inherited from chi_math::AngularQuadrature
 AngularQuadrature ()
 
 AngularQuadrature (chi_math::AngularQuadratureType in_type)
 
virtual ~AngularQuadrature ()=default
 
virtual void OptimizeForPolarSymmetry (double normalization)
 
virtual void BuildDiscreteToMomentOperator (unsigned int scattering_order, int dimension)
 
virtual void BuildMomentToDiscreteOperator (unsigned int scattering_order, int dimension)
 
std::vector< std::vector< double > > const & GetDiscreteToMomentOperator () const
 
std::vector< std::vector< double > > const & GetMomentToDiscreteOperator () const
 
const std::vector< HarmonicIndices > & GetMomentToHarmonicsIndexMap () const
 

Private Member Functions

void Initialize (const chi_math::Quadrature &quad_polar, const bool verbose=false)
 
void InitializeParameters ()
 

Additional Inherited Members

- Data Fields inherited from chi_math::ProductQuadrature
std::vector< double > polar_ang_
 
std::vector< double > azimu_ang_
 
- Data Fields inherited from chi_math::AngularQuadrature
const chi_math::AngularQuadratureType type_
 
std::vector< chi_math::QuadraturePointPhiThetaabscissae_
 
std::vector< double > weights_
 
std::vector< chi_mesh::Vector3omegas_
 
- Protected Member Functions inherited from chi_math::CurvilinearAngularQuadrature
 CurvilinearAngularQuadrature ()=default
 
virtual ~CurvilinearAngularQuadrature ()=default
 
- Protected Member Functions inherited from chi_math::ProductQuadrature
 ProductQuadrature ()
 
virtual void MakeHarmonicIndices (unsigned int scattering_order, int dimension)
 
- Protected Attributes inherited from chi_math::CurvilinearAngularQuadrature
std::vector< double > fac_diamond_difference_
 
std::vector< double > fac_streaming_operator_
 
- Protected Attributes inherited from chi_math::ProductQuadrature
std::map< unsigned int, std::vector< unsigned int > > map_directions_
 
- Protected Attributes inherited from chi_math::AngularQuadrature
std::vector< std::vector< double > > d2m_op_
 
std::vector< std::vector< double > > m2d_op_
 
std::vector< HarmonicIndicesm_to_ell_em_map_
 
bool d2m_op_built_ = false
 
bool m2d_op_built_ = false
 

Detailed Description

Spherical product angular quadrature.

Definition at line 14 of file spherical_angular_quadrature.h.

Constructor & Destructor Documentation

◆ SphericalAngularQuadrature()

chi_math::SphericalAngularQuadrature::SphericalAngularQuadrature ( const chi_math::Quadrature quad_polar,
const bool  verbose = false 
)

Effective constructor. Initialize with one-dimensional quadrature. If not already present in the quadrature, the method inserts the starting directions.

Definition at line 11 of file spherical_angular_quadrature.cc.

◆ ~SphericalAngularQuadrature()

virtual chi_math::SphericalAngularQuadrature::~SphericalAngularQuadrature ( )
virtualdefault

Default destructor.

Member Function Documentation

◆ Initialize()

void chi_math::SphericalAngularQuadrature::Initialize ( const chi_math::Quadrature quad_polar,
const bool  verbose = false 
)
private

Initialize with one-dimensional quadrature.

Definition at line 22 of file spherical_angular_quadrature.cc.

◆ InitializeParameters()

void chi_math::SphericalAngularQuadrature::InitializeParameters ( )
private

Initialize parametrizing factors of the spherical angular quadrature, starting from a fully initialized underlying product quadrature.

Definition at line 157 of file spherical_angular_quadrature.cc.

◆ MakeHarmonicIndices()

void chi_math::SphericalAngularQuadrature::MakeHarmonicIndices ( unsigned int  scattering_order,
int  dimension 
)
overridevirtual

Populates a map of moment m to the Spherical Harmonic indices required.

Reimplemented from chi_math::AngularQuadrature.

Definition at line 188 of file spherical_angular_quadrature.cc.


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