https://mooseframework.inl.gov
FlowModelSinglePhase.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "FlowModel1PhaseBase.h"
13 
18 {
19 public:
21 
22  FlowModelSinglePhase(const InputParameters & params);
23 
24  virtual void addVariables() override;
25  virtual void addInitialConditions() override;
26  virtual void addKernels() override;
27 
28  virtual std::vector<VariableName> solutionVariableNames() const override;
29  const std::vector<VariableName> & passiveTransportSolutionVariableNames() const
30  {
32  }
33 
34 protected:
35  virtual Real getScalingFactorRhoA() const override;
36  virtual Real getScalingFactorRhoUA() const override;
37  virtual Real getScalingFactorRhoEA() const override;
38 
39  virtual void addRhoEAIC() override;
40  virtual void addDensityIC() override;
41 
42  virtual void addPressureAux() override;
43  virtual void addTemperatureAux() override;
44 
45  virtual void addFluidPropertiesMaterials() override;
46 
47  virtual void addNumericalFluxUserObject() override;
48  virtual void addSlopeReconstructionMaterial() override;
49  virtual void addRDGAdvectionDGKernels() override;
50 
52  void addPassiveTransportIC(const VariableName & var, const FunctionName & ic_fn);
53 
55  const std::vector<Real> _scaling_factors;
56 
58  std::vector<VariableName> _passives_times_area_names;
59 
60 public:
61  static const std::string DENSITY;
62  static const std::string FRICTION_FACTOR_DARCY;
63  static const std::string DYNAMIC_VISCOSITY;
64  static const std::string HEAT_TRANSFER_COEFFICIENT_WALL;
65  static const std::string HYDRAULIC_DIAMETER;
66  static const std::string PRESSURE;
67  static const std::string RHOA;
68  static const std::string RHOEA;
69  static const std::string RHOUA;
70  static const std::string SOUND_SPEED;
71  static const std::string SPECIFIC_HEAT_CONSTANT_PRESSURE;
72  static const std::string SPECIFIC_HEAT_CONSTANT_VOLUME;
73  static const std::string SPECIFIC_INTERNAL_ENERGY;
74  static const std::string SPECIFIC_TOTAL_ENTHALPY;
75  static const std::string SPECIFIC_VOLUME;
76  static const std::string TEMPERATURE;
77  static const std::string THERMAL_CONDUCTIVITY;
78  static const std::string VELOCITY;
79  static const std::string VELOCITY_X;
80  static const std::string VELOCITY_Y;
81  static const std::string VELOCITY_Z;
82  static const std::string REYNOLDS_NUMBER;
83 };
virtual void addNumericalFluxUserObject() override
Adds numerical flux user object.
virtual Real getScalingFactorRhoUA() const override
static const std::string SPECIFIC_HEAT_CONSTANT_PRESSURE
static const std::string VELOCITY_Y
virtual void addInitialConditions() override
Add initial conditions.
FlowModelSinglePhase(const InputParameters &params)
virtual void addRhoEAIC() override
static const std::string DYNAMIC_VISCOSITY
void addPassiveTransportIC(const VariableName &var, const FunctionName &ic_fn)
Adds IC for a passive transport variable.
static const std::string TEMPERATURE
virtual Real getScalingFactorRhoA() const override
static const std::string SPECIFIC_HEAT_CONSTANT_VOLUME
virtual void addFluidPropertiesMaterials() override
Adds materials to compute fluid properties.
static const std::string VELOCITY
virtual Real getScalingFactorRhoEA() const override
static const std::string THERMAL_CONDUCTIVITY
static const std::string HEAT_TRANSFER_COEFFICIENT_WALL
static const std::string DENSITY
virtual void addTemperatureAux() override
std::vector< VariableName > _passives_times_area_names
Names of the passive transport solution variables, if any [amount/m].
static const std::string SPECIFIC_VOLUME
static const std::string VELOCITY_Z
static const std::string SOUND_SPEED
virtual void addRDGAdvectionDGKernels() override
Adds DG kernels.
static const std::string SPECIFIC_INTERNAL_ENERGY
virtual void addSlopeReconstructionMaterial() override
Adds slope reconstruction material.
virtual void addDensityIC() override
static const std::string PRESSURE
virtual void addVariables() override
Add variables the model uses.
static const std::string RHOUA
static const std::string REYNOLDS_NUMBER
static const std::string RHOA
virtual void addPressureAux() override
static const std::string FRICTION_FACTOR_DARCY
const std::vector< VariableName > & passiveTransportSolutionVariableNames() const
static const std::string SPECIFIC_TOTAL_ENTHALPY
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual std::vector< VariableName > solutionVariableNames() const override
Returns the solution variable names for the flow model.
const std::vector< Real > _scaling_factors
Scaling factors for each solution variable (rhoA, rhouA, rhoEA)
static const std::string HYDRAULIC_DIAMETER
static const std::string VELOCITY_X
Flow model for a single-component, single-phase fluid using the Euler equations.
static const std::string RHOEA
virtual void addKernels() override
Adds the kernels.
static InputParameters validParams()
Base class for a flow model for a single-phase fluid.