version 3.8.0
Loading...
Searching...
No Matches

Single-phase Navier-Stokes flow. More...

Description

A single-phase, isothermal Navier-Stokes model.

This model implements a single-phase, isothermal Navier-Stokes model, solving the momentum balance equation

\[ \frac{\partial (\varrho \textbf{v})}{\partial t} + \nabla \cdot (\varrho \textbf{v} \textbf{v}^{\text{T}}) = \nabla \cdot (\mu (\nabla \textbf{v} + \nabla \textbf{v}^{\text{T}})) - \nabla p + \varrho \textbf{g} - \textbf{f} \]

By setting the runtime parameter Problem.EnableInertiaTerms to false the Stokes equation can be solved. In this case the term

\[ \nabla \cdot (\varrho \textbf{v} \textbf{v}^{\text{T}}) \]

is neglected.

The mass balance equation

\[ \frac{\partial \varrho}{\partial t} + \nabla \cdot (\varrho \textbf{v}) - q = 0 \]

closes the system.

Files

file  boundarytypes.hh
 Class to specify the type of a boundary condition for the Navier-Stokes model.
 
file  fluxoveraxisalignedsurface.hh
 Class used to calculate fluxes over axis-aligned surfaces.
 
file  fluxvariables.hh
 The flux variables class for the Navier-Stokes model. This is a convenience alias for that actual, discretization-specific flux variables.
 
file  indices.hh
 The common indices for the isothermal Navier-Stokes model.
 
file  iofields.hh
 Adds I/O fields for the Navier-Stokes model.
 
file  localresidual.hh
 The local residual class for the Navier-Stokes model (balance equations). This is a convenience alias for the actual, discretization-specific local residual.
 
file  advectiveflux.hh
 Helper struct defining the advective fluxes of the single-phase flow Navier-Stokes mass model.
 
file  fluxvariables.hh
 The flux variables class for the single-phase flow Navier-Stokes model.
 
file  indices.hh
 The common indices for the isothermal Navier-Stokes model.
 
file  localresidual.hh
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization.
 
file  model.hh
 A single-phase, isothermal Navier-Stokes model.
 
file  volumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 
file  advectiveflux.hh
 Helper struct defining the advective fluxes of the single-phase flow multicomponent Navier-Stokes mass model.
 
file  fluxvariables.hh
 The flux variables class for the single-phase flow, multi-component Navier-Stokes model.
 
file  indices.hh
 The common indices for the isothermal Navier-Stokes model.
 
file  localresidual.hh
 Element-wise calculation of the Navier-Stokes residual for multicomponent single-phase flow.
 
file  model.hh
 A single-phase, isothermal Navier-Stokes model.
 
file  volumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 
file  problem.hh
 Navier-Stokes mass problem class.
 
file  model.hh
 A single-phase, isothermal Navier-Stokes model.
 
file  boundarytypes.hh
 Class to specify the type of a boundary condition for the Navier-Stokes model.
 
file  flux.hh
 The flux variables class for the Navier-Stokes model using the staggered grid discretization.
 
file  indices.hh
 The common indices for the isothermal Navier-Stokes model.
 
file  localresidual.hh
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization.
 
file  model.hh
 A single-phase, isothermal Navier-Stokes model.
 
file  volumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 
file  fluxhelper.hh
 Struct containing flux helper functions to be used in the momentum problem's Neumann function.
 
file  fluxvariables.hh
 The flux variables class for the Navier-Stokes model using the staggered grid discretization.
 
file  indices.hh
 The common indices for the isothermal Navier-Stokes model.
 
file  localresidual.hh
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization.
 
file  model.hh
 A single-phase, isothermal Navier-Stokes model.
 
file  problem.hh
 Navier-Stokes momentum problem class.
 
file  velocitygradients.hh
 Helper class for calculating the velocity gradients for the Navier-Stokes model using the staggered grid discretization.
 
file  velocityreconstruction.hh
 Helper class for reconstructing the velocity.
 
file  volumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 
file  scalarfluxhelper.hh
 Navier Stokes scalar boundary flux helper.
 
