Base class for testing numerical flux objects for the variable-area compressible Euler equations. More...
#include <TestNumericalFlux3EqnBase.h>
Public Member Functions | |
TestNumericalFlux3EqnBase () | |
Protected Member Functions | |
virtual std::vector< ADReal > | computeConservativeSolution (const std::vector< ADReal > &W, const ADReal &A) const override |
Computes the conservative solution from the primitive solution. More... | |
virtual std::vector< ADReal > | computeFluxFromPrimitive (const std::vector< ADReal > &W, const ADReal &A) const override |
Computes the 1D flux vector from the primitive solution. More... | |
const SinglePhaseFluidProperties & | getFluidPropertiesObject () |
Builds and gets the fluid properties user object. More... | |
virtual const NumericalFlux1D & | createFluxObject ()=0 |
Creates the flux object to be tested. More... | |
virtual std::vector< std::pair< std::vector< ADReal >, std::vector< ADReal > > > | getPrimitiveSolutionsSymmetryTest () const =0 |
Gets a vector of pairs of primitive solution vectors to use for symmetry test. More... | |
virtual std::vector< std::vector< ADReal > > | getPrimitiveSolutionsConsistencyTest () const =0 |
Gets a vector of primitive solution vectors to use for consistency test. More... | |
void | testConsistency () |
Runs the consistency test(s) More... | |
void | testSymmetry () |
Runs the symmetry test(s) More... | |
void | buildObjects () |
T & | addObject (const std::string &type, const std::string &name, InputParameters ¶ms) |
Protected Attributes | |
const UserObjectName | _fp_name |
Fluid properties user object name. More... | |
const SinglePhaseFluidProperties & | _fp |
Fluid properties user object. More... | |
std::unique_ptr< MooseMesh > | _mesh |
std::shared_ptr< MooseApp > | _app |
Factory & | _factory |
std::shared_ptr< FEProblem > | _fe_problem |
Base class for testing numerical flux objects for the variable-area compressible Euler equations.
Definition at line 19 of file TestNumericalFlux3EqnBase.h.
TestNumericalFlux3EqnBase::TestNumericalFlux3EqnBase | ( | ) |
Definition at line 14 of file TestNumericalFlux3EqnBase.C.
|
overrideprotectedvirtual |
Computes the conservative solution from the primitive solution.
[in] | W | Primitive solution vector |
[in] | A | Cross-sectional area |
Implements TestNumericalFlux1D.
Definition at line 22 of file TestNumericalFlux3EqnBase.C.
|
overrideprotectedvirtual |
Computes the 1D flux vector from the primitive solution.
[in] | W | Primitive solution vector |
[in] | A | Cross-sectional area |
Implements TestNumericalFlux1D.
Definition at line 29 of file TestNumericalFlux3EqnBase.C.
|
protectedpure virtualinherited |
Creates the flux object to be tested.
Implemented in TestNumericalFlux3EqnCentered, TestNumericalFlux3EqnHLLC, and TestNumericalFluxGasMixHLLC.
Referenced by TestNumericalFlux1D::testConsistency(), and TestNumericalFlux1D::testSymmetry().
|
protected |
Builds and gets the fluid properties user object.
Definition at line 36 of file TestNumericalFlux3EqnBase.C.
|
protectedpure virtualinherited |
Gets a vector of primitive solution vectors to use for consistency test.
Implemented in TestNumericalFlux3EqnCentered, TestNumericalFlux3EqnHLLC, and TestNumericalFluxGasMixHLLC.
Referenced by TestNumericalFlux1D::testConsistency().
|
protectedpure virtualinherited |
Gets a vector of pairs of primitive solution vectors to use for symmetry test.
Implemented in TestNumericalFlux3EqnCentered, TestNumericalFlux3EqnHLLC, and TestNumericalFluxGasMixHLLC.
Referenced by TestNumericalFlux1D::testSymmetry().
|
protectedinherited |
Runs the consistency test(s)
Definition at line 60 of file TestNumericalFlux1D.C.
|
protectedinherited |
Runs the symmetry test(s)
Definition at line 19 of file TestNumericalFlux1D.C.
|
protected |
Fluid properties user object.
Definition at line 38 of file TestNumericalFlux3EqnBase.h.
Referenced by computeConservativeSolution(), and computeFluxFromPrimitive().
|
protected |
Fluid properties user object name.
Definition at line 36 of file TestNumericalFlux3EqnBase.h.
Referenced by TestNumericalFlux3EqnCentered::createFluxObject(), TestNumericalFlux3EqnHLLC::createFluxObject(), and getFluidPropertiesObject().