3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Member Functions | List of all members
Dumux::FlatPlateNCTestProblem< TypeTag > Class Template Reference

Test problem for the one-phase model. More...

#include <test/freeflow/ransnc/problem.hh>

Inheritance diagram for Dumux::FlatPlateNCTestProblem< TypeTag >:
Inheritance graph

Description

template<class TypeTag>
class Dumux::FlatPlateNCTestProblem< TypeTag >

Test problem for the one-phase model.

Dry air is entering from the left side and flows above a 1-D a flat plate. In the middle of the inlet, water vapor is injected, which spreads by turbulent diffusion. For the non-isothermal model the bottom has a constant temperature which is \( \unit[30]{K} \) higher than the initial and inlet temperature.

Public Member Functions

 FlatPlateNCTestProblem (std::shared_ptr< const GridGeometry > gridGeometry)
 
Problem parameters
bool isOnWallAtPos (const GlobalPosition &globalPos) const
 
bool shouldWriteRestartFile () const
 
Scalar temperature () const
 Returns the temperature within the domain in [K]. More...
 
NumEqVector sourceAtPos (const GlobalPosition &globalPos) const
 Returns the sources within the domain. More...
 

Boundary conditions

BoundaryTypes boundaryTypesAtPos (const GlobalPosition &globalPos) const
 Specifies which kind of boundary condition should be used for which equation on a given boundary control volume. More...
 
template<class Element , class FVElementGeometry , class SubControlVolume >
bool isDirichletCell (const Element &element, const FVElementGeometry &fvGeometry, const SubControlVolume &scv, int pvIdx) const
 Returns whether a fixed Dirichlet value shall be used at a given cell. More...
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolumeFace &scvf) const
 Evaluate the boundary conditions for a dirichlet values at the boundary. More...
 
template<bool enable = (ModelTraits::turbulenceModel() == TurbulenceModel::komega || ModelTraits::turbulenceModel() == TurbulenceModel::kepsilon), std::enable_if_t<!enable, int > = 0>
PrimaryVariables dirichlet (const Element &element, const SubControlVolume &scv) const
 Evaluate the boundary conditions for fixed values at cell centers. More...
 
template<bool enable = (ModelTraits::turbulenceModel() == TurbulenceModel::komega || ModelTraits::turbulenceModel() == TurbulenceModel::kepsilon), std::enable_if_t< enable, int > = 0>
PrimaryVariables dirichlet (const Element &element, const SubControlVolume &scv) const
 Evaluate the boundary conditions for fixed values at cell centers. More...
 
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial value for a control volume. More...
 
void setTimeLoop (TimeLoopPtr timeLoop)
 
Scalar time () const
 

Constructor & Destructor Documentation

◆ FlatPlateNCTestProblem()

template<class TypeTag >
Dumux::FlatPlateNCTestProblem< TypeTag >::FlatPlateNCTestProblem ( std::shared_ptr< const GridGeometry >  gridGeometry)
inline

Member Function Documentation

◆ boundaryTypesAtPos()

template<class TypeTag >
BoundaryTypes Dumux::FlatPlateNCTestProblem< TypeTag >::boundaryTypesAtPos ( const GlobalPosition &  globalPos) const
inline

Specifies which kind of boundary condition should be used for which equation on a given boundary control volume.

Parameters
globalPosThe position of the center of the finite volume

◆ dirichlet() [1/3]

template<class TypeTag >
template<bool enable = (ModelTraits::turbulenceModel() == TurbulenceModel::komega || ModelTraits::turbulenceModel() == TurbulenceModel::kepsilon), std::enable_if_t<!enable, int > = 0>
PrimaryVariables Dumux::FlatPlateNCTestProblem< TypeTag >::dirichlet ( const Element &  element,
const SubControlVolume &  scv 
) const
inline

Evaluate the boundary conditions for fixed values at cell centers.

Parameters
elementThe finite element
scvthe sub control volume
Note
used for cell-centered discretization schemes

◆ dirichlet() [2/3]

template<class TypeTag >
template<bool enable = (ModelTraits::turbulenceModel() == TurbulenceModel::komega || ModelTraits::turbulenceModel() == TurbulenceModel::kepsilon), std::enable_if_t< enable, int > = 0>
PrimaryVariables Dumux::FlatPlateNCTestProblem< TypeTag >::dirichlet ( const Element &  element,
const SubControlVolume &  scv 
) const
inline

Evaluate the boundary conditions for fixed values at cell centers.

Parameters
elementThe finite element
scvthe sub control volume
Note
used for cell-centered discretization schemes

◆ dirichlet() [3/3]

template<class TypeTag >
PrimaryVariables Dumux::FlatPlateNCTestProblem< TypeTag >::dirichlet ( const Element &  element,
const SubControlVolumeFace &  scvf 
) const
inline

Evaluate the boundary conditions for a dirichlet values at the boundary.

Parameters
elementThe finite element
scvfthe sub control volume face
Note
used for cell-centered discretization schemes

◆ initialAtPos()

template<class TypeTag >
PrimaryVariables Dumux::FlatPlateNCTestProblem< TypeTag >::initialAtPos ( const GlobalPosition &  globalPos) const
inline

Evaluates the initial value for a control volume.

Parameters
globalPosThe global position

◆ isDirichletCell()

template<class TypeTag >
template<class Element , class FVElementGeometry , class SubControlVolume >
bool Dumux::FlatPlateNCTestProblem< TypeTag >::isDirichletCell ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const SubControlVolume &  scv,
int  pvIdx 
) const
inline

Returns whether a fixed Dirichlet value shall be used at a given cell.

Parameters
elementThe finite element
fvGeometryThe finite-volume geometry
scvThe sub control volume
pvIdxThe primary variable index in the solution vector

◆ isOnWallAtPos()

template<class TypeTag >
bool Dumux::FlatPlateNCTestProblem< TypeTag >::isOnWallAtPos ( const GlobalPosition &  globalPos) const
inline

◆ setTimeLoop()

template<class TypeTag >
void Dumux::FlatPlateNCTestProblem< TypeTag >::setTimeLoop ( TimeLoopPtr  timeLoop)
inline

◆ shouldWriteRestartFile()

template<class TypeTag >
bool Dumux::FlatPlateNCTestProblem< TypeTag >::shouldWriteRestartFile ( ) const
inline

◆ sourceAtPos()

template<class TypeTag >
NumEqVector Dumux::FlatPlateNCTestProblem< TypeTag >::sourceAtPos ( const GlobalPosition &  globalPos) const
inline

Returns the sources within the domain.

Parameters
globalPosThe global position

◆ temperature()

template<class TypeTag >
Scalar Dumux::FlatPlateNCTestProblem< TypeTag >::temperature ( ) const
inline

Returns the temperature within the domain in [K].

The isothermal problem assumes a temperature of 10 degrees Celsius.

◆ time()

template<class TypeTag >
Scalar Dumux::FlatPlateNCTestProblem< TypeTag >::time ( ) const
inline

The documentation for this class was generated from the following file: