Class ProductQuadrature

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class ProductQuadrature : public opensn::AngularQuadrature

Class for product quadratures.

Subclassed by opensn::CurvilinearProductQuadrature, opensn::GLCProductQuadrature2DXY, opensn::GLCProductQuadrature3DXYZ, opensn::GLProductQuadrature1DSlab

Public Functions

~ProductQuadrature() override = default
inline unsigned int GetAngleNum(const unsigned int polar_angle_index, const unsigned int azimu_angle_index) const

Obtains the abscissae index given the indices of the polar angle index and the azimuthal angle index.

inline const std::map<unsigned int, std::vector<unsigned int>> &GetDirectionMap() const

Return constant reference to map_directions.

Public Members

std::vector<double> polar_ang
std::vector<double> azimu_ang

Protected Functions

inline ProductQuadrature(int dimension, int scattering_order)
void AssembleCosines(const std::vector<double> &azimuthal, const std::vector<double> &polar, const std::vector<double> &weights, bool verbose)

Initializes the quadrature with custom angles and weights.

Protected Attributes

double weight_sum_
std::map<unsigned int, std::vector<unsigned int>> map_directions_

Linear indices of ordered directions mapped to polar level.