WARPXM v1.10.0
|
Child PhaseSpaceElement class for 2D2V PhaseSpace34Duoprism. More...
#include <phase_space_34duoprism.h>
Child PhaseSpaceElement class for 2D2V PhaseSpace34Duoprism.
This is a 12 node (2nd order) 2D2V (4-dimensional) element consisting of a triangle with 2 lines extended in the velocity direction.
It has 3 cube faces corresponding to the triangle faces and 4 triangular prism faces (2 corresponding to each )
Public Member Functions | |
PhaseSpace34Duoprism (const std::shared_ptr< geometry::phase_space::PhaseSpaceDGGeometry > &phase_space_dg_geometry) | |
Constructor. | |
~PhaseSpace34Duoprism () override | |
Destructor. | |
void | setup () override |
setup the phase space 34duoprism | |
void | setNd () override |
override base class function | |
void | getCommonNormal (const int physical_element_index, const int phaseSpaceElementFaceIndex, std::vector< real > &phaseSpaceCommonNormal) const override |
override base class function | |
Public Member Functions inherited from geometry::phase_space_element::PhaseSpaceElement | |
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 | |
Additional Inherited Members | |
Protected Attributes inherited from geometry::phase_space_element::PhaseSpaceElement | |
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::PhaseSpace34Duoprism::PhaseSpace34Duoprism | ( | const std::shared_ptr< geometry::phase_space::PhaseSpaceDGGeometry > & | phase_space_dg_geometry | ) |
Constructor.
phase_space_dg_geometry |
|
override |
Destructor.
|
overridevirtual |
override base class function
Implements geometry::phase_space_element::PhaseSpaceElement.
|
overridevirtual |
override base class function
Implements geometry::phase_space_element::PhaseSpaceElement.
|
overridevirtual |
setup the phase space 34duoprism
Reimplemented from geometry::phase_space_element::PhaseSpaceElement.