3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
multidomain/facet/box/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 *****************************************************************************/
29#ifndef DUMUX_FACETCOUPLING_BOX_PROPERTIES_HH
30#define DUMUX_FACETCOUPLING_BOX_PROPERTIES_HH
31
32#include <dune/common/deprecated.hh>
33
36
44
46
47namespace Dumux {
48
49namespace Properties {
50
53// Create new type tags
54namespace TTag {
55struct BoxFacetCouplingModel { using InheritsFrom = std::tuple<BoxModel>; };
56} // end namespace TTag
57
59template<class TypeTag>
60struct BaseLocalResidual<TypeTag, TTag::BoxFacetCouplingModel> { using type = BoxFacetCouplingLocalResidual<TypeTag>; };
61
63template<class TypeTag>
64struct AdvectionType<TypeTag, TTag::BoxFacetCouplingModel>
65{
68};
69
71template<class TypeTag>
72struct MolecularDiffusionType<TypeTag, TTag::BoxFacetCouplingModel>
73{
75};
76
78template<class TypeTag>
79struct HeatConductionType<TypeTag, TTag::BoxFacetCouplingModel>
80{
82};
83
85template<class TypeTag>
86struct FluxVariables<TypeTag, TTag::BoxFacetCouplingModel>
87{
90};
91
93template<class TypeTag>
94struct ElementBoundaryTypes<TypeTag, TTag::BoxFacetCouplingModel>
96
98template<class TypeTag>
99struct GridGeometry<TypeTag, TTag::BoxFacetCouplingModel>
100{
101private:
102 static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridGeometryCache>();
103 DUNE_NO_DEPRECATED_BEGIN
105 DUNE_NO_DEPRECATED_END
107public:
109};
110
111} // namespace Properties
112} // namespace Dumux
113
114#endif
Defines a type tag and some properties for models using the box scheme.
Definition: adapt.hh:29
typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType
get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(....
Definition: propertysystem.hh:149
The type of the base class of the local residual (specific to a discretization scheme)
Definition: common/properties.hh:78
Stores the boundary types on an element.
Definition: common/properties.hh:110
Definition: common/properties.hh:113
Container storing the different types of flux variables.
Definition: common/properties.hh:124
The type for the calculation the advective fluxes.
Definition: common/properties.hh:152
The type for the calculation of the molecular diffusion fluxes.
Definition: common/properties.hh:156
The type for the calculation of the heat conduction fluxes.
Definition: common/properties.hh:160
Darcy's law for the box scheme in the context of coupled models where coupling occurs across the face...
Definition: multidomain/facet/box/darcyslaw.hh:50
This class stores an array of BoundaryTypes objects on an element for the box scheme with coupling oc...
Definition: multidomain/facet/box/elementboundarytypes.hh:43
Ficks's law for the box scheme in the context of coupled models where coupling occurs across the face...
Definition: multidomain/facet/box/fickslaw.hh:52
Fourier's law for the box scheme in the context of coupled models where coupling occurs across the fa...
Definition: multidomain/facet/box/fourierslaw.hh:53
Base class for the finite volume geometry vector for box schemes in the context of coupled models whe...
Definition: multidomain/facet/box/fvgridgeometry.hh:84
The element-wise residual for the box scheme.
Definition: multidomain/facet/box/localresidual.hh:43
Definition: multidomain/facet/box/properties.hh:55
std::tuple< BoxModel > InheritsFrom
Definition: multidomain/facet/box/properties.hh:55
The upwind scheme used for the advective fluxes. This is a modified scheme for models involving coupl...
Definition: multidomain/facet/box/upwindscheme.hh:41
The porous medium flux variables class that computes advective / convective, molecular diffusive and ...
Definition: porousmediumflow/fluxvariables.hh:53
Declares all properties used in Dumux.
Boundary types gathered on an element for the box scheme with coupling occurring across the element f...
Base class for the finite volume grid geometry for box models in the context of models considering co...
Modified upwind scheme for models using the box scheme with coupling across element facets.
Base class for the flux variables in porous medium models.
Calculates the element-wise residual for the box scheme with coupling to a lower-dimensional domain o...