|
file | flux/darcyslaw.hh |
| Advective fluxes according to Darcy's law.
|
|
file | darcyslaw_fwd.hh |
| Darcy's law specialized for different discretization schemes This file contains the data which is required to calculate volume and mass fluxes of fluid phases over a face of a finite volume by means of the Darcy approximation. Specializations are provided for the different discretization methods.
|
|
file | dispersionflux.hh |
| Dispersion flux for different discretization schemes.
|
|
file | dispersionflux_fwd.hh |
| Dispersion flux for different discretization schemes.
|
|
file | effectivestresslaw.hh |
| Effective stress are used to describe the actual stresses acting on the grains/matrix in the soil. Furthermore, they determine the behaviour of the soil. Most of the geomechanical laws are written in terms of effective stresses, such as the poroelastic model in dumux/geomechanics/poroelastic/model.hh.
|
|
file | effectivestresslaw_fwd.hh |
| The effective stress law specialized for different discretization schemes. This computes the stress tensor and surface forces resulting from poro-mechanical deformation.
|
|
file | facetensoraverage.hh |
| A free function to average a Tensor at an interface.
|
|
file | fickiandiffusioncoefficients.hh |
| Container storing the diffusion coefficients required by Fick's law. Uses the minimal possible container size and provides unified access.
|
|
file | flux/fickslaw.hh |
| Diffusive mass flux according to Fick's law.
|
|
file | fickslaw_fwd.hh |
| Fick's law specialized for different discretization schemes. This file contains the data which is required to calculate diffusive mass fluxes due to molecular diffusion with Fick's law.
|
|
file | fluxvariablesbase.hh |
| Base class for the flux variables living on a sub control volume face.
|
|
file | fluxvariablescaching.hh |
| Classes related to flux variables caching.
|
|
file | forchheimerslaw.hh |
| Advective fluxes according to Forchheims's law (extends Darcy's law by an nonlinear drag)
|
|
file | forchheimerslaw_fwd.hh |
| Forchheimer's law specialized for different discretization schemes This file contains the data which is required to calculate volume and mass fluxes of fluid phases over a face of a finite volume by means of the Forchheimer approximation. Specializations are provided for the different discretization methods.
|
|
file | forchheimervelocity.hh |
| Forchheimer's law This file contains the calculation of the Forchheimer velocity for a given Darcy velocity.
|
|
file | flux/fourierslaw.hh |
| Diffusive heat flux according to Fourier's law.
|
|
file | fourierslaw_fwd.hh |
| Fourier's law specialized for different discretization schemes This file contains the data which is required to calculate diffusive mass fluxes due to molecular diffusion with Fourier's law.
|
|
file | fourierslawnonequilibrium.hh |
| Diffusive heat flux according to non-equilibrium Fourier's law.
|
|
file | fourierslawnonequilibrium_fwd.hh |
| This file contains the data which is required to calculate diffusive mass fluxes due to molecular diffusion with Fourier's law.
|
|
file | hookeslaw.hh |
| Stress-Strain relationship according to Hooke's law.
|
|
file | hookeslaw_fwd.hh |
| Hooke's law specialized for different discretization schemes. This computes the stress tensor and surface forces resulting from mechanical deformation.
|
|
file | maxwellstefandiffusioncoefficients.hh |
| Container storing the diffusion coefficients required by the Maxwell- Stefan diffusion law. Uses the minimal possible container size and provides unified access.
|
|
file | maxwellstefanslaw.hh |
| Diffusive mass fluxes according to Maxwell-Stefan's law.
|
|
file | maxwellstefanslaw_fwd.hh |
| This file contains the data which is required to calculate diffusive mass fluxes due to molecular diffusion with Maxwell-Stefan's law.
|
|
file | referencesystemformulation.hh |
| The reference frameworks and formulations available for splitting total fluxes into a advective and diffusive part.
|
|
file | shallowwaterflux.hh |
|
file | shallowwaterviscousflux.hh |
|
file | stationaryvelocityfield.hh |
| Constant velocity advective law for transport models. This file contains the data which is required to calculate volume and mass fluxes of fluid phases over a face of a finite volume. A stationary velocity field is given by the user for use in tracer models.
|
|
file | flux/traits.hh |
| Defines the flux traits.
|
|
file | flux/upwindscheme.hh |
| Base class for the upwind scheme.
|
|
|
class | Dumux::EffectiveStressLaw< StressType, GridGeometry, DiscretizationMethod > |
| This computes the stress tensor and surface forces resulting from poro-mechanical deformation. More...
|
|
class | Dumux::FickianDiffusionCoefficients< Scalar, numPhases, numComponents > |
| Container storing the diffusion coefficients required by Fick's law. Uses the minimal possible container size and provides unified access. More...
|
|
class | Dumux::FluxVariablesBase< Problem, FVElementGeometry, ElementVolumeVariables, ElementFluxVariablesCache > |
| Base class for the flux variables living on a sub control volume face. More...
|
|
struct | Dumux::FluxVariablesCaching::EmptyAdvectionCache |
| Empty caches to use in a constitutive flux law/process, e.g. Darcy's law. More...
|
|
class | Dumux::ForchheimerVelocity< Scalar, GridGeometry, FluxVariables > |
| Forchheimer's law For a detailed description see dumux/flow/forchheimerslaw.hh. More...
|
|
class | Dumux::HookesLaw< Scalar, GridGeometry, DiscretizationMethod > |
| This computes the stress tensor and surface forces resulting from mechanical deformation. More...
|
|
class | Dumux::MaxwellStefanDiffusionCoefficients< Scalar, numPhases, numComponents > |
| Container storing the diffusion coefficients required by the Maxwell- Stefan diffusion law. Uses the minimal possible container size and provides unified access. More...
|
|
class | Dumux::ShallowWaterFlux< NumEqVector > |
| Prepare and compute the shallow water advective flux. More...
|
|
class | Dumux::ShallowWaterViscousFlux< NumEqVector, > |
| Compute the shallow water viscous momentum flux due to viscosity. More...
|
|
class | Dumux::StationaryVelocityField< Scalar > |
| Evaluates a user given velocity field. More...
|
|
struct | Dumux::HasStationaryVelocityField< AdvectionType > |
| Trait of an advection type stating whether it implements a stationary velocity field. More...
|
|
struct | Dumux::FluxTraits< FluxVariables > |
| Traits of a flux variables type. More...
|
|
|
template<class TypeTag > |
using | Dumux::DarcysLaw = DarcysLawImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
| Evaluates the normal component of the Darcy velocity on a (sub)control volume face. More...
|
|
template<class TypeTag , ReferenceSystemFormulation referenceSystem = ReferenceSystemFormulation::massAveraged> |
using | Dumux::DiffusiveDispersionFlux = DispersionFluxImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod, referenceSystem > |
| Evaluates the dispersive flux. More...
|
|
template<class TypeTag , ReferenceSystemFormulation referenceSystem = ReferenceSystemFormulation::massAveraged> |
using | Dumux::FicksLaw = FicksLawImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod, referenceSystem > |
| Evaluates the diffusive mass flux according to Fick's law. More...
|
|
template<class TypeTag > |
using | Dumux::ForchheimersLaw = ForchheimersLawImplementation< TypeTag, ForchheimerVelocity< GetPropType< TypeTag, Properties::Scalar >, GetPropType< TypeTag, Properties::GridGeometry >, GetPropType< TypeTag, Properties::FluxVariables > >, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
| Evaluates the normal component of the Forchheimer velocity on a (sub)control volume face. More...
|
|
template<class TypeTag > |
using | Dumux::FouriersLaw = FouriersLawImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
| Evaluates the heat conduction flux according to Fouriers's law. More...
|
|
template<class TypeTag > |
using | Dumux::FouriersLawNonEquilibrium = FouriersLawNonEquilibriumImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
| Evaluates the heat conduction flux according to Fouriers's law. More...
|
|
template<class TypeTag , ReferenceSystemFormulation referenceSystem = ReferenceSystemFormulation::massAveraged> |
using | Dumux::MaxwellStefansLaw = MaxwellStefansLawImplementation< TypeTag, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod, referenceSystem > |
| Evaluates the diffusive mass flux according to Maxwell Stefan's law. More...
|
|
template<class GridGeometry > |
using | Dumux::UpwindScheme = UpwindSchemeImpl< GridGeometry, typename GridGeometry::DiscretizationMethod > |
| The upwind scheme used for the advective fluxes. This depends on the chosen discretization method. More...
|
|
|
template<class VolumeVariables > |
VolumeVariables::PrimaryVariables::value_type | Dumux::massOrMolarDensity (const VolumeVariables &volVars, ReferenceSystemFormulation referenceSys, const int phaseIdx) |
| evaluates the density to be used in Fick's law based on the reference system More...
|
|
template<class VolumeVariables > |
VolumeVariables::PrimaryVariables::value_type | Dumux::massOrMoleFraction (const VolumeVariables &volVars, ReferenceSystemFormulation referenceSys, const int phaseIdx, const int compIdx) |
| returns the mass or mole fraction to be used in Fick's law based on the reference system More...
|
|
template<class Problem , class FVElementGeometry , class ElementVolumeVariables > |
static NumEqVector | Dumux::ShallowWaterFlux< NumEqVector >::flux (const Problem &problem, const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const typename FVElementGeometry::SubControlVolumeFace &scvf) |
| Prepares and compute the shallow water advective flux. More...
|
|
template<class Problem , class FVElementGeometry , class ElementVolumeVariables > |
static NumEqVector | Dumux::ShallowWaterViscousFlux< NumEqVector, >::flux (const Problem &problem, const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const typename FVElementGeometry::SubControlVolumeFace &scvf) |
| Compute the viscous momentum flux contribution from the interface shear stress. More...
|
|
template<class
NumEqVector , typename std::enable_if_t< NumEqVector::size()==3, int > = 0>
template<class Problem , class FVElementGeometry , class ElementVolumeVariables >
static NumEqVector Dumux::ShallowWaterViscousFlux< NumEqVector, >::flux |
( |
const Problem & |
problem, |
|
|
const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity & |
element, |
|
|
const FVElementGeometry & |
fvGeometry, |
|
|
const ElementVolumeVariables & |
elemVolVars, |
|
|
const typename FVElementGeometry::SubControlVolumeFace & |
scvf |
|
) |
| |
|
inlinestatic |
The vertical (Elder-like) contribution to the turbulent viscosity scales with water depth
\[ h \]
and shear velocity
\[ u_{*} \]
:
\[ \nu_t^v = c^v \frac{\kappa}{6} u_{*} h \]
The horizontal (Smagorinsky-like) contribution to the turbulent viscosity scales with the water depth (squared) and the magnitude of the stress (rate-of-strain) tensor:
\[ \nu_t^h = (c^h h)^2 \sqrt{ 2\left(\frac{\partial u}{\partial x}\right)^2 + \left(\frac{\partial u}{\partial y} + \frac{\partial v}{\partial x}\right)^2 + 2\left(\frac{\partial v}{\partial y}\right)^2 } \]
However, based on the velocity vectors in the direct neighbours of the volume face, it is not possible to compute all components of the stress tensor. Only the gradients of u and v in the direction of the vector between the cell centres is available. To avoid the reconstruction of the full velocity gradient tensor based on a larger stencil, the horizontal contribution to the eddy viscosity (in the mixing-length model) is computed using only the velocity gradients normal to the face:
\[ \frac{\partial u}{\partial n} , \frac{\partial v}{\partial n} \]
In other words, the present approximation of the horizontal contribution to the turbulent viscosity reduces to:
\[ \nu_t^h = (c^h h)^2 \sqrt{ 2\left(\frac{\partial u}{\partial n}\right)^2 + 2\left(\frac{\partial v}{\partial n}\right)^2 } \]
It should be noted that this simplified approach is formally inconsistent and will result in a turbulent viscosity that is dependent on the grid (orientation).