diff --git a/dumux/material/spatialparams/implicit.hh b/dumux/material/spatialparams/implicit.hh index 5447718dbad3779e3b18fdc6143c688a9d24c6ca..4d61788314befab9226a8bed42b470f90bd202da 100644 --- a/dumux/material/spatialparams/implicit.hh +++ b/dumux/material/spatialparams/implicit.hh @@ -49,6 +49,7 @@ class ImplicitSpatialParams: public ImplicitSpatialParamsOneP<TypeTag> { typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView; typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) Implementation; + typedef typename GET_PROP_TYPE(TypeTag, Problem) Problem; typedef typename GET_PROP_TYPE(TypeTag, SubControlVolume) SubControlVolume; typedef typename GET_PROP_TYPE(TypeTag, MaterialLawParams) MaterialLawParams; @@ -62,8 +63,8 @@ class ImplicitSpatialParams: public ImplicitSpatialParamsOneP<TypeTag> typedef Dune::FieldVector<CoordScalar,dimWorld> GlobalPosition; public: - ImplicitSpatialParams(const GridView &gridView) - :ImplicitSpatialParamsOneP<TypeTag>(gridView) + ImplicitSpatialParams(const Problem &problem, const GridView &gridView) + :ImplicitSpatialParamsOneP<TypeTag>(problem, gridView) { } /*! diff --git a/dumux/material/spatialparams/implicit1p.hh b/dumux/material/spatialparams/implicit1p.hh index 312dc3c0573ccbb8b04ddcb909622b49e11eae78..ac322719e1a287f50853b4eeda79954790e9c7e5 100644 --- a/dumux/material/spatialparams/implicit1p.hh +++ b/dumux/material/spatialparams/implicit1p.hh @@ -53,6 +53,7 @@ template<class TypeTag> class ImplicitSpatialParamsOneP { typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; + typedef typename GET_PROP_TYPE(TypeTag, Problem) Problem; typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView; typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) Implementation; @@ -67,8 +68,9 @@ class ImplicitSpatialParamsOneP typedef Dune::FieldVector<CoordScalar,dimWorld> GlobalPosition; public: - ImplicitSpatialParamsOneP(const GridView &gridView) - { } + ImplicitSpatialParamsOneP(const Problem problem, const GridView &gridView) + : problemPtr_(&problem) + {} /*! * \brief Averages the intrinsic permeability (Scalar). @@ -208,12 +210,19 @@ public: } } + const Problem& problem_() + { + return *problemPtr_; + } + private: Implementation &asImp_() { return *static_cast<Implementation*>(this); } const Implementation &asImp_() const { return *static_cast<const Implementation*>(this); } + + const Problem *problemPtr_; }; } // namespace Dumux