file  scalarfluxvariables.hh
 The flux variables class for the Navier-Stokes model using the staggered grid discretization.
 
file  scalarfluxvariablescachefiller.hh
 A helper class to fill the flux variables cache.
 
file  scalarvolumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 
file  fluxoversurface.hh
 Class used to calculate fluxes over surfaces. This only works for the staggered grid discretization.
 
file  fluxvariables.hh
 The flux variables class for the Navier-Stokes model using the staggered grid discretization.
 
file  localresidual.hh
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization.
 
file  problem.hh
 Navier-Stokes staggered problem base class.
 
file  staggeredupwindhelper.hh
 The upwinding variables class for the Navier-Stokes model using the staggered grid discretization.
 
file  velocitygradients.hh
 Helper class for calculating the velocity gradients for the Navier-Stokes model using the staggered grid discretization.
 
file  velocityoutput.hh
 Velocity output for staggered free-flow models.
 
file  volumevariables.hh
 Volume variables for the single-phase Navier-Stokes model.
 

Classes

class  Dumux::NavierStokesBoundaryTypes< numEq >
 Class to specify the type of a boundary condition for the Navier-Stokes model. More...
 
class  Dumux::FluxOverAxisAlignedSurface< GridVariables, SolutionVector, LocalResidual >
 Class used to calculate fluxes over axis-aligned surfaces. More...
 
struct  Dumux::NavierStokesIndices< dimension >
 The common indices for the isothermal Navier-Stokes model. More...
 
class  Dumux::NavierStokesIOFields
 Adds I/O fields for the Navier-Stokes model. More...
 
struct  Dumux::AdvectiveFlux< NavierStokesMassOnePModelTraits, T >
 Helper struct defining the advective fluxes of the single-phase flow Navier-Stokes mass model. More...
 
class  Dumux::NavierStokesMassOnePFluxVariables< Problem, ModelTraits, FluxTs, ElementVolumeVariables, ElementFluxVariablesCache, UpwindScheme >
 The flux variables class for the single-phase flow Navier-Stokes model. More...
 
struct  Dumux::NavierStokesMassOnePIndices
 The common indices for the isothermal Navier-Stokes mass conservation model. More...
 
struct  Dumux::ImplementsAuxiliaryFluxNavierStokesMassOneP< Problem >
 Traits class to be specialized for problems to add auxiliary fluxes. More...
 
class  Dumux::NavierStokesMassOnePLocalResidual< TypeTag >
 Element-wise calculation of the Navier-Stokes residual for single-phase flow. More...
 
struct  Dumux::NavierStokesMassOnePModelTraits
 Traits for the single-phase flow Navier-Stokes mass model. More...
 
struct  Dumux::NavierStokesMassOnePVolumeVariablesTraits< PV, FSY, FST, MT >
 Traits class for the volume variables of the Navier-Stokes model. More...
 
class  Dumux::NavierStokesMassOnePVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 
struct  Dumux::AdvectiveFlux< NavierStokesMassOnePNCModelTraits< nComp, useM, repCompEqIdx > >
 Helper struct defining the advective fluxes of the single-phase flow multicomponent Navier-Stokes mass model. More...
 
class  Dumux::NavierStokesMassOnePNCFluxVariables< Problem, ModelTraits, FluxTs, ElementVolumeVariables, ElementFluxVariablesCache, UpwindScheme >
 The flux variables class for the single-phase flow, multi-component Navier-Stokes model. More...
 
class  Dumux::NavierStokesMassOnePNCLocalResidual< TypeTag >
 Element-wise calculation of the Navier-Stokes residual for multicomponent single-phase flow. More...
 
struct  Dumux::NavierStokesMassOnePNCModelTraits< nComp, useM, repCompEqIdx >
 Traits for the Navier-Stokes model. More...
 
struct  Dumux::NavierStokesMassOnePNCVolumeVariablesTraits< PV, FSY, FST, MT >
 Traits class for the volume variables of the Navier-Stokes model. More...
 
class  Dumux::NavierStokesMassOnePNCVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 
struct  Dumux::NavierStokesModelTraits< dimension >
 Traits for the Navier-Stokes model. More...
 
