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

A test for internal Dirichlet constraints. More...

#include <test/porousmediumflow/1p/implicit/internaldirichlet/problem.hh>

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

Description

template<class TypeTag>
class Dumux::OnePTestProblemInternalDirichlet< TypeTag >

A test for internal Dirichlet constraints.

Public Types

using SpatialParams = GetPropType< TypeTag, Properties::SpatialParams >
 Export spatial parameter type. More...
 

Public Member Functions

 OnePTestProblemInternalDirichlet (std::shared_ptr< const GridGeometry > gridGeometry)
 
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...
 
NeumannValues neumannAtPos (const GlobalPosition &globalPos) const
 Evaluate the boundary conditions for a neumann boundary segment. More...
 
bool hasInternalDirichletConstraint (const Element &element, const SubControlVolume &scv) const
 Tag a degree of freedom to carry internal Dirichlet constraints. If true is returned for a dof, the equation for this dof is replaced by the constraint that its primary variable values must match the user-defined values obtained from the function internalDirichlet(), which must be defined in the problem. More...
 
PrimaryVariables internalDirichlet (const Element &element, const SubControlVolume &scv) const
 Define the values of internal Dirichlet constraints for a degree of freedom. More...
 
const std::string & name () const
 The problem name. More...
 
const std::string & name () const
 The problem name. More...
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolumeFace &scvf) const
 Specifies which kind of boundary condition should be used for which equation on a given boundary segment. More...
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolumeFace &scvf) const
 Specifies which kind of boundary condition should be used for which equation on a given boundary segment. More...
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolumeFace &scvf) const
 Specifies which kind of boundary condition should be used for which equation on a given boundary control volume. More...
 
NumEqVector neumann (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVarsCache &elemFluxVarsCache, const SubControlVolumeFace &scvf) const
 Evaluates the boundary conditions for a Neumann boundary segment. More...
 
NumEqVector neumann (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVarsCache &elemFluxVarsCache, const SubControlVolumeFace &scvf) const
 Evaluates the boundary conditions for a Neumann boundary segment. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) for an isothermal problem. More...
 
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial value for a control volume. More...
 
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial value for a control volume. More...
 
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial conditions. More...
 
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial conditions. More...
 
void addPointSources (std::vector< PointSource > &pointSources) const
 Applies a vector of point sources which are possibly solution dependent. More...
 
void addPointSources (std::vector< PointSource > &pointSources) const
 Applies a vector of point sources. The point sources are possibly solution dependent. More...
 
NumEqVector source (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 Evaluates the source term within a sub-control volume. More...
 
Scalar extrusionFactorAtPos (const GlobalPosition &globalPos) const
 Returns how much the domain is extruded at a given position. More...
 
const GlobalPosition velocity () const
 Returns the velocity. More...
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolumeFace &scvf) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
void setName (const std::string &newName)
 Set the problem name. More...
 
Problem parameters
std::string name () const
 The problem name. More...
 
Scalar temperature () const
 Returns the temperature within the domain in [K]. More...
 
Boundary conditions
PrimaryVariables dirichletAtPos (const GlobalPosition &globalPos) const
 Evaluates the boundary conditions for a Dirichlet control volume. More...
 
Volume terms
PrimaryVariables initialAtPos (const GlobalPosition &globalPos) const
 Evaluates the initial value for a control volume. More...
 

Static Public Member Functions

static constexpr bool enableInternalDirichletConstraints ()
 Enable internal Dirichlet constraints. More...
 
static PrimaryVariables exact (const GlobalPosition &globalPos)
 Returns the exact solution at a position. More...
 

Boundary conditions and sources defining the problem

BoundaryTypes boundaryTypes (const Element &element, const SubControlVolume &scv) const
 Specifies which kind of boundary condition should be used for which equation on a given boundary segment. More...
 
NumEqVector neumann (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVariablesCache &elemFluxVarsCache, const SubControlVolumeFace &scvf) const
 Evaluate the boundary conditions for a neumann boundary segment. More...
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolume &scv) const
 Evaluate the boundary conditions for a dirichlet control volume. More...
 
NumEqVector sourceAtPos (const GlobalPosition &globalPos) const
 Evaluate the source term for all phases within a given sub-control-volume. More...
 
void pointSource (PointSource &source, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 Evaluate the point sources (added by addPointSources) for all phases within a given sub-control-volume. More...
 
void pointSourceAtPos (PointSource &pointSource, const GlobalPosition &globalPos) const
 Evaluate the point sources (added by addPointSources) for all phases within a given sub-control-volume. More...
 
template<class MatrixBlock >
void addSourceDerivatives (MatrixBlock &block, const Element &element, const FVElementGeometry &fvGeometry, const VolumeVariables &volVars, const SubControlVolume &scv) const
 Add source term derivative to the Jacobian. More...
 
NumEqVector scvPointSources (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 Adds contribution of point sources for a specific sub control volume to the values. Caution: Only overload this method in the implementation if you know what you are doing. More...
 
void computePointSourceMap ()
 Compute the point source map, i.e. which scvs have point source contributions. More...
 
const PointSourceMap & pointSourceMap () const
 Get the point source map. It stores the point sources per scv. More...
 
void applyInitialSolution (SolutionVector &sol) const
 Applies the initial solution for all degrees of freedom of the grid. More...
 
template<class Entity >
PrimaryVariables initial (const Entity &entity) const
 Evaluate the initial value for an element (for cell-centered models) or vertex (for box / vertex-centered models) More...
 
template<class ElementSolution >
Scalar extrusionFactor (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return how much the domain is extruded at a given sub-control volume. More...
 
const GridGeometry & fvGridGeometry () const
 The finite volume grid geometry. More...
 
const GridGeometry & gridGeometry () const
 The finite volume grid geometry. More...
 
const std::string & paramGroup () const
 The parameter group in which to retrieve runtime parameters. More...
 
Implementation & asImp_ ()
 Returns the implementation of the problem (i.e. static polymorphism) More...
 
const Implementation & asImp_ () const
 Returns the implementation of the problem (i.e. static polymorphism) More...
 

Physical parameters for porous media problems

Scalar temperatureAtPos (const GlobalPosition &globalPos) const
 Returns the temperature \(\mathrm{[K]}\) at a given global position. More...
 
const GravityVector & gravityAtPos (const GlobalPosition &pos) const
 Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\). More...
 
const GravityVector & gravity () const
 Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\). More...
 
SpatialParamsspatialParams ()
 Returns the spatial parameters object. More...
 
const SpatialParamsspatialParams () const
 Returns the spatial parameters object. More...
 
GravityVector gravity_
 The gravity acceleration vector. More...
 
std::shared_ptr< SpatialParamsspatialParams_
 

Member Typedef Documentation

◆ SpatialParams

template<class TypeTag >
using Dumux::PorousMediumFlowProblem< TypeTag >::SpatialParams = GetPropType<TypeTag, Properties::SpatialParams>
inherited

Export spatial parameter type.

Constructor & Destructor Documentation

◆ OnePTestProblemInternalDirichlet()

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

Member Function Documentation

◆ addPointSources() [1/2]

void Dumux::OnePTestProblem< TypeTag, tag >::addPointSources ( std::vector< PointSource > &  pointSources) const
inlineinherited

Applies a vector of point sources which are possibly solution dependent.

Parameters
pointSourcesA vector of PointSource s that contain source values for all phases and space positions.

For this method, the values method of the point source has to return the absolute rate values in units \( [ \textnormal{unit of conserved quantity} / s ] \). Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / s ] \).

◆ addPointSources() [2/2]

void Dumux::OnePTestProblem< TypeTag, tag >::addPointSources ( std::vector< PointSource > &  pointSources) const
inlineinherited

Applies a vector of point sources. The point sources are possibly solution dependent.

Parameters
pointSourcesA vector of PointSource s that contain source values for all phases and space positions.

