34#ifndef DUMUX_NAVIERSTOKES_MODEL_HH
35#define DUMUX_NAVIERSTOKES_MODEL_HH
61template<
int dimension>
65 static constexpr int dim() {
return dimension; }
69 static constexpr int numEq() {
return dimension+1; }
122namespace Properties {
140template<
class TypeTag>
141struct NormalizePressure<TypeTag, TTag::NavierStokes> {
static constexpr bool value =
true; };
144template<
class TypeTag>
145struct ModelTraits<TypeTag, TTag::NavierStokes>
149 static constexpr auto dim = GridView::dimension;
160template<
class TypeTag>
161struct FluidState<TypeTag, TTag::NavierStokes>{
170template<
class TypeTag>
174template<
class TypeTag>
175struct VolumeVariables<TypeTag, TTag::NavierStokes>
183 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
184 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
185 static_assert(!FSY::isMiscible(),
"The Navier-Stokes model only works with immiscible fluid systems.");
193template<
class TypeTag>
197template<
class TypeTag>
205template<
class TypeTag>
206struct ModelTraits<TypeTag, TTag::NavierStokesNI>
210 static constexpr auto dim = GridView::dimension;
217template<
class TypeTag>
Represents all relevant thermodynamic quantities of a multi-phase fluid system assuming immiscibility...
Definition: immiscible.hh:30
The flux variables class for the Navier-Stokes model using the staggered grid discretization.
Definition: freeflow/navierstokes/fluxvariables.hh:23
Adds I/O fields for the Navier-Stokes model.
Definition: freeflow/navierstokes/iofields.hh:67
Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization.
Definition: freeflow/navierstokes/localresidual.hh:23
Volume variables for the single-phase Navier-Stokes model.
Definition: freeflow/navierstokes/volumevariables.hh:26
Defines all properties used in Dumux.
Diffusive heat flux according to Fourier's law.
A single-phase, non-isothermal free-flow model.
Defines a type tag and some properties for free flow models.
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition: propertysystem.hh:296
Represents all relevant thermodynamic quantities of a multi-phase fluid system assuming immiscibility...
The available discretization methods in Dumux.
Base class for the flux variables in porous medium models.
Defines the primary variable and equation indices used by the isothermal tracer model.
Adds I/O fields specific to the tracer model.
Element-wise calculation of the local residual for problems using fully implicit tracer model.
Python wrapper for volume variables (finite volume schemes)
Specifies a number properties of non-isothermal free-flow flow models based on the specifics of a giv...
Definition: freeflow/nonisothermal/model.hh:47
Adds I/O fields specific to non-isothermal free-flow models.
Definition: freeflow/nonisothermal/iofields.hh:26
The common indices for the isothermal Navier-Stokes model.
Definition: freeflow/navierstokes/indices.hh:25
Traits for the Navier-Stokes model.
Definition: freeflow/navierstokes/model.hh:63
static constexpr int numFluidComponents()
The number of components is 1.
Definition: freeflow/navierstokes/model.hh:75
static constexpr bool enableAdvection()
Enable advection.
Definition: freeflow/navierstokes/model.hh:78
static constexpr int dim()
The dimension of the model.
Definition: freeflow/navierstokes/model.hh:65
static constexpr bool enableMolecularDiffusion()
The one-phase model has no molecular diffusion.
Definition: freeflow/navierstokes/model.hh:81
static constexpr int numEq()
Definition: freeflow/navierstokes/model.hh:69
static constexpr auto turbulenceModel()
return the type of turbulence model used
Definition: freeflow/navierstokes/model.hh:90
static constexpr bool usesTurbulenceModel()
The model does not include a turbulence model.
Definition: freeflow/navierstokes/model.hh:87
static constexpr bool enableEnergyBalance()
The model is isothermal.
Definition: freeflow/navierstokes/model.hh:84
static constexpr int numFluidPhases()
The number of phases is 1.
Definition: freeflow/navierstokes/model.hh:72
Traits class for the volume variables of the Navier-Stokes model.
Definition: freeflow/navierstokes/model.hh:111
PV PrimaryVariables
Definition: freeflow/navierstokes/model.hh:112
MT ModelTraits
Definition: freeflow/navierstokes/model.hh:115
FST FluidState
Definition: freeflow/navierstokes/model.hh:114
FSY FluidSystem
Definition: freeflow/navierstokes/model.hh:113
The type tag for the single-phase, isothermal Navier-Stokes model.
Definition: freeflow/navierstokes/model.hh:131
std::tuple< FreeFlow > InheritsFrom
Definition: freeflow/navierstokes/model.hh:131
The type tag for the corresponding non-isothermal model.
Definition: freeflow/navierstokes/model.hh:134
std::tuple< NavierStokes > InheritsFrom
Definition: freeflow/navierstokes/model.hh:134