struct  Dumux::NavierStokesVolumeVariablesTraits< PV, FSY, FST, MT >
 Traits class for the volume variables of the Navier-Stokes model. More...
 
class  Dumux::NavierStokesMomentumBoundaryTypes< size >
 Class to specify the type of a boundary condition for the Navier-Stokes model. More...
 
class  Dumux::NavierStokesMomentumFluxContext< Problem, FVElementGeometry, ElementVolumeVariables, ElementFluxVariablesCache >
 Context for computing fluxes. More...
 
class  Dumux::NavierStokesMomentumFluxCVFE< GridGeometry, NumEqVector >
 The flux variables class for the Navier-Stokes model using control-volume finite element schemes. More...
 
struct  Dumux::NavierStokesMomentumCVFEIndices< dimension >
 The common indices for the isothermal Navier-Stokes model. More...
 
class  Dumux::NavierStokesMomentumCVFELocalResidual< TypeTag >
 Element-wise calculation of the Navier-Stokes residual for models using the CVFE discretizations. More...
 
struct  Dumux::NavierStokesMomentumCVFEModelTraits< dimension >
 Traits for the Navier-Stokes model. More...
 
struct  Dumux::NavierStokesMomentumCVFEVolumeVariablesTraits< PV, FSY, FST, MT >
 Traits class for the volume variables of the Navier-Stokes model. More...
 
class  Dumux::NavierStokesMomentumCVFEVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 
struct  Dumux::NavierStokesMomentumBoundaryFluxHelper
 Struct containing flux helper functions to be used in the momentum problem's Neumann function. More...
 
class  Dumux::NavierStokesMomentumFluxVariables< TypeTag >
 The flux variables class for the Navier-Stokes model using the staggered grid discretization. More...
 
struct  Dumux::NavierStokesMomentumIndices< dimension >
 The common indices for the isothermal Navier-Stokes model. More...
 
class  Dumux::NavierStokesMomentumResidual< TypeTag >
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization. More...
 
struct  Dumux::NavierStokesMomentumModelTraits< dimension >
 Traits for the Navier-Stokes model. More...
 
struct  Dumux::NavierStokesMomentumVolumeVariablesTraits< PV, FSY, FST, MT >
 Traits class for the volume variables of the Navier-Stokes model. More...
 
class  Dumux::StaggeredVelocityGradients< Scalar, GridGeometry, BoundaryTypes, Indices >
 Helper class for calculating the velocity gradients for the Navier-Stokes model using the staggered grid discretization. More...
 
struct  Dumux::StaggeredVelocityReconstruction
 Helper class for reconstructing the velocity. More...
 
class  Dumux::NavierStokesMomentumVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 
struct  Dumux::NavierStokesScalarBoundaryFluxHelper< AdvectiveFlux >
 Navier Stokes scalar boundary flux helper. More...
 
class  Dumux::NavierStokesScalarConservationModelFluxVariables< Problem, ModelTraits, FluxTypes, ElementVolumeVariables, ElementFluxVariablesCache, UpwindScheme >
 The flux variables base class for scalar quantities balanced in the Navier-Stokes model. More...
 
class  Dumux::NavierStokesScalarConservationModelVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 
class  Dumux::FluxOverSurface< GridVariables, SolutionVector, ModelTraits, LocalResidual >
 Class used to calculate fluxes over surfaces. This only works for the staggered grid discretization. More...
 
class  Dumux::NavierStokesFluxVariablesImpl< TypeTag, DiscretizationMethod >
 The flux variables class for the Navier-Stokes model using the staggered grid discretization. More...
 
class  Dumux::NavierStokesResidualImpl< TypeTag, DiscretizationMethod >
 Element-wise calculation of the Navier-Stokes residual for models using the staggered discretization. More...
 
class  Dumux::NavierStokesStaggeredProblem< TypeTag >
 Navier-Stokes staggered problem base class. More...
 
class  Dumux::StaggeredUpwindHelper< TypeTag, upwindSchemeOrder >
 The upwinding variables class for the Navier-Stokes model using the staggered grid discretization. More...
 
