template<class ScalarType, class GridGeometry, class
ForchheimerVelocity>
class Dumux::BoxForchheimersLaw< ScalarType, GridGeometry, ForchheimerVelocity >
Forchheimer's law for box scheme.
Specialization of the BoxForchheimersLaw.
- Note
- Forchheimer's law is specialized for network and surface grids (i.e. if grid dim < dimWorld)
- Template Parameters
-
| Scalar | the scalar type for scalar physical quantities |
| GridGeometry | the grid geometry |
| ForchheimerVelocity | class for the calculation of the Forchheimer velocity |
| isNetwork | whether we are computing on a network grid embedded in a higher world dimension |
|
| template<class Problem, class ElementVolumeVariables, class ElementFluxVarsCache> |
| static Scalar | flux (const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf, int phaseIdx, const ElementFluxVarsCache &elemFluxVarsCache) |
| | Compute the advective flux of a phase across the given sub-control volume face using the Forchheimer equation.
|
| template<class Problem, class ElementVolumeVariables> |
| static Scalar | calculateTransmissibility (const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf) |
| template<class Problem, class ElementVolumeVariables> |
| static DimWorldMatrix | calculateHarmonicMeanSqrtPermeability (const Problem &problem, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf) |
| | Returns the harmonic mean of \(\sqrt{K_0}\) and \(\sqrt{K_1}\).
|
template<class Problem, class ElementVolumeVariables, class ElementFluxVarsCache>
| Scalar Dumux::BoxForchheimersLaw< ScalarType, GridGeometry, ForchheimerVelocity >::flux |
( |
const Problem & | problem, |
|
|
const Element & | element, |
|
|
const FVElementGeometry & | fvGeometry, |
|
|
const ElementVolumeVariables & | elemVolVars, |
|
|
const SubControlVolumeFace & | scvf, |
|
|
int | phaseIdx, |
|
|
const ElementFluxVarsCache & | elemFluxVarsCache ) |
|
inlinestatic |
Compute the advective flux of a phase across the given sub-control volume face using the Forchheimer equation.
The flux is given in N*m, and can be converted into a volume flux (m^3/s) or mass flux (kg/s) by applying an upwind scheme for the mobility or the product of density and mobility, respectively.