Class TriangularQuadrature
Defined in File triangular_quadrature.h
Inheritance Relationships
Base Type
public opensn::AngularQuadrature(Class AngularQuadrature)
Derived Types
public opensn::GLCTriangularQuadrature2DXY(Class GLCTriangularQuadrature2DXY)public opensn::GLCTriangularQuadrature3DXYZ(Class GLCTriangularQuadrature3DXYZ)
Class Documentation
-
class TriangularQuadrature : public opensn::AngularQuadrature
Base class for triangular quadratures.
Unlike product quadratures which have a fixed number of azimuthal angles per polar level, triangular quadratures have a varying number of azimuthal angles that decreases as the polar angle moves away from the equatorial plane.
Subclassed by opensn::GLCTriangularQuadrature2DXY, opensn::GLCTriangularQuadrature3DXYZ
Public Functions
-
~TriangularQuadrature() override = default
-
inline unsigned int GetAngleNum(const unsigned int polar_angle_index, const unsigned int azimu_angle_index) const
Obtain the abscissae index given 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
Polar angles for each polar level.
Protected Functions
-
inline TriangularQuadrature(unsigned int dimension, unsigned int scattering_order)
Protected Attributes
-
double weight_sum_
Sum of all quadrature weights.
-
std::vector<std::vector<double>> azimuthal_per_polar_
Azimuthal angles for each polar level.
Unlike product quadratures which have a fixed number of azimuthal angles per polar level, triangular quadratures have a varying number that decreases as the polar angle moves from the equator.
-
std::map<unsigned int, std::vector<unsigned int>> map_directions_
Linear indices of ordered directions mapped to polar level.
-
~TriangularQuadrature() override = default