For this method, the values method of the point source has to return the absolute rate values in units \( [ \textnormal{unit of conserved quantity} / s ] \). Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / s ] \).

◆ addSourceDerivatives()

template<class TypeTag >
template<class MatrixBlock >
void Dumux::FVProblem< TypeTag >::addSourceDerivatives ( MatrixBlock &  block,
const Element &  element,
const FVElementGeometry &  fvGeometry,
const VolumeVariables &  volVars,
const SubControlVolume &  scv 
) const
inlineinherited

Add source term derivative to the Jacobian.

Note
Only needed in case of analytic differentiation and solution dependent sources

◆ applyInitialSolution()

template<class TypeTag >
void Dumux::FVProblem< TypeTag >::applyInitialSolution ( SolutionVector &  sol) const
inlineinherited

Applies the initial solution for all degrees of freedom of the grid.

Parameters
solthe initial solution vector

◆ asImp_() [1/2]

template<class TypeTag >
Implementation & Dumux::FVProblem< TypeTag >::asImp_ ( )
inlineprotectedinherited

Returns the implementation of the problem (i.e. static polymorphism)

◆ asImp_() [2/2]

template<class TypeTag >
const Implementation & Dumux::FVProblem< TypeTag >::asImp_ ( ) const
inlineprotectedinherited

Returns the implementation of the problem (i.e. static polymorphism)

◆ boundaryTypes() [1/4]

template<class TypeTag >
BoundaryTypes Dumux::FVProblem< TypeTag >::boundaryTypes ( const Element &  element,
const SubControlVolume &  scv 
) const
inlineinherited

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

Parameters
elementThe finite element
scvThe sub control volume

◆ boundaryTypes() [2/4]