class  Dumux::NavierStokesVelocityOutput< GridVariables >
 Velocity output for staggered free-flow models. More...
 
class  Dumux::NavierStokesVolumeVariables< Traits >
 Volume variables for the single-phase Navier-Stokes model. More...
 

Typedefs

template<class TypeTag >
using Dumux::NavierStokesFluxVariables = NavierStokesFluxVariablesImpl<TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod>
 The flux variables class for the Navier-Stokes model. This is a convenience alias for that actual, discretization-specific flux variables.
 
template<class TypeTag >
using Dumux::NavierStokesResidual = NavierStokesResidualImpl<TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod>
 The local residual class for the Navier-Stokes model (balance equations). This is a convenience alias for the actual, discretization-specific local residual.
 
template<class TypeTag >
using Dumux::NavierStokesMassProblem
 Navier-Stokes mass problem class.
 
template<class TypeTag >
using Dumux::NavierStokesMomentumProblem
 Navier-Stokes momentum problem class.
 
template<class Problem , class ModelTraits , bool diffusionIsSolDependent, bool heatConductionIsSolDependent>
using Dumux::FreeFlowScalarFluxVariablesCacheFiller = FreeFlowScalarFluxVariablesCacheFillerImplementation<Problem, ModelTraits, diffusionIsSolDependent, heatConductionIsSolDependent, typename ProblemTraits<Problem>::GridGeometry::DiscretizationMethod>
 The flux variables cache filler class for free flow.
 

Functions

template<class IOFields , class PrimaryVariables , class ModelTraits , class FluidSystem >
std::function< std::string(int, int)> Dumux::createCellCenterPVNameFunction (const std::string &paramGroup="")
 helper function to determine the names of cell-centered primary variables of a model with staggered grid discretization
 
template<class IOFields , class PrimaryVariables , class ModelTraits , class FluidSystem >
std::function< std::string(int, int)> Dumux::createFacePVNameFunction (const std::string &paramGroup="")
 helper function to determine the names of primary variables on the cell faces of a model with staggered grid discretization
 

Typedef Documentation

◆ FreeFlowScalarFluxVariablesCacheFiller

template<class Problem , class ModelTraits , bool diffusionIsSolDependent, bool heatConductionIsSolDependent>
using Dumux::FreeFlowScalarFluxVariablesCacheFiller = FreeFlowScalarFluxVariablesCacheFillerImplementation<Problem, ModelTraits, diffusionIsSolDependent, heatConductionIsSolDependent, typename ProblemTraits<Problem>::GridGeometry::DiscretizationMethod>

Helps filling the flux variables cache depending several policies

◆ NavierStokesFluxVariables

template<class TypeTag >
using Dumux::NavierStokesFluxVariables = NavierStokesFluxVariablesImpl<TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod>
Note
Not all specializations are currently implemented

◆ NavierStokesMassProblem

template<class TypeTag >
using Dumux::NavierStokesMassProblem
Initial value:
NavierStokesMassProblemImpl<
TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod
>

Inherit from this problem to implement Navier-Stokes mass problems

◆ NavierStokesMomentumProblem

template<class TypeTag >
using Dumux::NavierStokesMomentumProblem
Initial value:
NavierStokesMomentumProblemImpl<
TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod
>

Inherit from this problem to implement Navier-Stokes momentum problems

◆ NavierStokesResidual

template<class TypeTag >
using Dumux::NavierStokesResidual = NavierStokesResidualImpl<TypeTag, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod>
Note
Not all specializations are currently implemented

Function Documentation

◆ createCellCenterPVNameFunction()

template<class IOFields , class PrimaryVariables , class ModelTraits , class FluidSystem >
std::function< std::string(int, int)> Dumux::createCellCenterPVNameFunction ( const std::string & paramGroup = "")
Note
use this as input for the load solution function

◆ createFacePVNameFunction()

template<class IOFields , class PrimaryVariables , class ModelTraits , class FluidSystem >
std::function< std::string(int, int)> Dumux::createFacePVNameFunction ( const std::string & paramGroup = "")
Note
use this as input for the load solution function