From 72aaf42169b760d090aeff47f8bb01d173bac790 Mon Sep 17 00:00:00 2001 From: Stefanie Kiemle <stefanie.kiemle@iws.uni-stuttgart.de> Date: Sun, 2 Apr 2023 17:20:19 +0200 Subject: [PATCH] Smaller changes to exercise-basic --- exercises/exercise-basic/README.md | 2 +- ...lparams.hh => injection2pspatialparams.hh} | 26 ++++++++++++------- .../solution/exercise-basic/properties2pni.hh | 2 +- 3 files changed, 19 insertions(+), 11 deletions(-) rename exercises/solution/exercise-basic/{spatialparams.hh => injection2pspatialparams.hh} (85%) diff --git a/exercises/exercise-basic/README.md b/exercises/exercise-basic/README.md index e19236da..4d354083 100644 --- a/exercises/exercise-basic/README.md +++ b/exercises/exercise-basic/README.md @@ -68,7 +68,7 @@ paraview injection-2p2c.pvd ```cmake # the two-phase non-isothermal simulation program -dune_add_test(NAME exercise_basic_2pni +dumux_add_test(NAME exercise_basic_2pni SOURCES 2pnimain.cc) ``` diff --git a/exercises/solution/exercise-basic/spatialparams.hh b/exercises/solution/exercise-basic/injection2pspatialparams.hh similarity index 85% rename from exercises/solution/exercise-basic/spatialparams.hh rename to exercises/solution/exercise-basic/injection2pspatialparams.hh index 1382ea0c..5cc960a3 100644 --- a/exercises/solution/exercise-basic/spatialparams.hh +++ b/exercises/solution/exercise-basic/injection2pspatialparams.hh @@ -41,13 +41,13 @@ namespace Dumux { * which uses the isothermal two-phase two-component * fully implicit model. */ -template<class GridGeometry, class Scalar> +template<class FVGridGeometry, class Scalar> class InjectionSpatialParams -: public FVPorousMediumFlowSpatialParamsMP<GridGeometry, Scalar, InjectionSpatialParams<GridGeometry, Scalar>> +: public FVPorousMediumFlowSpatialParamsMP<FVGridGeometry, Scalar, InjectionSpatialParams<FVGridGeometry, Scalar>> { - using ThisType = InjectionSpatialParams<GridGeometry, Scalar>; - using ParentType = FVPorousMediumFlowSpatialParamsMP<GridGeometry, Scalar, ThisType>; - using GridView = typename GridGeometry::GridView; + using ThisType = InjectionSpatialParams<FVGridGeometry, Scalar>; + using ParentType = FVPorousMediumFlowSpatialParamsMP<FVGridGeometry, Scalar, ThisType>; + using GridView = typename FVGridGeometry::GridView; // get the dimensions of the simulation domain from GridView static const int dimWorld = GridView::dimensionworld; @@ -63,10 +63,10 @@ public: /*! * \brief The constructor * - * \param gridGeometry The finite volume grid geometry + * \param fvGridGeometry The finite volume grid geometry */ - InjectionSpatialParams(std::shared_ptr<const GridGeometry>& gridGeometry) - : ParentType(gridGeometry) + InjectionSpatialParams(std::shared_ptr<const FVGridGeometry>& fvGridGeometry) + : ParentType(fvGridGeometry) , aquitardPcKrSwCurve_("SpatialParams.Aquitard") , aquiferPcKrSwCurve_("SpatialParams.Aquifer") { @@ -128,6 +128,15 @@ public: int wettingPhaseAtPos(const GlobalPosition& globalPos) const { return FluidSystem::H2OIdx; } + /*! + * \brief Returns the temperature at the domain at the given position + * \param globalPos The position in global coordinates where the temperature should be specified + */ + Scalar temperatureAtPos(const GlobalPosition& globalPos) const + { + return 273.15 + 30; // [K] + } + private: static constexpr Scalar eps_ = 1e-6; @@ -143,7 +152,6 @@ private: Scalar aquiferK_; Scalar aquiferHeightFromBottom_; - Scalar aquitardPorosity_; Scalar aquiferPorosity_; diff --git a/exercises/solution/exercise-basic/properties2pni.hh b/exercises/solution/exercise-basic/properties2pni.hh index 947ebff4..ea33f554 100644 --- a/exercises/solution/exercise-basic/properties2pni.hh +++ b/exercises/solution/exercise-basic/properties2pni.hh @@ -31,7 +31,7 @@ #include <dumux/porousmediumflow/2p/model.hh> #include <dumux/material/fluidsystems/h2on2.hh> -#include "spatialparams.hh" +#include "injection2pspatialparams.hh" #include "injection2pniproblem.hh" namespace Dumux::Properties { -- GitLab