3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
cctpfa.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 *****************************************************************************/
26#ifndef DUMUX_DISCRETIZATION_CC_TPFA_HH
27#define DUMUX_DISCRETIZATION_CC_TPFA_HH
28
31
33
36
43
44namespace Dumux {
45namespace Properties {
46
48// Create new type tags
49namespace TTag {
50struct CCTpfaModel { using InheritsFrom = std::tuple<FiniteVolumeModel>; };
51} // end namespace TTag
52
53// Dumux 3.1 changes the property `FVGridGeometry` to `GridGeometry`.
54// For ensuring backward compatibility on the user side, it is necessary to
55// stick to the old name for the specializations, see the discussion in MR 1647.
56// Use diagnostic pragmas to prevent the emission of a warning message.
57// TODO after 3.1: Rename to GridGeometry, remove the pragmas and this comment.
58#pragma GCC diagnostic push
59#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
61template<class TypeTag>
62struct FVGridGeometry<TypeTag, TTag::CCTpfaModel>
63{
64private:
65 static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridGeometryCache>();
67public:
69};
70#pragma GCC diagnostic pop
71
73template<class TypeTag>
74struct GridVolumeVariables<TypeTag, TTag::CCTpfaModel>
75{
76private:
77 static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridVolumeVariablesCache>();
80public:
82};
83
85template<class TypeTag>
86struct GridFluxVariablesCache<TypeTag, TTag::CCTpfaModel>
87{
88private:
89 static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridFluxVariablesCache>();
93public:
95};
96
98template<class TypeTag>
99struct ElementBoundaryTypes<TypeTag, TTag::CCTpfaModel> { using type = CCElementBoundaryTypes; };
100
102template<class TypeTag>
103struct BaseLocalResidual<TypeTag, TTag::CCTpfaModel> { using type = CCLocalResidual<TypeTag>; };
104} // namespace Properties
105} // namespace Dumux
106
107#endif
Calculates the element-wise residual for cell-centered discretization schemes.
Declares properties required for finite-volume models models.
The available discretization methods in Dumux.
Boundary flag to store e.g. in sub control volume faces.
make the local view function available whenever we use the grid geometry
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
Calculates the element-wise residual for the cell-centered discretization schemes.
Definition: cclocalresidual.hh:42
The type of the base class of the local residual (specific to a discretization scheme)
Definition: common/properties.hh:80
Stores the boundary types on an element.
Definition: common/properties.hh:112
The type of the global finite volume geometry.
Definition: common/properties.hh:125
The type for a global container for the volume variables.
Definition: common/properties.hh:176
The global vector of flux variable containers.
Definition: common/properties.hh:186
Definition: cctpfa.hh:50
std::tuple< FiniteVolumeModel > InheritsFrom
Definition: cctpfa.hh:50
Boundary types gathered on an element.
Definition: discretization/cellcentered/elementboundarytypes.hh:38
The finite volume geometry (scvs and scvfs) for cell-centered TPFA models on a grid view This builds ...
Definition: discretization/cellcentered/tpfa/fvgridgeometry.hh:79
Flux variable caches on a gridview.
Definition: cellcentered/tpfa/gridfluxvariablescache.hh:58
Base class for the grid volume variables.
Definition: cellcentered/tpfa/gridvolumevariables.hh:56
Flux variable caches on a gridview.
The grid volume variables class for cell centered tpfa models.
Sub control volumes for cell-centered discretization schemes.
Boundary types gathered on an element.
Declares all properties used in Dumux.
The sub control volume face.
The finite volume geometry (scvs and scvfs) for cell-centered TPFA models on a grid view This builds ...