WARPXM v1.10.0
|
Base class used for generating phase space element information for kinetic phase space calculations. More...
#include <phase_space_element.h>
Base class used for generating phase space element information for kinetic phase space calculations.
Public Member Functions | |
PhaseSpaceElement (const std::shared_ptr< geometry::phase_space::PhaseSpaceDGGeometry > &phase_space_dg_geometry) | |
Constructor. | |
virtual | ~PhaseSpaceElement ()=default |
Destructor. | |
virtual void | setup () |
setup | |
int | getNdPhysicalSpace () |
Get number of dimensions in physical space. | |
int | getNdVelocitySpace () |
Get number of dimensions in velocity space. | |
int | getNdPhaseSpace () |
Get number of dimensions in phase space. | |
virtual void | setNd ()=0 |
Set _N_d_physical_space, _N_d_velocity_space, _N_d_phase_space for the phase space element Has to be setup by the child element. | |
void | setSpatialFaceOrientations () |
geometry::phase_space_element::PhaseSpaceFace const * | getFace (const int local_face_index) const |
Get at face given a local face index of the element. | |
int | getNeighborGlobalPhysicalSpaceNodeIndexFromSpatialFace (const int physical_element_index, const int phase_space_element_local_face_index, const int phase_space_element_face_node_index) const |
This gets the neighboring physical space node of a node on a phase space element on a spatial face. | |
int | getNeighborGlobalPhaseSpaceNodeIndexFromSpatialFace (const int phase_space_element_face_node_index, const int neighbor_global_physical_element_index, const int phase_space_neighbor_element_local_face_index, const int orientation, const int velocity_space_element_indexes[3]) const |
This gets the neighboring phase space node of a node on a phase space element Written ofr a spatial face If its on a velocity face, you can use the lookup table for velocity faces instead. | |
virtual void | getCommonNormal (const int physical_element_index, const int phaseSpaceElementFaceIndex, std::vector< real > &phaseSpaceCommonNormal) const =0 |
base class function | |
Protected Attributes | |
int | _N_d_physical_space |
int | _N_d_velocity_space |
int | _N_d_phase_space |
std::shared_ptr< geometry::phase_space::PhaseSpaceDGGeometry > | _phase_space_dg_geometry |
std::vector< std::unique_ptr< geometry::phase_space_element::PhaseSpaceFace > > | _phase_space_faces |
std::vector< int > | _spatial_face_orientation |
geometry::phase_space_element::PhaseSpaceElement::PhaseSpaceElement | ( | const std::shared_ptr< geometry::phase_space::PhaseSpaceDGGeometry > & | phase_space_dg_geometry | ) |
Constructor.
|
virtualdefault |
Destructor.
|
pure virtual |
base class function
Implemented in geometry::phase_space_element::PhaseSpace34Duoprism, geometry::phase_space_element::PhaseSpaceCube, and geometry::phase_space_element::PhaseSpaceSquare.
|
inline |
Get at face given a local face index of the element.
local_face_index |
|
inline |
Get number of dimensions in phase space.
|
inline |
Get number of dimensions in physical space.
|
inline |
Get number of dimensions in velocity space.
int geometry::phase_space_element::PhaseSpaceElement::getNeighborGlobalPhaseSpaceNodeIndexFromSpatialFace | ( | const int | phase_space_element_face_node_index, |
const int | neighbor_global_physical_element_index, | ||
const int | phase_space_neighbor_element_local_face_index, | ||
const int | orientation, | ||
const int | velocity_space_element_indexes[3] | ||
) | const |
This gets the neighboring phase space node of a node on a phase space element Written ofr a spatial face If its on a velocity face, you can use the lookup table for velocity faces instead.
phase_space_element_face_node_index |
param neighbor_global_physical_element_index
phase_space_neighbor_element_local_face_index | |
orientation | |
velocity_space_element_indexes[3] |
int geometry::phase_space_element::PhaseSpaceElement::getNeighborGlobalPhysicalSpaceNodeIndexFromSpatialFace | ( | const int | physical_element_index, |
const int | phase_space_element_local_face_index, | ||
const int | phase_space_element_face_node_index | ||
) | const |
This gets the neighboring physical space node of a node on a phase space element on a spatial face.
physical_element_index | |
phase_space_element_local_face_index | |
phase_space_element_face_node_index |
|
pure virtual |
Set _N_d_physical_space, _N_d_velocity_space, _N_d_phase_space for the phase space element Has to be setup by the child element.
Implemented in geometry::phase_space_element::PhaseSpace34Duoprism, geometry::phase_space_element::PhaseSpaceCube, and geometry::phase_space_element::PhaseSpaceSquare.
void geometry::phase_space_element::PhaseSpaceElement::setSpatialFaceOrientations | ( | ) |
|
virtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |