hummingbird
Solving the self-adjoint angular flux transport equation using spectral elements on Cartesian geometry
Loading...
Searching...
No Matches
hummingbird::Ordinate Class Reference

Defines a solid angle, or ordinate, in spherical geometry. More...

#include <ordinate.h>

Public Member Functions

 Ordinate (const double azimuth, const double polar)
 Construct a new Ordinate object.
double azimuth () const
 Getter for azimuthal angle.
double polar () const
 Getter for polar angle.
double x () const
 Evaluate the x-direction cosine.
double y () const
 Evaluate the y-direction cosine.
double z () const
 Evaluate the z-direction cosine.
arma::vec3 CartesianUnitVector () const
 Returns the Ordinate as a Cartesian unit vector.

Static Public Member Functions

static Ordinate Reflect (const Ordinate &ordinate, const arma::vec3 surface_normal)
 Construct a new Ordinate object in the reflected direction given a starting direction and surface normal vector.

Private Member Functions

void CheckInput (const double azimuth, const double polar)
 Check that input angles are within expected bounds.

Private Attributes

const double azimuth_
 Azimuthal angle in radians.
const double polar_
 Polar angle in radians.

Detailed Description

Defines a solid angle, or ordinate, in spherical geometry.

Definition at line 15 of file ordinate.h.

Constructor & Destructor Documentation

◆ Ordinate()

hummingbird::Ordinate::Ordinate ( const double azimuth,
const double polar )

Construct a new Ordinate object.

Parameters
azimuthAzimuthal angle \(\theta\in [-\pi,\pi]\)
polarPolar angle \(\varphi\in [0,\pi]\)

Definition at line 7 of file ordinate.cc.

Member Function Documentation

◆ azimuth()

double hummingbird::Ordinate::azimuth ( ) const
inline

Getter for azimuthal angle.

Returns
double

Definition at line 40 of file ordinate.h.

◆ CartesianUnitVector()

arma::vec3 hummingbird::Ordinate::CartesianUnitVector ( ) const

Returns the Ordinate as a Cartesian unit vector.

Returns
arma::vec3

Definition at line 38 of file ordinate.cc.

◆ CheckInput()

void hummingbird::Ordinate::CheckInput ( const double azimuth,
const double polar )
private

Check that input angles are within expected bounds.

Parameters
azimuthAzimuthal angle in radians
polarPolar angle in radians

Definition at line 23 of file ordinate.cc.

◆ polar()

double hummingbird::Ordinate::polar ( ) const
inline

Getter for polar angle.

Returns
double

Definition at line 47 of file ordinate.h.

◆ Reflect()

Ordinate hummingbird::Ordinate::Reflect ( const Ordinate & ordinate,
const arma::vec3 surface_normal )
static

Construct a new Ordinate object in the reflected direction given a starting direction and surface normal vector.

Parameters
ordinateInitial direction
surface_normalSurface normal vector

Definition at line 12 of file ordinate.cc.

◆ x()

double hummingbird::Ordinate::x ( ) const

Evaluate the x-direction cosine.

Returns
double

Definition at line 32 of file ordinate.cc.

◆ y()

double hummingbird::Ordinate::y ( ) const

Evaluate the y-direction cosine.

Returns
double

Definition at line 34 of file ordinate.cc.

◆ z()

double hummingbird::Ordinate::z ( ) const

Evaluate the z-direction cosine.

Returns
double

Definition at line 36 of file ordinate.cc.

Member Data Documentation

◆ azimuth_

const double hummingbird::Ordinate::azimuth_
private

Azimuthal angle in radians.

Definition at line 79 of file ordinate.h.

◆ polar_

const double hummingbird::Ordinate::polar_
private

Polar angle in radians.

Definition at line 82 of file ordinate.h.


The documentation for this class was generated from the following files:
  • /home/runner/work/hummingbird/hummingbird/include/quadrature/angular/ordinate.h
  • /home/runner/work/hummingbird/hummingbird/src/quadrature/angular/ordinate.cc