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

A pseudo friction law with no bottom friction. More...

#include <dumux/material/fluidmatrixinteractions/frictionlaws/nofriction.hh>

Inheritance diagram for Dumux::FrictionLawNoFriction< VolumeVariables >:

Description

template<typename VolumeVariables>
class Dumux::FrictionLawNoFriction< VolumeVariables >

A pseudo friction law with no bottom friction.

Public Member Functions

 FrictionLawNoFriction ()=default
 Constructor. More...
 
Dune::FieldVector< Scalar, 2 > shearStress (const VolumeVariables &volVars) const final
 Compute the shear stress. More...
 
Scalar limitRoughH (const Scalar roughnessHeight, const Scalar waterDepth) const
 Limit the friction for small water depth. More...
 

Constructor & Destructor Documentation

◆ FrictionLawNoFriction()

template<typename VolumeVariables >
Dumux::FrictionLawNoFriction< VolumeVariables >::FrictionLawNoFriction ( )
default

Constructor.

Member Function Documentation

◆ limitRoughH()

template<typename VolumeVariables >
Scalar Dumux::FrictionLaw< VolumeVariables >::limitRoughH ( const Scalar  roughnessHeight,
const Scalar  waterDepth 
) const
inlineinherited

Limit the friction for small water depth.

We define a water depth minUpperH. If the water depth is smaller, we start to limit the friciton. So the friciton term get's not extreme large for small water depths.

----------------------— minUpperH --------—

---------------------—roughnessHeight ------------— /\ /\ roughness /grain\ ----------------------------—bottom ---------------— /////////////////////////////////////////////////

For the limiting the LET model is used, which is usually applied in the porous media flow to limit the permeability due to the saturation. It employs the three empirical paramaters L, E and T, which describe the limiting curve (mobility).

auto mobility = (mobility_max * pow(sw,L))/(pow(sw,L) + E * pow(1.0-sw,T));

For the limitation of the roughness height L = 0.0, T = 2.0 and E = 1.0 are choosen. Therefore the calculation of the mobility is simplified significantly.

Parameters
roughnessHeightroughness height of the representive structure (e.g. largest grain size).
waterDepthwater depth.

< maximal mobility

◆ shearStress()

template<typename VolumeVariables >
Dune::FieldVector< Scalar, 2 > Dumux::FrictionLawNoFriction< VolumeVariables >::shearStress ( const VolumeVariables &  volVars) const
inlinefinalvirtual

Compute the shear stress.

Parameters
volVarsVolume variables

Compute the shear stress due to friction. The shear stress is not a tensor as know from contiuums mechanics, but a force projected on an area. Therefore it is a vector with two entries. For this law without friction, the shearStress is zero.

Returns
shear stress [N/m^2]. First entry is the x-component, the second the y-component.

Implements Dumux::FrictionLaw< VolumeVariables >.


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