24 "Reconstructed solution values for the 1-D, 1-phase, variable-area Euler equations");
31 params.
addCoupledVar(
"passives_times_area",
"Passive transport solution variables");
34 "Flow channel direction material property name");
37 "Name of fluid properties user object");
46 _A_avg(adCoupledValue(
"A_elem")),
47 _A_linear(adCoupledValue(
"A_linear")),
48 _rhoA_avg(adCoupledValue(
"rhoA")),
49 _rhouA_avg(adCoupledValue(
"rhouA")),
50 _rhoEA_avg(adCoupledValue(
"rhoEA")),
52 _A_var(getVar(
"A_elem", 0)),
53 _rhoA_var(getVar(
"rhoA", 0)),
54 _rhouA_var(getVar(
"rhouA", 0)),
55 _rhoEA_var(getVar(
"rhoEA", 0)),
57 _n_passives(isParamValid(
"passives_times_area") ? coupledComponents(
"passives_times_area") : 0),
61 _rhoA(declareADProperty<
Real>(
"rhoA")),
62 _rhouA(declareADProperty<
Real>(
"rhouA")),
63 _rhoEA(declareADProperty<
Real>(
"rhoEA")),
64 _passives_times_area(declareADProperty<
std::vector<
Real>>(
"passives_times_area")),
104 auto W = FlowModel1PhaseUtils::computePrimitiveSolutionVector<true>(U_avg,
_fp);
110 W[m] = W[m] + slopes[m] * delta_x;
114 FlowModel1PhaseUtils::computeConservativeSolutionVector<true>(W,
_A_linear[
_qp],
_fp);
128 return FlowModel1PhaseUtils::computePrimitiveSolutionVector<true>(U,
_fp);
const MooseArray< Point > & _q_point
ADMaterialProperty< Real > & _rhoA
virtual void computeQpProperties() override
ADMaterialProperty< Real > & _rhouA
std::vector< const ADVariableValue * > _passives_times_area_avg
const ADVariableValue & _rhoA_avg
static InputParameters validParams()
registerMooseObject("ThermalHydraulicsApp", ADRDG3EqnMaterial)
const ADVariableValue & adCoupledValue(const std::string &var_name, unsigned int comp=0) const
const ADVariableValue & _A_avg
Cross-sectional area, piecewise constant.
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
static InputParameters validParams()
virtual void resize(const std::size_t size) override final
const ESlopeReconstructionType _scheme
Slope reconstruction scheme.
static InputParameters validParams()
No reconstruction; Godunov scheme.
virtual std::vector< ADReal > computeElementPrimitiveVariables(const Elem *elem) const override
Computes the cell-average primitive variable values for an element.
const MaterialProperty< RealVectorValue > & _dir
Flow channel direction.
Common class for single phase fluid properties.
const ADVariableValue & _rhoEA_avg
ADMaterialProperty< std::vector< Real > > & _passives_times_area
static const unsigned int N_FLUX_INPUTS
Number of numerical flux function inputs for 1D.
MooseVariable * _rhouA_var
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
ADRDG3EqnMaterial(const InputParameters ¶meters)
std::vector< MooseVariable * > _U_vars
Solution variables vector.
Interface class for 1-D slope reconstruction.
IntRange< T > make_range(T beg, T end)
const unsigned int _n_passives
Number of passive transport variables.
MooseVariable * _rhoA_var
const ADVariableValue & _A_linear
Cross-sectional area, linear.
MooseVariable * _rhoEA_var
const SinglePhaseFluidProperties & _fp
fluid properties user object
const ADVariableValue & _rhouA_avg
std::vector< GenericReal< is_ad > > getElementSlopes(const Elem *elem) const
Gets limited slopes for the primitive variables in the 1-D direction.
Reconstructed solution values for the 1-D, 1-phase, variable-area Euler equations.
const Elem *const & _current_elem
ADMaterialProperty< Real > & _rhoEA