3.3.0
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
porousmediumflow/2p/sequential/transport/cellcentered/properties.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3/*****************************************************************************
4 * See the file COPYING for full copying permissions. *
5 * *
6 * This program is free software: you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation, either version 3 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program. If not, see <http://www.gnu.org/licenses/>. *
18 *****************************************************************************/
24#ifndef DUMUX_FV_TRANSPORT_PROPERTIES_2P_HH
25#define DUMUX_FV_TRANSPORT_PROPERTIES_2P_HH
26
29
30namespace Dumux {
31namespace Properties {
32// \{
33
35// Type tags tags
37
39// Create new type tags
40namespace TTag {
41struct FVTransportTwoP { using InheritsFrom = std::tuple<TransportTwoP>; };
42} // end namespace TTag
43
45// Property tags
49template<class TypeTag, class MyTypeTag>
51} // end namespace Properties
52} // end namespace Dumux
53
54#include "evalcflfluxdefault.hh"
58
59namespace Dumux {
60namespace Properties {
62template<class TypeTag>
63struct EvalCflFluxFunction<TypeTag, TTag::FVTransportTwoP> { using type = EvalCflFluxDefault<TypeTag>; };
65template<class TypeTag>
66struct CapillaryFlux<TypeTag, TTag::FVTransportTwoP> { using type = DiffusivePart<TypeTag>; };
68template<class TypeTag>
69struct GravityFlux<TypeTag, TTag::FVTransportTwoP> { using type = ConvectivePart<TypeTag>; };
71template<class TypeTag>
72struct PrecomputedConstRels<TypeTag, TTag:: FVTransportTwoP> { static constexpr bool value = true; };
74template<class TypeTag>
75struct TransportModel<TypeTag, TTag::FVTransportTwoP> { using type = FVSaturation2P<TypeTag>; };
76} // end namespace Properties
77} // end namespace Dumux
78
79#endif
Base class for defining a convective part of the saturation transport equation.
Base class for defining a diffusive part of the saturation transport equation.
Fluxes to evaluate a CFL-Condition.
Finite volume discretization of a saturation transport equation.
Definition: adapt.hh:29
a tag to mark properties as undefined
Definition: propertysystem.hh:36
Base class for defining a convective part of the saturation transport equation.
Definition: convectivepart.hh:39
Base class for defining the diffusive part of the saturation transport equation.
Definition: diffusivepart.hh:38
Default implementation of cfl-fluxes to evaluate a CFL-Condition.
Definition: evalcflfluxdefault.hh:43
Definition: porousmediumflow/2p/sequential/transport/cellcentered/properties.hh:41
std::tuple< TransportTwoP > InheritsFrom
Definition: porousmediumflow/2p/sequential/transport/cellcentered/properties.hh:41
Definition: porousmediumflow/2p/sequential/transport/cellcentered/properties.hh:50
The finite volume discretization of a saturation transport equation.
Definition: saturation.hh:78
The type of the diffusive part in a transport equation.
Definition: porousmediumflow/2p/sequential/transport/properties.hh:48
The type of a convective part in a transport equation.
Definition: porousmediumflow/2p/sequential/transport/properties.hh:50
The type of the discretization of a transport model.
Definition: porousmediumflow/sequential/properties.hh:77
Type of the evaluation of the CFL-condition.
Definition: transportproperties.hh:55
Declares all properties used in Dumux.
Specifies the properties for immiscible 2p transport.