Commit 1a257dce authored by Bernd Flemisch's avatar Bernd Flemisch
Browse files

[propertysystem] replace macros SET_PROP and GET_PROP

parent 2e42b5fe
......@@ -53,7 +53,8 @@ struct BoxModel { using InheritsFrom = std::tuple<FiniteVolumeModel>; };
} // end namespace TTag
//! Set the default for the global finite volume geometry
SET_PROP(BoxModel, FVGridGeometry)
template<class TypeTag>
struct FVGridGeometry<TypeTag, TTag::BoxModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableFVGridGeometryCache>();
......@@ -64,7 +65,8 @@ public:
};
//! The grid volume variables vector class
SET_PROP(BoxModel, GridVolumeVariables)
template<class TypeTag>
struct GridVolumeVariables<TypeTag, TTag::BoxModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridVolumeVariablesCache>();
......@@ -75,7 +77,8 @@ public:
};
//! The grid flux variables cache vector class
SET_PROP(BoxModel, GridFluxVariablesCache)
template<class TypeTag>
struct GridFluxVariablesCache<TypeTag, TTag::BoxModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridFluxVariablesCache>();
......
......@@ -58,7 +58,8 @@ struct CCMpfaModel { using InheritsFrom = std::tuple<FiniteVolumeModel>; };
} // end namespace TTag
//! Set the index set type used on the dual grid nodes
SET_PROP(CCMpfaModel, DualGridNodalIndexSet)
template<class TypeTag>
struct DualGridNodalIndexSet<TypeTag, TTag::CCMpfaModel>
{
private:
using GV = GetPropType<TypeTag, Properties::GridView>;
......@@ -69,14 +70,16 @@ public:
};
//! Per default, we use the dynamic mpfa-o interaction volume
SET_PROP(CCMpfaModel, PrimaryInteractionVolume)
template<class TypeTag>
struct PrimaryInteractionVolume<TypeTag, TTag::CCMpfaModel>
{
public:
using type = GetPropType<TypeTag, Properties::SecondaryInteractionVolume>;
};
//! Per default, we use the dynamic mpfa-o interaction volume on boundaries
SET_PROP(CCMpfaModel, SecondaryInteractionVolume)
template<class TypeTag>
struct SecondaryInteractionVolume<TypeTag, TTag::CCMpfaModel>
{
private:
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
......@@ -89,7 +92,8 @@ public:
};
//! Set the default for the global finite volume geometry
SET_PROP(CCMpfaModel, FVGridGeometry)
template<class TypeTag>
struct FVGridGeometry<TypeTag, TTag::CCMpfaModel>
{
private:
using GridView = GetPropType<TypeTag, Properties::GridView>;
......@@ -102,7 +106,8 @@ public:
};
//! The grid volume variables vector class
SET_PROP(CCMpfaModel, GridVolumeVariables)
template<class TypeTag>
struct GridVolumeVariables<TypeTag, TTag::CCMpfaModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridVolumeVariablesCache>();
......@@ -113,7 +118,8 @@ public:
};
//! The grid volume variables vector class
SET_PROP(CCMpfaModel, GridFluxVariablesCache)
template<class TypeTag>
struct GridFluxVariablesCache<TypeTag, TTag::CCMpfaModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridFluxVariablesCache>();
......
......@@ -52,7 +52,8 @@ struct CCTpfaModel { using InheritsFrom = std::tuple<FiniteVolumeModel>; };
} // end namespace TTag
//! Set the default for the global finite volume geometry
SET_PROP(CCTpfaModel, FVGridGeometry)
template<class TypeTag>
struct FVGridGeometry<TypeTag, TTag::CCTpfaModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableFVGridGeometryCache>();
......@@ -62,7 +63,8 @@ public:
};
//! The grid volume variables vector class
SET_PROP(CCTpfaModel, GridVolumeVariables)
template<class TypeTag>
struct GridVolumeVariables<TypeTag, TTag::CCTpfaModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridVolumeVariablesCache>();
......@@ -73,7 +75,8 @@ public:
};
//! The grid flux variables cache vector class
SET_PROP(CCTpfaModel, GridFluxVariablesCache)
template<class TypeTag>
struct GridFluxVariablesCache<TypeTag, TTag::CCTpfaModel>
{
private:
static constexpr bool enableCache = getPropValue<TypeTag, Properties::EnableGridFluxVariablesCache>();
......
......@@ -44,7 +44,8 @@ struct FiniteVolumeModel { using InheritsFrom = std::tuple<GridProperties>; };
} // end namespace TTag
//! The grid variables
SET_PROP(FiniteVolumeModel, GridVariables)
template<class TypeTag>
struct GridVariables<TypeTag, TTag::FiniteVolumeModel>
{
private:
using GG = GetPropType<TypeTag, Properties::FVGridGeometry>;
......@@ -78,7 +79,8 @@ template<class TypeTag>
struct SolutionVector<TypeTag, TTag::FiniteVolumeModel> { using type = Dune::BlockVector<GetPropType<TypeTag, Properties::PrimaryVariables>>; };
//! Set the type of a global jacobian matrix from the solution types TODO: move to LinearAlgebra traits
SET_PROP(FiniteVolumeModel, JacobianMatrix)
template<class TypeTag>
struct JacobianMatrix<TypeTag, TTag::FiniteVolumeModel>
{
private:
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
......
......@@ -67,7 +67,8 @@ struct NumEqFace<TypeTag, TTag::StaggeredFreeFlowModel> { static constexpr int v
* and substract the number of dimensions. This yields the number of equations to be
* solved on the cell centers. Works also for non-isothermal models.
*/
SET_PROP(StaggeredFreeFlowModel, NumEqCellCenter)
template<class TypeTag>
struct NumEqCellCenter<TypeTag, TTag::StaggeredFreeFlowModel>
{
private:
using GridView = GetPropType<TypeTag, Properties::GridView>;
......@@ -79,7 +80,8 @@ public:
};
//! The default fv grid geometry
SET_PROP(StaggeredFreeFlowModel, FVGridGeometry)
template<class TypeTag>
struct FVGridGeometry<TypeTag, TTag::StaggeredFreeFlowModel>
{
private:
using GridView = GetPropType<TypeTag, Properties::GridView>;
......@@ -90,7 +92,8 @@ public:
};
//! The variables living on the faces
SET_PROP(StaggeredFreeFlowModel, FaceVariables)
template<class TypeTag>
struct FaceVariables<TypeTag, TTag::StaggeredFreeFlowModel>
{
private:
using FacePrimaryVariables = GetPropType<TypeTag, Properties::FacePrimaryVariables>;
......@@ -100,7 +103,8 @@ public:
};
//! Set the default global volume variables cache vector class
SET_PROP(StaggeredFreeFlowModel, GridVolumeVariables)
template<class TypeTag>
struct GridVolumeVariables<TypeTag, TTag::StaggeredFreeFlowModel>
{
private:
using Problem = GetPropType<TypeTag, Properties::Problem>;
......@@ -113,7 +117,8 @@ public:
//! Boundary types at a single degree of freedom
SET_PROP(StaggeredFreeFlowModel, BoundaryTypes)
template<class TypeTag>
struct BoundaryTypes<TypeTag, TTag::StaggeredFreeFlowModel>
{
using type = StaggeredFreeFlowBoundaryTypes<GetPropType<TypeTag, Properties::ModelTraits>::numEq()>;
};
......
......@@ -62,7 +62,8 @@ struct StaggeredModel { using InheritsFrom = std::tuple<FiniteVolumeModel>; };
} // end namespace TTag
//! Set the default global face variables cache vector class
SET_PROP(StaggeredModel, GridFaceVariables)
template<class TypeTag>
struct GridFaceVariables<TypeTag, TTag::StaggeredModel>
{
private:
using Problem = GetPropType<TypeTag, Properties::Problem>;
......@@ -77,7 +78,8 @@ template<class TypeTag>
struct EnableGridFaceVariablesCache<TypeTag, TTag::StaggeredModel> { static constexpr bool value = true; };
//! Set the global flux variables cache vector class
SET_PROP(StaggeredModel, GridFluxVariablesCache)
template<class TypeTag>
struct GridFluxVariablesCache<TypeTag, TTag::StaggeredModel>
{
private:
static constexpr auto enableCache = getPropValue<TypeTag, Properties::EnableGridFluxVariablesCache>();
......@@ -89,7 +91,8 @@ public:
};
//! Set the face solution type
SET_PROP(StaggeredModel, StaggeredFaceSolution)
template<class TypeTag>
struct StaggeredFaceSolution<TypeTag, TTag::StaggeredModel>
{
private:
using FaceSolutionVector = GetPropType<TypeTag, Properties::FaceSolutionVector>;
......@@ -98,7 +101,8 @@ public:
};
//! Set the grid variables (volume, flux and face variables)
SET_PROP(StaggeredModel, GridVariables)
template<class TypeTag>
struct GridVariables<TypeTag, TTag::StaggeredModel>
{
private:
using GG = GetPropType<TypeTag, Properties::FVGridGeometry>;
......@@ -151,7 +155,8 @@ struct FaceSolutionVector<TypeTag, TTag::StaggeredModel>
{ using type = Dune::BlockVector<GetPropType<TypeTag, Properties::FacePrimaryVariables>>; };
//! default property value for the solution vector only used for monolithic solver TODO: move to LinearAlgebra traits
SET_PROP(StaggeredModel, SolutionVector)
template<class TypeTag>
struct SolutionVector<TypeTag, TTag::StaggeredModel>
{
private:
using CellCenterSolutionVector = GetPropType<TypeTag, Properties::CellCenterSolutionVector>;
......@@ -161,7 +166,8 @@ public:
};
//! Set the type of a global jacobian matrix from the solution types TODO: move to LinearAlgebra traits
SET_PROP(StaggeredModel, JacobianMatrix)
template<class TypeTag>
struct JacobianMatrix<TypeTag, TTag::StaggeredModel>
{
private:
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
......
......@@ -75,7 +75,8 @@ struct KEpsilonNCModelTraits : NavierStokesNCModelTraits<dimension, nComp, useMo
};
//!< states some specifics of the isothermal multi-component low-Reynolds k-epsilon model
SET_PROP(KEpsilonNC, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::KEpsilonNC>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -89,7 +90,8 @@ public:
};
//! Set the volume variables property
SET_PROP(KEpsilonNC, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::KEpsilonNC>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -109,7 +111,8 @@ public:
};
//! The local residual
SET_PROP(KEpsilonNC, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::KEpsilonNC>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -118,7 +121,8 @@ public:
};
//! The flux variables
SET_PROP(KEpsilonNC, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::KEpsilonNC>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -141,7 +145,8 @@ struct KEpsilonNCNI { using InheritsFrom = std::tuple<NavierStokesNCNI>; };
} // end namespace TTag
//! The model traits of the non-isothermal model
SET_PROP(KEpsilonNCNI, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::KEpsilonNCNI>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -156,7 +161,8 @@ public:
};
//! Set the volume variables property
SET_PROP(KEpsilonNCNI, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::KEpsilonNCNI>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -176,7 +182,8 @@ public:
};
//! The local residual
SET_PROP(KEpsilonNCNI, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::KEpsilonNCNI>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -185,7 +192,8 @@ public:
};
//! The flux variables
SET_PROP(KEpsilonNCNI, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::KEpsilonNCNI>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -194,7 +202,8 @@ public:
};
//! The specific I/O fields
SET_PROP(KEpsilonNCNI, IOFields)
template<class TypeTag>
struct IOFields<TypeTag, TTag::KEpsilonNCNI>
{
private:
using IsothermalIOFields = FreeflowNCIOFields<KEpsilonIOFields, true/*turbulenceModel*/>;
......
......@@ -93,7 +93,8 @@ struct KOmegaNCModelTraits : NavierStokesNCModelTraits<dimension, nComp, useMole
};
//!< states some specifics of the isothermal multi-component low-Reynolds k-epsilon model
SET_PROP(KOmegaNC, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::KOmegaNC>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -107,7 +108,8 @@ public:
};
//! Set the volume variables property
SET_PROP(KOmegaNC, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::KOmegaNC>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -127,7 +129,8 @@ public:
};
//! The local residual
SET_PROP(KOmegaNC, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::KOmegaNC>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -136,7 +139,8 @@ public:
};
//! The flux variables
SET_PROP(KOmegaNC, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::KOmegaNC>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -159,7 +163,8 @@ struct KOmegaNCNI { using InheritsFrom = std::tuple<NavierStokesNCNI>; };
} // end namespace TTag
//! The model traits of the non-isothermal model
SET_PROP(KOmegaNCNI, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::KOmegaNCNI>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -174,7 +179,8 @@ public:
};
//! Set the volume variables property
SET_PROP(KOmegaNCNI, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::KOmegaNCNI>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -194,7 +200,8 @@ public:
};
//! The local residual
SET_PROP(KOmegaNCNI, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::KOmegaNCNI>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -203,7 +210,8 @@ public:
};
//! The flux variables
SET_PROP(KOmegaNCNI, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::KOmegaNCNI>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -212,7 +220,8 @@ public:
};
//! The specific I/O fields
SET_PROP(KOmegaNCNI, IOFields)
template<class TypeTag>
struct IOFields<TypeTag, TTag::KOmegaNCNI>
{
private:
using IsothermalIOFields = FreeflowNCIOFields<KOmegaIOFields, true/*turbulenceModel*/>;
......
......@@ -80,7 +80,8 @@ struct LowReKEpsilonNCModelTraits : NavierStokesNCModelTraits<dimension, nComp,
};
//!< states some specifics of the isothermal multi-component low-Reynolds k-epsilon model
SET_PROP(LowReKEpsilonNC, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::LowReKEpsilonNC>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -94,7 +95,8 @@ public:
};
//! Set the volume variables property
SET_PROP(LowReKEpsilonNC, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::LowReKEpsilonNC>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -114,7 +116,8 @@ public:
};
//! The local residual
SET_PROP(LowReKEpsilonNC, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::LowReKEpsilonNC>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -123,7 +126,8 @@ public:
};
//! The flux variables
SET_PROP(LowReKEpsilonNC, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::LowReKEpsilonNC>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -146,7 +150,8 @@ struct LowReKEpsilonNCNI { using InheritsFrom = std::tuple<NavierStokesNCNI>; };
} // end namespace TTag
//! The model traits of the non-isothermal model
SET_PROP(LowReKEpsilonNCNI, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::LowReKEpsilonNCNI>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -161,7 +166,8 @@ public:
};
//! Set the volume variables property
SET_PROP(LowReKEpsilonNCNI, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::LowReKEpsilonNCNI>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -181,7 +187,8 @@ public:
};
//! The local residual
SET_PROP(LowReKEpsilonNCNI, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::LowReKEpsilonNCNI>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -190,7 +197,8 @@ public:
};
//! The flux variables
SET_PROP(LowReKEpsilonNCNI, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::LowReKEpsilonNCNI>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -199,7 +207,8 @@ public:
};
//! The specific I/O fields
SET_PROP(LowReKEpsilonNCNI, IOFields)
template<class TypeTag>
struct IOFields<TypeTag, TTag::LowReKEpsilonNCNI>
{
private:
using IsothermalIOFields = FreeflowNCIOFields<LowReKEpsilonIOFields, true/*turbulenceModel*/>;
......
......@@ -127,7 +127,8 @@ struct NavierStokesNCNI { using InheritsFrom = std::tuple<NavierStokesNC>; };
///////////////////////////////////////////////////////////////////////////
//!< states some specifics of the free-flow model
SET_PROP(NavierStokesNC, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::NavierStokesNC>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -153,7 +154,8 @@ template<class TypeTag>
struct LocalResidual<TypeTag, TTag::NavierStokesNC> { using type = FreeflowNCResidual<TypeTag>; };
//! Set the volume variables property
SET_PROP(NavierStokesNC, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::NavierStokesNC>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -189,7 +191,8 @@ struct IOFields<TypeTag, TTag::NavierStokesNC> { using type = FreeflowNCIOFields
* appropriately for the model ((non-)isothermal, equilibrium, ...).
* This can be done in the problem.
*/
SET_PROP(NavierStokesNC, FluidState)
template<class TypeTag>
struct FluidState<TypeTag, TTag::NavierStokesNC>
{
private:
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
......@@ -207,7 +210,8 @@ struct MolecularDiffusionType<TypeTag, TTag::NavierStokesNC> { using type = Fick
//////////////////////////////////////////////////////////////////////////
//! The model traits of the non-isothermal model
SET_PROP(NavierStokesNCNI, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::NavierStokesNCNI>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -222,7 +226,8 @@ public:
};
//! The non-isothermal I/O fields
SET_PROP(NavierStokesNCNI, IOFields)
template<class TypeTag>
struct IOFields<TypeTag, TTag::NavierStokesNCNI>
{
private:
using IsothermalIOFields = FreeflowNCIOFields<NavierStokesIOFields>;
......
......@@ -91,7 +91,8 @@ struct OneEqNCModelTraits : NavierStokesNCModelTraits<dimension, nComp, useMoles
};
//!< states some specifics of the isothermal multi-component one-equation model
SET_PROP(OneEqNC, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::OneEqNC>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -105,7 +106,8 @@ public:
};
//! Set the volume variables property
SET_PROP(OneEqNC, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::OneEqNC>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -125,7 +127,8 @@ public:
};
//! The local residual
SET_PROP(OneEqNC, LocalResidual)
template<class TypeTag>
struct LocalResidual<TypeTag, TTag::OneEqNC>
{
private:
using BaseLocalResidual = FreeflowNCResidual<TypeTag>;
......@@ -134,7 +137,8 @@ public:
};
//! The flux variables
SET_PROP(OneEqNC, FluxVariables)
template<class TypeTag>
struct FluxVariables<TypeTag, TTag::OneEqNC>
{
private:
using BaseFluxVariables = FreeflowNCFluxVariables<TypeTag>;
......@@ -157,7 +161,8 @@ struct OneEqNCNI { using InheritsFrom = std::tuple<NavierStokesNCNI>; };
} // end namespace TTag
//! The model traits of the non-isothermal model
SET_PROP(OneEqNCNI, ModelTraits)
template<class TypeTag>
struct ModelTraits<TypeTag, TTag::OneEqNCNI>
{
private:
using GridView = typename GetPropType<TypeTag, Properties::FVGridGeometry>::GridView;
......@@ -172,7 +177,8 @@ public:
};
//! Set the volume variables property
SET_PROP(OneEqNCNI, VolumeVariables)
template<class TypeTag>
struct VolumeVariables<TypeTag, TTag::OneEqNCNI>
{
private:
using PV = GetPropType<TypeTag, Properties::PrimaryVariables>;
......@@ -192,7 +198,8 @@ public:
};
//! The local residual
</