version 3.9-dev
porousmediumflow/2p/model.hh File Reference

Adaption of the fully implicit scheme to the two-phase flow model. More...

Go to the source code of this file.

Description

This model implements two-phase flow of two immiscible fluids \(\alpha \in \{ w, n \}\) using a standard multi-phase Darcy approach as the equation for the conservation of momentum. For details on Darcy's law see dumux/flux/darcyslaw.hh.

By inserting Darcy's law into the equations for the conservation of the phase mass, one gets

\[ \frac{\partial (\phi \varrho_\alpha S_\alpha) }{\partial t} - \nabla \cdot \left\{ \varrho_\alpha \frac{k_{r\alpha}}{\mu_\alpha} \mathbf{K} \left(\nabla p_\alpha - \varrho_{\alpha} \mathbf{g} \right) \right\} - q_\alpha = 0, \]

where:

  • \( \phi \) is the porosity of the porous medium,
  • \( S_\alpha \) represents the saturation of phase \( \alpha \),
  • \( \varrho_\alpha \) is the mass density of phase \( \alpha \),
  • \( k_{r\alpha} \) is the relative permeability of phase \( \alpha \),
  • \( \mu_\alpha \) is the dynamic viscosity of phase \( \alpha \),
  • \( \mathbf{K} \) is the intrinsic permeability tensor,
  • \( p_\alpha \) is the pressure of phase \( \alpha \),
  • \( \mathbf{g} \) is the gravitational acceleration vector,
  • \( q_\alpha \) is a source or sink term.

By using constitutive relations for the capillary pressure \(p_c = p_n - p_w\) and relative permeability \(k_{r\alpha}\) and taking advantage of the fact that \(S_w + S_n = 1\), the number of unknowns can be reduced to two. Currently the model supports choosing either \(p_w\) and \(S_n\) or \(p_n\) and \(S_w\) as primary variables. The formulation which ought to be used can be specified by setting the Formulation property to either TwoPFormulation::pwsn or TwoPFormulation::pnsw. By default, the model uses \(p_w\) and \(S_n\).

Classes

struct  Dumux::TwoPModelTraits< formulation >
 Specifies a number properties of two-phase models. More...
 
struct  Dumux::TwoPVolumeVariablesTraits< PV, FSY, FST, SSY, SST, PT, MT, SR >
 Traits class for the two-phase model. More...
 
struct  Dumux::Properties::TTag::TwoP
 The type tag for the isothermal two-phase model. More...
 
struct  Dumux::Properties::TTag::TwoPNI
 The type tag for the non-isothermal two-phase model. More...
 
struct  Dumux::Properties::Formulation< TypeTag, TTag::TwoP >
 < Set the default formulation to pwsn More...
 
struct  Dumux::Properties::LocalResidual< TypeTag, TTag::TwoP >
 Use the immiscible local residual operator for the 2p model. More...
 
struct  Dumux::Properties::BaseModelTraits< TypeTag, TTag::TwoP >
 The base model traits class. More...
 
struct  Dumux::Properties::ModelTraits< TypeTag, TTag::TwoP >
 default the actually used traits to the base traits More...
 
struct  Dumux::Properties::IOFields< TypeTag, TTag::TwoP >
 Set the vtk output fields specific to the twop model. More...
 
struct  Dumux::Properties::VolumeVariables< TypeTag, TTag::TwoP >
 Set the volume variables property. More...
 
struct  Dumux::Properties::FluidState< TypeTag, TTag::TwoP >
 The two-phase model uses the immiscible fluid state. More...
 
struct  Dumux::Properties::ModelTraits< TypeTag, TTag::TwoPNI >
 The non-isothermal model traits class. More...
 
struct  Dumux::Properties::VolumeVariables< TypeTag, TTag::TwoPNI >
 Set the volume variables property. More...
 
struct  Dumux::Properties::IOFields< TypeTag, TTag::TwoPNI >
 Set the vtk output fields specific to the non-isothermal twop model. More...
 
struct  Dumux::Properties::ThermalConductivityModel< TypeTag, TTag::TwoPNI >
 Somerton is used as default model to compute the effective thermal heat conductivity. More...
 

Namespaces

namespace  Dumux
 
namespace  Dumux::Properties
 The energy balance equation for a porous solid.
 
namespace  Dumux::Properties::TTag
 Type tag for numeric models.
 
Include dependency graph for porousmediumflow/2p/model.hh: