version 3.11-dev
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
common/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// SPDX-FileCopyrightText: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
16#ifndef DUMUX_PROPERTIES_HH
17#define DUMUX_PROPERTIES_HH
18
19// explicitly guard the include so that the property system
20// header doesn't need to be opened and checked all the time
21// this include is guaranteed to be here for users of this header
22#ifndef DUMUX_PROPERTY_SYSTEM_HH
24#endif // DUMUX_PROPERTY_SYSTEM_HH
25
27
29// Basic properties of numeric models:
33DUMUX_DEFINE_PROPERTY(PrimaryVariables)
34DUMUX_DEFINE_PROPERTY(ModelTraits)
35DUMUX_DEFINE_PROPERTY(BaseModelTraits)
38DUMUX_DEFINE_PROPERTY(PointSourceHelper)
39DUMUX_DEFINE_PROPERTY(IOFields)
40DUMUX_DEFINE_PROPERTY(BaseLocalResidual)
41DUMUX_DEFINE_PROPERTY(JacobianMatrix)
42DUMUX_DEFINE_PROPERTY(SolutionVector)
43
44
45DUMUX_DEFINE_PROPERTY(LocalResidual)
46
47
48// Basic properties regarding balance equations
50DUMUX_DEFINE_PROPERTY(UseMoles)
51DUMUX_DEFINE_PROPERTY(ReplaceCompEqIdx)
52DUMUX_DEFINE_PROPERTY(BalanceEqOpts)
53DUMUX_DEFINE_PROPERTY(EnableCompositionalDispersion)
54DUMUX_DEFINE_PROPERTY(EnableThermalDispersion)
55
56
57// Properties used by finite volume schemes:
59DUMUX_DEFINE_PROPERTY(ElementBoundaryTypes)
60DUMUX_DEFINE_PROPERTY(GridGeometry)
61DUMUX_DEFINE_PROPERTY(GridVariables)
62DUMUX_DEFINE_PROPERTY(VolumeVariables)
63DUMUX_DEFINE_PROPERTY(GridVolumeVariables)
64DUMUX_DEFINE_PROPERTY(FluxVariables)
65DUMUX_DEFINE_PROPERTY(FluxVariablesCache)
66DUMUX_DEFINE_PROPERTY(FluxVariablesCacheFiller)
67DUMUX_DEFINE_PROPERTY(GridFluxVariablesCache)
68
69DUMUX_DEFINE_PROPERTY(EnableGridGeometryCache)
70DUMUX_DEFINE_PROPERTY(EnableGridVolumeVariablesCache)
71DUMUX_DEFINE_PROPERTY(EnableGridFluxVariablesCache)
72
73
74// Additional properties used by the cell-centered mpfa schemes:
76DUMUX_DEFINE_PROPERTY(PrimaryInteractionVolume)
77DUMUX_DEFINE_PROPERTY(SecondaryInteractionVolume)
78DUMUX_DEFINE_PROPERTY(DualGridNodalIndexSet)
79
80
81// Properties used by models involving flow in porous media:
84DUMUX_DEFINE_PROPERTY(AdvectionType)
85DUMUX_DEFINE_PROPERTY(SolutionDependentAdvection)
86DUMUX_DEFINE_PROPERTY(MolecularDiffusionType)
87DUMUX_DEFINE_PROPERTY(DispersionFluxType)
88DUMUX_DEFINE_PROPERTY(SolutionDependentMolecularDiffusion)
89DUMUX_DEFINE_PROPERTY(HeatConductionType)
90DUMUX_DEFINE_PROPERTY(CompositionalDispersionModel)
91DUMUX_DEFINE_PROPERTY(ThermalDispersionModel)
92DUMUX_DEFINE_PROPERTY(SolutionDependentHeatConduction)
93
94DUMUX_DEFINE_PROPERTY(SpatialParams)
95DUMUX_DEFINE_PROPERTY(FluidSystem)
96DUMUX_DEFINE_PROPERTY(FluidState)
97DUMUX_DEFINE_PROPERTY(SolidSystem)
98DUMUX_DEFINE_PROPERTY(SolidState)
99DUMUX_DEFINE_PROPERTY(EffectiveDiffusivityModel)
100DUMUX_DEFINE_PROPERTY(ThermalConductivityModel)
102DUMUX_DEFINE_PROPERTY(Formulation)
103// TODO: is this useful? -> everything is a constraint solver just a different type
104DUMUX_DEFINE_PROPERTY(UseConstraintSolver)
105
106// When using the box method in a multi-phase context, an interface solver might be necessary
107DUMUX_DEFINE_PROPERTY(EnableBoxInterfaceSolver)
108
109
110// Additional properties used by the 2pnc and 2pncmin models:
112DUMUX_DEFINE_PROPERTY(Chemistry)
113DUMUX_DEFINE_PROPERTY(SetMoleFractionsForFirstPhase)
115// Additional properties used by the 3pwateroil model:
117DUMUX_DEFINE_PROPERTY(OnlyGasPhaseCanDisappear)
118
119
120// Properties used by geomechanical models:
122DUMUX_DEFINE_PROPERTY(StressType)
123
124
125// Properties used by the staggered-grid discretization method
127DUMUX_DEFINE_PROPERTY(NumEqCellCenter)
128DUMUX_DEFINE_PROPERTY(NumEqFace)
129DUMUX_DEFINE_PROPERTY(CellCenterSolutionVector)
130DUMUX_DEFINE_PROPERTY(FaceSolutionVector)
131DUMUX_DEFINE_PROPERTY(GridFaceVariables)
132DUMUX_DEFINE_PROPERTY(CellCenterPrimaryVariables)
133DUMUX_DEFINE_PROPERTY(FacePrimaryVariables)
135DUMUX_DEFINE_PROPERTY(StaggeredPrimaryVariables)
136DUMUX_DEFINE_PROPERTY(BaseEpsilon)
137DUMUX_DEFINE_PROPERTY(FaceVariables)
138DUMUX_DEFINE_PROPERTY(BoundaryValues)
140DUMUX_DEFINE_PROPERTY(EnableGridFaceVariablesCache)
141DUMUX_DEFINE_PROPERTY(UpwindSchemeOrder)
142
143
144// Properties used by the mpnc model
146DUMUX_DEFINE_PROPERTY(PressureFormulation)
147
148
149// Properties used by the nonequilibrium model
151DUMUX_DEFINE_PROPERTY(EquilibriumModelTraits)
152DUMUX_DEFINE_PROPERTY(EquilibriumLocalResidual)
153DUMUX_DEFINE_PROPERTY(EquilibriumIndices)
154DUMUX_DEFINE_PROPERTY(EquilibriumIOFields)
155DUMUX_DEFINE_PROPERTY(NumEqBalance)
156DUMUX_DEFINE_PROPERTY(EnableThermalNonEquilibrium)
157DUMUX_DEFINE_PROPERTY(EnableChemicalNonEquilibrium)
158DUMUX_DEFINE_PROPERTY(NumEnergyEqFluid)
159DUMUX_DEFINE_PROPERTY(NumEnergyEqSolid)
160
163
164
165// Properties used by free flow models
167
168DUMUX_DEFINE_PROPERTY(NormalizePressure)
169DUMUX_DEFINE_PROPERTY(ViscousFluxType)
170
171
172// Properties used by multidomain simulations
175
176
177// Basic properties of by old/deprecated sequential models:
178// Do not use this unless you are dealing with such old code
180DUMUX_DEFINE_PROPERTY(TimeManager)
181
182} // end namespace Dumux::Properties
183
184#endif
The interface of the coupling manager for multi domain problems.
Definition: multidomain/couplingmanager.hh:37
Definition: porousmediumflow/nonisothermal/localresidual.hh:25
defines an intersection mapper for mapping of global DOFs assigned to faces which also works for adap...
Definition: intersectionmapper.hh:200
A point source base class.
Definition: pointsource.hh:40
The global face variables class for staggered models.
Definition: facesolution.hh:28
Velocity output for implicit (porous media) models.
Definition: io/velocityoutput.hh:29
#define DUMUX_DEFINE_PROPERTY(Prop)
A preprocessor macro to define properties.
Definition: propertysystem.hh:349
The energy balance equation for a porous solid.
Definition: common/properties.hh:26
NusseltFormulation
A container for possible values of the property for selecting which Nusselt parametrization to choose...
Definition: dimensionlessnumbers.hh:31
SherwoodFormulation
A container for possible values of the property for selecting which Sherwood parametrization to choos...
Definition: dimensionlessnumbers.hh:40
The Dumux property system, traits with inheritance.