diff --git a/test/porousmediumflow/2p2c/implicit/injection/params.input b/test/porousmediumflow/2p2c/implicit/injection/params.input index 2a03857bf954d35d9f4fe6aeb891cd91c26f8c3d..eba1e4ef071fda6d14f32a5e3c3b2fe38979aa61 100644 --- a/test/porousmediumflow/2p2c/implicit/injection/params.input +++ b/test/porousmediumflow/2p2c/implicit/injection/params.input @@ -24,3 +24,13 @@ TemperatureHigh = 314.15 # [Pa] upper temperature limit for tabularization PriVarNamesState1 = p_liq x^N2_liq PriVarNamesState2 = p_liq x^H2O_gas PriVarNamesState3 = p_liq S_gas + +[SpatialParams] +FineMaterial.Swr = 0.2 +FineMaterial.Snr = 0.0 +FineMaterial.BrooksCoreyPcEntry = 1e4 +FineMaterial.BrooksCoreyLambda = 2.0 +CoarseMaterial.Swr = 0.2 +CoarseMaterial.Snr = 0.0 +CoarseMaterial.BrooksCoreyPcEntry = 1e4 +CoarseMaterial.BrooksCoreyLambda = 2.0 diff --git a/test/porousmediumflow/2p2c/implicit/injection/spatialparams.hh b/test/porousmediumflow/2p2c/implicit/injection/spatialparams.hh index d23d12282e1e3e3e4892014ff082da307f2a5822..5f74e016ad9902f51c1706081e23270bbb6b88f7 100644 --- a/test/porousmediumflow/2p2c/implicit/injection/spatialparams.hh +++ b/test/porousmediumflow/2p2c/implicit/injection/spatialparams.hh @@ -28,8 +28,7 @@ #include <dumux/porousmediumflow/properties.hh> #include <dumux/material/spatialparams/fv.hh> -#include <dumux/material/fluidmatrixinteractions/2p/regularizedbrookscorey.hh> -#include <dumux/material/fluidmatrixinteractions/2p/efftoabslaw.hh> +#include <dumux/material/fluidmatrixinteractions/2p/brookscorey.hh> namespace Dumux { @@ -51,19 +50,18 @@ class InjectionSpatialParams static constexpr int dimWorld = GridView::dimensionworld; - using EffectiveLaw = RegularizedBrooksCorey<Scalar>; + using PcKrSwCurve = FluidMatrix::BrooksCoreyDefault<Scalar>; using GlobalPosition = typename Element::Geometry::GlobalCoordinate; public: //! Export the type used for the permeability using PermeabilityType = Scalar; - //! Export the material law type used - using MaterialLaw = EffToAbsLaw<EffectiveLaw>; - using MaterialLawParams = typename MaterialLaw::Params; InjectionSpatialParams(std::shared_ptr<const GridGeometry> gridGeometry) : ParentType(gridGeometry) + , finePcKrSwCurve_("SpatialParams.FineMaterial") + , coarsePcKrSwCurve_("SpatialParams.CoarseMaterial") { layerBottom_ = 22.5; @@ -74,18 +72,6 @@ public: // porosities finePorosity_ = 0.3; coarsePorosity_ = 0.3; - - // residual saturations - fineMaterialParams_.setSwr(0.2); - fineMaterialParams_.setSnr(0.0); - coarseMaterialParams_.setSwr(0.2); - coarseMaterialParams_.setSnr(0.0); - - // parameters for the Brooks-Corey law - fineMaterialParams_.setPe(1e4); - coarseMaterialParams_.setPe(1e4); - fineMaterialParams_.setLambda(2.0); - coarseMaterialParams_.setLambda(2.0); } /*! @@ -119,11 +105,11 @@ public: * * \param globalPos The global position */ - const MaterialLawParams& materialLawParamsAtPos(const GlobalPosition& globalPos) const + const auto fluidMatrixInteractionAtPos(const GlobalPosition& globalPos) const { if (isFineMaterial_(globalPos)) - return fineMaterialParams_; - return coarseMaterialParams_; + return makeFluidMatrixInteraction(finePcKrSwCurve_); + return makeFluidMatrixInteraction(coarsePcKrSwCurve_); } /*! @@ -147,8 +133,8 @@ private: Scalar finePorosity_; Scalar coarsePorosity_; - MaterialLawParams fineMaterialParams_; - MaterialLawParams coarseMaterialParams_; + const PcKrSwCurve finePcKrSwCurve_; + const PcKrSwCurve coarsePcKrSwCurve_; }; } // end namespace Dumux