3.5-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Classes | Namespaces
porenetwork/1p/model.hh File Reference

A one-phase-flow, isothermal pore-network model using the fully implicit scheme. More...

#include <dumux/common/properties.hh>
#include <dumux/flux/porenetwork/advection.hh>
#include <dumux/porenetwork/properties.hh>
#include <dumux/porenetwork/1p/spatialparams.hh>
#include <dumux/porousmediumflow/immiscible/localresidual.hh>
#include <dumux/porousmediumflow/nonisothermal/model.hh>
#include <dumux/porousmediumflow/nonisothermal/iofields.hh>
#include <dumux/porousmediumflow/1p/model.hh>
#include <dumux/material/fluidmatrixinteractions/porenetwork/throat/transmissibility1p.hh>
#include "iofields.hh"
#include "volumevariables.hh"
#include "fluxvariablescache.hh"

Go to the source code of this file.

Description

A one-phase-flow, isothermal pore-network model using the fully implicit scheme.

A mass balance equation is formulated for each pore body \(i\):

\[ V_i \frac{\partial (\varrho_{i})}{\partial t} + \sum_j (\varrho Q)_{ij} = (V q)_i ~. \]

\(V_i\) is the pore body volume, and the advective mass flow \((\varrho Q)_{ij}\) through throat \(ij\) can be based on the fluid phase density \(\varrho\) either of the upstream pore body \(i\) or \(j\) (upwinding) or on the respective averaged value. \(q_i\) is a mass sink or source term defined on pore body \(i\).

Per default, the volume flow rate \(Q_{ij}\) follows a linear Hagen-Poiseuille-type law (PoreNetworkModel::CreepingFlow) which is only valid for \(Re < 1\):

\[ Q_{ij} = g_{ij} (p_{i} - p_{j} + \Psi) ~. \]

\(g_{ij}\) is a suitable throat conductance value (see e.g. PoreNetwork::TransmissibilityPatzekSilin) while \(p_i\) and \(p_j\) are averaged pore body pressures.

The (optional) influence of gravity is given by

\[ \Psi = \varrho \mathbf{g} (\mathbf{x_i} - \mathbf{x_j}) ~, \]

where \(\mathbf{x_i} - \mathbf{x_j}\) is the distance vector between the centers of pore bodies \(i\) and \(j\) and \(\mathbf{g}\) is the gravitational acceleration.

Classes

struct  Dumux::Properties::TTag::PNMOneP
 
struct  Dumux::Properties::TTag::PNMOnePNI
 The type tags for the corresponding non-isothermal problems. More...
 
struct  Dumux::Properties::VolumeVariables< TypeTag, TTag::PNMOneP >
 Set the volume variables property. More...
 
struct  Dumux::Properties::SpatialParams< TypeTag, TTag::PNMOneP >
 
struct  Dumux::Properties::FluxVariablesCache< TypeTag, TTag::PoreNetworkModel >
 The flux variables cache. More...
 
struct  Dumux::Properties::IOFields< TypeTag, TTag::PNMOneP >
 Default I/O fields specific to this model. More...
 
struct  Dumux::Properties::AdvectionType< TypeTag, TTag::PNMOneP >
 The advection type. More...
 
struct  Dumux::Properties::VolumeVariables< TypeTag, TTag::PNMOnePNI >
 Set the volume variables property. More...
 
struct  Dumux::Properties::IOFields< TypeTag, TTag::PNMOnePNI >
 Add temperature to the output. More...
 
struct  Dumux::Properties::ModelTraits< TypeTag, TTag::PNMOnePNI >
 The model traits of the non-isothermal model. More...
 
struct  Dumux::Properties::ThermalConductivityModel< TypeTag, TTag::PNMOnePNI >
 Use the average for effective conductivities. More...
 

Namespaces

namespace  Dumux
 
namespace  Dumux::Properties
 
namespace  Dumux::Properties::TTag
 Type tag for numeric models.
 
Include dependency graph for porenetwork/1p/model.hh: