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

A relationship for the porosity of a porous medium under mechanical deformation. More...

#include <dumux/material/fluidmatrixinteractions/porositydeformation.hh>

Description

template<class Scalar>
class Dumux::PorosityDeformation< Scalar >

A relationship for the porosity of a porous medium under mechanical deformation.

Template Parameters
ScalarThe type used for scalar values

Static Public Member Functions

template<class FVGridGeom , class ElemSol >
static Scalar evaluatePorosity (const FVGridGeom &gridGeometry, const typename FVGridGeom::GridView::template Codim< 0 >::Entity &element, const typename FVGridGeom::GridView::template Codim< 0 >::Entity::Geometry::GlobalCoordinate &globalPos, const ElemSol &elemSol, Scalar refPoro, Scalar minPoro=0.0, Scalar maxPoro=1.0)
 Calculates the porosity at a position inside an element. More...
 
template<class FVGridGeom , class ElemSol >
static Scalar evaluatePorosity (const FVGridGeom &gridGeometry, const typename FVGridGeom::GridView::template Codim< 0 >::Entity &element, const typename FVGridGeom::SubControlVolume &scv, const ElemSol &elemSol, Scalar refPoro, Scalar minPoro=0.0)
 Calculates the porosity at a position inside an element. More...
 

Member Function Documentation

◆ evaluatePorosity() [1/2]

template<class Scalar >
template<class FVGridGeom , class ElemSol >
static Scalar Dumux::PorosityDeformation< Scalar >::evaluatePorosity ( const FVGridGeom &  gridGeometry,
const typename FVGridGeom::GridView::template Codim< 0 >::Entity &  element,
const typename FVGridGeom::GridView::template Codim< 0 >::Entity::Geometry::GlobalCoordinate &  globalPos,
const ElemSol &  elemSol,
Scalar  refPoro,
Scalar  minPoro = 0.0,
Scalar  maxPoro = 1.0 
)
inlinestatic

Calculates the porosity at a position inside an element.

Note
This assumes the primary variables to be organized such that the displacements in the different grid directions are stored in the first entries of the primary variable vector.
Parameters
gridGeometryThe finite volume grid geometry
elementThe finite element
elemSolThe element solution
globalPosThe global position (in the element)
refPoroThe solid matrix porosity without deformation
minPoroA minimum porosity value
maxPoroA maximum porosity value
Note
[25] ( https://doi.org/10.1016/S0920-4105(03)00047-0 ) provide a derivation for \(\text{d} \phi = -(1 - \phi ) \text{d} \epsilon_v \). Here, \(\epsilon_v\) is equal to \(\text{div} \mathbf{u}\). By using an initial porosity \(\phi_0\) and assuming \( \epsilon_{v, 0} = 0 \), one obtains \(\phi = \frac{\phi_0 - \text{div} \mathbf{u}}{1 - \text{div} \mathbf{u}}\), which is the formulation for the rock mechanics sign convention. Here we are using the continuum mechanics sign convention, thus, the final formula reads: \(\phi = \frac{\phi_0 + \text{div} \mathbf{u}}{1 + \text{div} \mathbf{u}}\).

◆ evaluatePorosity() [2/2]

template<class Scalar >
template<class FVGridGeom , class ElemSol >
static Scalar Dumux::PorosityDeformation< Scalar >::evaluatePorosity ( const FVGridGeom &  gridGeometry,
const typename FVGridGeom::GridView::template Codim< 0 >::Entity &  element,
const typename FVGridGeom::SubControlVolume &  scv,
const ElemSol &  elemSol,
Scalar  refPoro,
Scalar  minPoro = 0.0 
)
inlinestatic

Calculates the porosity at a position inside an element.

Note
This assumes the primary variables to be organized such that the displacements in the different grid directions are stored in the first entries of the primary variable vector.
Parameters
gridGeometryThe finite volume grid geometry
elementThe finite element
elemSolThe element solution
scvThe sub-control volume
refPoroThe solid matrix porosity without deformation
minPoroA minimum porosity value

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