template<class TypeTag>
class Dumux::NavierStokesProblem< TypeTag >
Navier-Stokes problem base class.
This implements gravity (if desired) and a function returning the temperature. Includes a specialized method used only by the staggered grid discretization.
|
| NavierStokesProblem (std::shared_ptr< const GridGeometry > gridGeometry, const std::string ¶mGroup="") |
| The constructor. More...
|
|
Scalar | temperatureAtPos (const GlobalPosition &globalPos) const |
| Returns the temperature \(\mathrm{[K]}\) at a given global position. More...
|
|
Scalar | temperature () const |
| Returns the temperature within the domain. More...
|
|
const GravityVector & | gravity () const |
| Returns the acceleration due to gravity. More...
|
|
bool | enableInertiaTerms () const |
| Returns whether interia terms should be considered. More...
|
|
template<class SolutionVector , class G = GridGeometry> |
std::enable_if< G::discMethod==DiscretizationMethod::staggered, void >::type | applyInitialFaceSolution (SolutionVector &sol, const SubControlVolumeFace &scvf, const PrimaryVariables &initSol) const |
| Applys the initial face solution (velocities on the faces). Specialization for staggered grid discretization. More...
|
|
Scalar | pseudo3DWallFriction (const Scalar velocity, const Scalar viscosity, const Scalar height, const Scalar factor=8.0) const |
| An additional drag term can be included as source term for the momentum balance to mimic 3D flow behavior in 2D: More...
|
|
template<class ElementVolumeVariables , class ElementFaceVariables , class G = GridGeometry> |
std::enable_if< G::discMethod==DiscretizationMethod::staggered, Scalar >::type | pseudo3DWallFriction (const SubControlVolumeFace &scvf, const ElementVolumeVariables &elemVolVars, const ElementFaceVariables &elemFaceVars, const Scalar height, const Scalar factor=8.0) const |
| Convenience function for staggered grid implementation. More...
|
|
Scalar | permeability (const Element &element, const SubControlVolumeFace &scvf) const |
| Returns the intrinsic permeability of required as input parameter for the Beavers-Joseph-Saffman boundary condition. More...
|
|
Scalar | alphaBJ (const SubControlVolumeFace &scvf) const |
| Returns the alpha value required as input parameter for the Beavers-Joseph-Saffman boundary condition. More...
|
|
Scalar | betaBJ (const Element &element, const SubControlVolumeFace &scvf, const GlobalPosition &tangentialVector) const |
| Returns the beta value which is the alpha value divided by the square root of the (scalar-valued) interface permeability. More...
|
|
VelocityVector | porousMediumVelocity (const Element &element, const SubControlVolumeFace &scvf) const |
| Returns the velocity in the porous medium (which is 0 by default according to Saffmann). More...
|
|
const Scalar | beaversJosephVelocity (const Element &element, const SubControlVolume &scv, const SubControlVolumeFace &ownScvf, const SubControlVolumeFace &faceOnPorousBoundary, const Scalar velocitySelf, const Scalar tangentialVelocityGradient) const |
| Returns the slip velocity at a porous boundary based on the Beavers-Joseph(-Saffman) condition. More...
|
|
template<class TypeTag >
Scalar Dumux::NavierStokesProblem< TypeTag >::pseudo3DWallFriction |
( |
const Scalar |
velocity, |
|
|
const Scalar |
viscosity, |
|
|
const Scalar |
height, |
|
|
const Scalar |
factor = 8.0 |
|
) |
| const |
|
inline |
An additional drag term can be included as source term for the momentum balance to mimic 3D flow behavior in 2D:
\[ f_{drag} = -(8 \mu / h^2)v \]
Here, \(h\) corresponds to the extruded height that is bounded by the imaginary walls. See Flekkoy et al. (1995) [23]
A value of 8.0 is used as a default factor, corresponding to the velocity profile at the center plane of the virtual height (maximum velocity). Setting this value to 12.0 corresponds to an depth-averaged velocity (Venturoli and Boek, 2006) [69].