BoundaryTypes Dumux::OnePTestProblem< TypeTag, tag >::boundaryTypes ( const Element &  element,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

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

Parameters
elementThe finite element
scvfThe sub control volume face

◆ boundaryTypes() [3/4]

BoundaryTypes Dumux::OnePTestProblem< TypeTag, tag >::boundaryTypes ( const Element &  element,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

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

Parameters
elementThe finite element
scvfThe sub control volume face

◆ boundaryTypes() [4/4]

BoundaryTypes Dumux::OnePTestProblem< TypeTag, tag >::boundaryTypes ( const Element &  element,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

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

Parameters
elementThe finite element
scvfThe sub-control volume face

◆ boundaryTypesAtPos()

template<class TypeTag >
BoundaryTypes Dumux::OnePTestProblemInternalDirichlet< 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

◆ computePointSourceMap()

template<class TypeTag >
void Dumux::FVProblem< TypeTag >::computePointSourceMap ( )
inlineinherited

Compute the point source map, i.e. which scvs have point source contributions.

Note
Call this on the problem before assembly if you want to enable point sources set via the addPointSources member function.

◆ dirichlet() [1/2]

template<class TypeTag >
PrimaryVariables Dumux::FVProblem< TypeTag >::dirichlet ( const Element &  element,
const SubControlVolume &  scv 
) const
inlineinherited

Evaluate the boundary conditions for a dirichlet control volume.

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

The method returns the boundary types information.

◆ dirichlet() [2/2]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichlet ( const Element &  element,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
elementThe finite element
scvfThe sub-control volume face

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [1/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [2/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [3/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [4/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [5/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume for which it is to be set.

◆ dirichletAtPos() [6/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [7/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ dirichletAtPos() [8/8]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::dirichletAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the boundary conditions for a Dirichlet control volume.

Parameters
globalPosThe center of the finite volume which ought to be set.

For this method, the values parameter stores primary variables.

◆ enableInternalDirichletConstraints()

template<class TypeTag >
static constexpr bool Dumux::OnePTestProblemInternalDirichlet< TypeTag >::enableInternalDirichletConstraints ( )
inlinestaticconstexpr

Enable internal Dirichlet constraints.

◆ exact()

static PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::exact ( const GlobalPosition &  globalPos)
inlinestaticinherited

Returns the exact solution at a position.

Parameters
globalPosThe center of the finite volume for which it is to be set.

◆ extrusionFactor()

template<class TypeTag >
template<class ElementSolution >
Scalar Dumux::FVProblem< TypeTag >::extrusionFactor ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Return how much the domain is extruded at a given sub-control volume.

This means the factor by which a lower-dimensional (1D or 2D) entity needs to be expanded to get a full dimensional cell. The default is 1.0 which means that 1D problems are actually thought as pipes with a cross section of 1 m^2 and 2D problems are assumed to extend 1 m to the back.

◆ extrusionFactorAtPos()

Scalar Dumux::OnePTestProblem< TypeTag, tag >::extrusionFactorAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Returns how much the domain is extruded at a given position.

This means the factor by which a lower-dimensional entity needs to be expanded to get a full-dimensional cell.

◆ fvGridGeometry()

template<class TypeTag >
const GridGeometry & Dumux::FVProblem< TypeTag >::fvGridGeometry ( ) const
inlineinherited

The finite volume grid geometry.

◆ gravity()

template<class TypeTag >
const GravityVector & Dumux::PorousMediumFlowProblem< TypeTag >::gravity ( ) const
inlineinherited

Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\).

This method is used for problems where the gravitational acceleration does not depend on the spatial position. The default behaviour is that if the ProblemEnableGravity property is true, \(\boldsymbol{g} = ( 0,\dots,\ -9.81)^T \) holds, else \(\boldsymbol{g} = ( 0,\dots, 0)^T \).

◆ gravityAtPos()

template<class TypeTag >
const GravityVector & Dumux::PorousMediumFlowProblem< TypeTag >::gravityAtPos ( const GlobalPosition &  pos) const
inlineinherited

Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\).

This is discretization independent interface. By default it just calls gravity().

◆ gridGeometry()

template<class TypeTag >
const GridGeometry & Dumux::FVProblem< TypeTag >::gridGeometry ( ) const
inlineinherited

The finite volume grid geometry.

◆ hasInternalDirichletConstraint()

template<class TypeTag >
bool Dumux::OnePTestProblemInternalDirichlet< TypeTag >::hasInternalDirichletConstraint ( const Element &  element,
const SubControlVolume &  scv 
) const
inline

Tag a degree of freedom to carry internal Dirichlet constraints. If true is returned for a dof, the equation for this dof is replaced by the constraint that its primary variable values must match the user-defined values obtained from the function internalDirichlet(), which must be defined in the problem.

Parameters
elementThe finite element
scvThe sub-control volume

◆ initial()

template<class TypeTag >
template<class Entity >
PrimaryVariables Dumux::FVProblem< TypeTag >::initial ( const Entity &  entity) const
inlineinherited

Evaluate the initial value for an element (for cell-centered models) or vertex (for box / vertex-centered models)

Parameters
entityThe dof entity (element or vertex)

◆ initialAtPos() [1/5]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::initialAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the initial value for a control volume.

Parameters
globalPosThe global position

◆ initialAtPos() [2/5]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::initialAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the initial value for a control volume.

Parameters
globalPosThe global position

◆ initialAtPos() [3/5]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::initialAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the initial conditions.

Parameters
globalPosThe center of the finite volume which ought to be set.

◆ initialAtPos() [4/5]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::initialAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the initial conditions.

Parameters
globalPosThe center of the finite volume which ought to be set.

◆ initialAtPos() [5/5]

PrimaryVariables Dumux::OnePTestProblem< TypeTag, tag >::initialAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluates the initial value for a control volume.

For this method, the priVars parameter stores primary variables.

◆ internalDirichlet()

template<class TypeTag >
PrimaryVariables Dumux::OnePTestProblemInternalDirichlet< TypeTag >::internalDirichlet ( const Element &  element,
const SubControlVolume &  scv 
) const
inline

Define the values of internal Dirichlet constraints for a degree of freedom.

Parameters
elementThe finite element
scvThe sub-control volume

◆ name() [1/3]

const std::string & Dumux::OnePTestProblem< TypeTag, tag >::name ( ) const
inlineinherited

The problem name.

◆ name() [2/3]

const std::string & Dumux::OnePTestProblem< TypeTag, tag >::name ( ) const
inlineinherited

The problem name.

◆ name() [3/3]

std::string Dumux::OnePTestProblem< TypeTag, tag >::name ( ) const
inlineinherited

The problem name.

This is used as a prefix for files generated by the simulation.

◆ neumann() [1/3]

template<class TypeTag >
NumEqVector Dumux::FVProblem< TypeTag >::neumann ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const ElementFluxVariablesCache &  elemFluxVarsCache,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

Evaluate the boundary conditions for a neumann boundary segment.

This is the method for the case where the Neumann condition is potentially solution dependent

Parameters
elementThe finite element
fvGeometryThe finite-volume geometry
elemVolVarsAll volume variables for the element
elemFluxVarsCacheFlux variables caches for all faces in stencil
scvfThe sub control volume face

Negative values mean influx. E.g. for the mass balance that would be the mass flux in \( [ kg / (m^2 \cdot s)] \).

◆ neumann() [2/3]

NumEqVector Dumux::OnePTestProblem< TypeTag, tag >::neumann ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const ElementFluxVarsCache &  elemFluxVarsCache,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

Evaluates the boundary conditions for a Neumann boundary segment.

This is the method for the case where the Neumann condition is potentially solution dependent.

Parameters
elementThe finite element
fvGeometryThe finite-volume geometry
elemVolVarsAll volume variables for the element
elemFluxVarsCacheFlux variables caches for all faces in stencil
scvfThe sub control volume face

Negative values mean influx. E.g. for the mass balance that would the mass flux in \( [ kg / (m^2 \cdot s)] \).

◆ neumann() [3/3]

NumEqVector Dumux::OnePTestProblem< TypeTag, tag >::neumann ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const ElementFluxVarsCache &  elemFluxVarsCache,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

Evaluates the boundary conditions for a Neumann boundary segment.

This is the method for the case where the Neumann condition is potentially solution dependent.

Parameters
elementThe finite element
fvGeometryThe finite-volume geometry
elemVolVarsAll volume variables for the element
elemFluxVarsCacheFlux variables caches for all faces in stencil
scvfThe sub control volume face

Negative values mean influx. E.g. for the mass balance that would the mass flux in \( [ kg / (m^2 \cdot s)] \).

◆ neumannAtPos()

template<class TypeTag >
NeumannValues Dumux::OnePTestProblemInternalDirichlet< TypeTag >::neumannAtPos ( const GlobalPosition &  globalPos) const
inline

Evaluate the boundary conditions for a neumann boundary segment.

Parameters
globalPosThe position of the boundary face's integration point in global coordinates

Negative values mean influx. E.g. for the mass balance that would be the mass flux in \( [ kg / (m^2 \cdot s)] \).

◆ paramGroup()

template<class TypeTag >
const std::string & Dumux::FVProblem< TypeTag >::paramGroup ( ) const
inlineinherited

The parameter group in which to retrieve runtime parameters.

◆ pointSource()

template<class TypeTag >
void Dumux::FVProblem< TypeTag >::pointSource ( PointSource &  source,
const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolume &  scv 
) const
inlineinherited

Evaluate the point sources (added by addPointSources) for all phases within a given sub-control-volume.

This is the method for the case where the point source is solution dependent

Parameters
sourceA single point source
elementThe finite element
fvGeometryThe finite-volume geometry
elemVolVarsAll volume variables for the element
scvThe sub control volume

For this method, the values() method of the point sources returns the absolute conserved quantity rate generated or annihilate in units \( [ \textnormal{unit of conserved quantity} / s ] \). Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / s ] \).

◆ pointSourceAtPos()

template<class TypeTag >
void Dumux::FVProblem< TypeTag >::pointSourceAtPos ( PointSource &  pointSource,
const GlobalPosition &  globalPos 
) const
inlineinherited

Evaluate the point sources (added by addPointSources) for all phases within a given sub-control-volume.

This is the method for the case where the point source is space dependent

Parameters
pointSourceA single point source
globalPosThe point source position in global coordinates

For this method, the values() method of the point sources returns the absolute conserved quantity rate generated or annihilate in units \( [ \textnormal{unit of conserved quantity} / s ] \). Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / s ] \).

◆ pointSourceMap()

template<class TypeTag >
const PointSourceMap & Dumux::FVProblem< TypeTag >::pointSourceMap ( ) const
inlineinherited

Get the point source map. It stores the point sources per scv.

◆ scvPointSources()

template<class TypeTag >
NumEqVector Dumux::FVProblem< TypeTag >::scvPointSources ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolume &  scv 
) const
inlineinherited

Adds contribution of point sources for a specific sub control volume to the values. Caution: Only overload this method in the implementation if you know what you are doing.

◆ setName()

template<class TypeTag >
void Dumux::FVProblem< TypeTag >::setName ( const std::string &  newName)
inlineinherited

Set the problem name.

This static method sets the simulation name, which should be called before the application problem is declared! If not, the default name "sim" will be used.

Parameters
newNameThe problem's name

◆ source()

NumEqVector Dumux::OnePTestProblem< TypeTag, tag >::source ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolume &  scv 
) const
inlineinherited

Evaluates the source term within a sub-control volume.

Parameters
elementThe finite element
fvGeometryThe element finite-volume geometry
elemVolVarsThe element volume variables
scvThe sub-control volume for which the source term is evaluated

◆ sourceAtPos()

template<class TypeTag >
NumEqVector Dumux::FVProblem< TypeTag >::sourceAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Evaluate the source term for all phases within a given sub-control-volume.

Parameters
globalPosThe position of the center of the finite volume for which the source term ought to be specified in global coordinates

For this method, the values parameter stores the conserved quantity rate generated or annihilate per volume unit. Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / (m^3 \cdot s)] \).

As a default, i.e. if the user's problem does not overload any source method return 0.0 (no source terms)

◆ spatialParams() [1/2]

template<class TypeTag >
SpatialParams & Dumux::PorousMediumFlowProblem< TypeTag >::spatialParams ( )
inlineinherited

Returns the spatial parameters object.

◆ spatialParams() [2/2]

template<class TypeTag >
const SpatialParams & Dumux::PorousMediumFlowProblem< TypeTag >::spatialParams ( ) const
inlineinherited

Returns the spatial parameters object.

◆ temperature() [1/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [2/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [3/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [4/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [5/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

◆ temperature() [6/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [7/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature within the domain in [K].

This problem assumes a temperature of 10 degrees Celsius.

◆ temperature() [8/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperature() [9/9]

Scalar Dumux::OnePTestProblem< TypeTag, tag >::temperature ( ) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) for an isothermal problem.

This is not specific to the discretization. By default it just throws an exception so it must be overloaded by the problem if no energy equation is used.

◆ temperatureAtPos()

template<class TypeTag >
Scalar Dumux::PorousMediumFlowProblem< TypeTag >::temperatureAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Returns the temperature \(\mathrm{[K]}\) at a given global position.

This is not specific to the discretization. By default it just calls temperature().

Parameters
globalPosThe position in global coordinates where the temperature should be specified.

◆ velocity()

const GlobalPosition Dumux::OnePTestProblem< TypeTag, tag >::velocity ( ) const
inlineinherited

Returns the velocity.

The velocity is given for the case of a linear pressure solution with constant permeablity and without gravity.

Member Data Documentation

◆ gravity_

template<class TypeTag >
GravityVector Dumux::PorousMediumFlowProblem< TypeTag >::gravity_
protectedinherited

The gravity acceleration vector.

◆ spatialParams_

template<class TypeTag >
std::shared_ptr<SpatialParams> Dumux::PorousMediumFlowProblem< TypeTag >::spatialParams_
protectedinherited

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