19#ifndef DUMUX_SEQUENTIAL_PROPERTIES_HH
20#define DUMUX_SEQUENTIAL_PROPERTIES_HH
78#include <dune/grid/common/mcmgmapper.hh>
79#include <dune/istl/bvector.hh>
89template<
class TypeTag>
104template<
class TypeTag>
118template<
class TypeTag>
125 using type =
typename Grid::LeafGridView;
129template<
class TypeTag>
136 dim = GridView::dimension
139 static const int value = 2*dim;
147#pragma GCC diagnostic push
148#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
150template<
class TypeTag>
153 struct MockFVGridGeometry
161 using type = MockFVGridGeometry;
163#pragma GCC diagnostic pop
166template<
class TypeTag>
178template<
class TypeTag>
183 using Grid =
typename GridView::Grid;
188 dim = GridView::dimension,
199 using VertexMapper = Dune::MultipleCodimMultipleGeomTypeMapper<GridView>;
215 using ComponentProperty = Dune::FieldVector<Dune::BlockVector<Dune::FieldVector<Scalar,1> >, numComponents>;
217 using PhaseProperty = Dune::FieldVector<Dune::BlockVector<Dune::FieldVector<Scalar,1> >, numPhases>;
219 using FluidProperty = Dune::FieldVector<Dune::BlockVector<Dune::FieldVector<Scalar,1> >, numPhases>;
221 using PhasePropertyElemFace = Dune::BlockVector<Dune::FieldVector<Dune::FieldVector<Scalar, numPhases>, maxIntersections> >;
223 using DimVecElemFace = Dune::BlockVector<Dune::FieldVector<Dune::FieldVector<Scalar, dim>, maxIntersections> >;
236template<
class TypeTag>
245template<
class TypeTag>
248 static void defaultParams(Dune::ParameterTree& params,
const std::string& group =
"")
250 params[
"GridAdapt.CoarsenTolerance"] =
"0.001";
251 params[
"GridAdapt.EnableInitializationIndicator"] =
"false";
252 params[
"GridAdapt.EnableMultiPointFluxApproximation"] =
"true";
253 params[
"GridAdapt.MaxLevel"] =
"1";
254 params[
"GridAdapt.MaxInteractionVolumes"] =
"4";
255 params[
"GridAdapt.MinLevel"] =
"0";
256 params[
"GridAdapt.RefineAtDirichletBC"] =
"false";
257 params[
"GridAdapt.RefineAtFluxBC"] =
"false";
258 params[
"GridAdapt.RefineAtSource"] =
"false";
259 params[
"GridAdapt.RefineTolerance"] =
"0.05";
261 params[
"Impet.CFLFactor"] =
"1.0";
262 params[
"Impet.EnableVolumeIntegral"] =
"true";
263 params[
"Impet.ErrorTermFactor"] =
"0.5";
264 params[
"Impet.ErrorTermLowerBound"] =
"0.1";
265 params[
"Impet.ErrorTermUpperBound"] =
"0.9";
266 params[
"Impet.PorosityThreshold"] =
"1e-6";
267 params[
"Impet.SubCFLFactor"] =
"1.0";
268 params[
"Impet.SwitchNormals"] =
"false";
270 params[
"MPFA.CalcVelocityInTransport"] =
"false";
272 params[
"TimeManager.SubTimestepVerbosity"] =
"0";
274 params[
"Vtk.OutputLevel"] =
"0";
Defines a type tags and some fundamental grid-related properties.
#define GET_PROP_VALUE(TypeTag, PropTagName)
Definition: propertysystemmacros.hh:282
#define GET_PROP(TypeTag, PropTagName)
Definition: propertysystemmacros.hh:281
#define GET_PROP_TYPE(TypeTag, PropTagName)
Definition: propertysystemmacros.hh:283
#define NEW_TYPE_TAG(...)
Definition: propertysystemmacros.hh:130
Definition of boundary condition types, extend if necessary.
Defines the default element and vertex mapper types.
Manages the handling of time dependent problems.
The available discretization methods in Dumux.
Class defining a start indicator for grid adaption.
Defines a type tag and some fundamental properties for linear solvers.
DiscretizationMethod
The available discretization methods in Dumux.
Definition: method.hh:37
#define NEW_PROP_TAG(PTagName)
Define a property tag.
Definition: propertysystemmacros.hh:159
make the local view function available whenever we use the grid geometry
Definition: adapt.hh:29
Property tag Variables
The type of the container of global variables.
Definition: porousmediumflow/sequential/properties.hh:71
Property tag Model
The type of the mode.
Definition: porousmediumflow/sequential/properties.hh:62
Property tag CellData
Defines data object to be stored.
Definition: porousmediumflow/sequential/properties.hh:72
SET_TYPE_PROP(FVPressureOneP, Velocity, FVVelocity1P< TypeTag >)
Set velocity reconstruction implementation standard cell centered finite volume schemes as default.
Property tag Velocity
The type velocity reconstruction.
Definition: porousmediumflow/sequential/properties.hh:67
Property tag TransportModel
The type of the discretization of a transport model.
Definition: porousmediumflow/sequential/properties.hh:66
Type tag FVPressureOneP INHERITS_FROM(PressureOneP))
The type tag for the one-phase problems using a standard finite volume model.
Property tag NumComponents
Number of components in the system.
Definition: porousmediumflow/sequential/properties.hh:70
Property tag Indices
Definition: porousmediumflow/sequential/properties.hh:59
Property tag NumEq
Number of equations in the system of PDEs.
Definition: porousmediumflow/sequential/properties.hh:68
Property tag NumPhases
Number of phases in the system.
Definition: porousmediumflow/sequential/properties.hh:69
Property tag PressureCoefficientMatrix
Gives maximum number of intersections of an element and neighboring elements.
Definition: porousmediumflow/sequential/properties.hh:74
Property tag MaxIntersections
Gives maximum number of intersections of an element and neighboring elements.
Definition: porousmediumflow/sequential/properties.hh:73
Property tag SolutionTypes
Definition: porousmediumflow/sequential/properties.hh:58
Property tag PressureModel
The type of the discretization of a pressure model.
Definition: porousmediumflow/sequential/properties.hh:65
Class to specify the type of a boundary.
Definition: common/boundarytypes.hh:38
Definition: defaultmappertraits.hh:35
Property which defines the group that is queried for parameters by default.
Definition: common/properties.hh:55
A vector of primary variables.
Definition: common/properties.hh:59
The type of the grid view according to the grid type.
Definition: common/properties.hh:63
Traits class encapsulating model specifications.
Definition: common/properties.hh:65
Type of the global jacobian matrix.
Definition: common/properties.hh:82
Vector containing all primary variable vector of the grid.
Definition: common/properties.hh:84
Stores the boundary types of a single degree of freedom.
Definition: common/properties.hh:86
The type of the global finite volume geometry.
Definition: common/properties.hh:125
Definition: common/properties.hh:358
Manages the handling of time dependent problems.
Definition: timemanager.hh:63
Base class holding the variables and discretized data for sequential models.
Definition: variableclass.hh:49
Standard Module for h-adaptive simulations.
Definition: gridadapt.hh:47
DummyTraits type
Definition: porousmediumflow/sequential/properties.hh:114
typename Grid::LeafGridView type
Definition: porousmediumflow/sequential/properties.hh:125
MockFVGridGeometry type
Definition: porousmediumflow/sequential/properties.hh:161
typename GET_PROP_TYPE(TypeTag, GridView) GridView
Definition: porousmediumflow/sequential/properties.hh:157
typename GET_PROP(TypeTag, SolutionTypes)::ScalarSolution type
Definition: porousmediumflow/sequential/properties.hh:170
typename GET_PROP_TYPE(TypeTag, Variables) Variables
Definition: porousmediumflow/sequential/properties.hh:184
Dune::BlockVector< Dune::FieldVector< Scalar, 1 > > ScalarSolution
type for vector of scalars
Definition: porousmediumflow/sequential/properties.hh:213
Dune::BlockVector< Dune::FieldVector< Dune::FieldVector< Scalar, dim >, maxIntersections > > DimVecElemFace
type for vector of vectors (of size 2 x dimension) of vector (of size dimension) of scalars
Definition: porousmediumflow/sequential/properties.hh:223
Dune::FieldVector< Dune::BlockVector< Dune::FieldVector< Scalar, 1 > >, numPhases > PhaseProperty
type for vector of phase properties
Definition: porousmediumflow/sequential/properties.hh:217
typename GET_PROP_TYPE(TypeTag, GridView) GridView
Definition: porousmediumflow/sequential/properties.hh:182
Dune::BlockVector< Dune::FieldVector< Dune::FieldVector< Scalar, numPhases >, maxIntersections > > PhasePropertyElemFace
type for vector of vectors (of size 2 x dimension) of scalars
Definition: porousmediumflow/sequential/properties.hh:221
Dune::MultipleCodimMultipleGeomTypeMapper< GridView > VertexMapper
Mapper for the grid view's vertices.
Definition: porousmediumflow/sequential/properties.hh:199
Dune::MultipleCodimMultipleGeomTypeMapper< GridView > ElementMapper
Mapper for the grid view's elements.
Definition: porousmediumflow/sequential/properties.hh:204
typename GET_PROP_TYPE(TypeTag, Scalar) Scalar
Definition: porousmediumflow/sequential/properties.hh:181
typename GridView::Grid Grid
Definition: porousmediumflow/sequential/properties.hh:183
Dune::FieldVector< Dune::BlockVector< Dune::FieldVector< Scalar, 1 > >, numComponents > ComponentProperty
type for vector of phase properties
Definition: porousmediumflow/sequential/properties.hh:215
Dune::FieldVector< Dune::BlockVector< Dune::FieldVector< Scalar, 1 > >, numPhases > FluidProperty
type for vector of fluid properties: Vector[element][phase]
Definition: porousmediumflow/sequential/properties.hh:219
Dune::FieldVector< Scalar, numEq > PrimaryVariables
The type of a solution at a fixed time.
Definition: porousmediumflow/sequential/properties.hh:211
static void defaultParams(Dune::ParameterTree ¶ms, const std::string &group="")
Definition: porousmediumflow/sequential/properties.hh:248
Class to specify the type of a boundary.
Declares all properties used in Dumux.
Defines a type tags and some fundamental properties for all models.