26#ifndef DUMUX_INFILTRATION_THREEP_SPATIAL_PARAMS_HH
27#define DUMUX_INFILTRATION_THREEP_SPATIAL_PARAMS_HH
42template<
class Gr
idGeometry,
class Scalar>
45 InfiltrationThreePSpatialParams<GridGeometry, Scalar>>
47 using GridView =
typename GridGeometry::GridView;
48 using FVElementGeometry =
typename GridGeometry::LocalView;
49 using SubControlVolume =
typename FVElementGeometry::SubControlVolume;
50 using Element =
typename GridView::template Codim<0>::Entity;
54 using GlobalPosition =
typename SubControlVolume::GlobalPosition;
78 materialParams_.setSwr(0.12);
79 materialParams_.setSnr(0.07);
80 materialParams_.setSgr(0.03);
83 materialParams_.setVgAlpha(vGAlpha_);
84 materialParams_.setVgn(vGN_);
85 materialParams_.setKrRegardsSnr(
false);
88 materialParams_.setKdNAPL(0.);
89 materialParams_.setRhoBulk(1500.);
91 plotFluidMatrixInteractions_ =
getParam<bool>(
"Output.PlotFluidMatrixInteractions");
121 template<
class ElementSolution>
123 const SubControlVolume& scv,
124 const ElementSolution& elemSol)
const
126 if (isFineMaterial_(scv.dofPosition()))
148 return materialParams_;
151 bool isFineMaterial_(
const GlobalPosition &globalPos)
const
153 70. - eps_ <= globalPos[0] && globalPos[0] <= 85. + eps_ &&
154 7.0 - eps_ <= globalPos[1] && globalPos[1] <= 7.50 + eps_;
166 bool plotFluidMatrixInteractions_;
168 static constexpr Scalar eps_ = 1e-6;
Interface for passing data sets to a file and plotting them, if gnuplot is installed.
Interface for plotting the three-phase fluid-matrix-interaction laws.
Implementation of a regularized version of van Genuchten's capillary pressure-saturation relation for...
Parameters that are necessary for the regularization of the Parker - Van Genuchten capillary pressure...
The base class for spatial parameters of multi-phase problems using a fully implicit discretization m...
T getParam(Args &&... args)
A free function to get a parameter from the parameter tree singleton.
Definition parameters.hh:428
make the local view function available whenever we use the grid geometry
Definition adapt.hh:29
Interface for passing data sets to a file and plotting them, if gnuplot is installed.
Definition gnuplotinterface.hh:57
void plot(const std::string &filename="")
Plots the files for a specific window number, writes a gnuplot and png file.
Definition gnuplotinterface.hh:89
void resetAll(const bool persist=true)
Resets all gnuplot parameters.
Definition gnuplotinterface.hh:164
void setOpenPlotWindow(bool openPlotWindow)
Define whether the gnuplot window should be opened.
Definition gnuplotinterface.hh:335
Interface for plotting the two-phase fluid-matrix-interaction laws.
Definition plotmateriallaw.hh:42
This material law takes a material law defined for effective saturations and converts it to a materia...
Definition 2p/efftoabslaw.hh:60
EffToAbsLawParams< typename EffectiveLaw::Params > Params
Definition 2p/efftoabslaw.hh:64
Implementation of the regularized van Genuchten's capillary pressure <-> saturation relation....
Definition regularizedparkervangen3p.hh:62
FVSpatialParams(std::shared_ptr< const GridGeometry > gridGeometry)
Definition fv.hh:67
const GridGeometry & gridGeometry() const
Definition fv1p.hh:334
void plotMaterialLaw()
This is called from the problem and creates a gnuplot output of e.g the pc-Sw curve.
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:98
InfiltrationThreePSpatialParams(std::shared_ptr< const GridGeometry > gridGeometry)
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:66
Scalar porosityAtPos(const GlobalPosition &globalPos) const
Returns the porosity .
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:136
typename MaterialLaw::Params MaterialLawParams
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:64
PermeabilityType permeability(const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
Function for defining the (intrinsic) permeability .
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:122
EffToAbsLaw< EffectiveLaw > MaterialLaw
Get the material law from the property system.
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:63
Scalar PermeabilityType
Export permeability type.
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:60
const MaterialLawParams & materialLawParamsAtPos(const GlobalPosition &globalPos) const
Returns the parameter object for the Brooks-Corey material law.
Definition porousmediumflow/3p/implicit/infiltration/spatialparams.hh:146
Defines a type tag and some properties for models using the box scheme.
This material law takes a material law defined for effective saturations and converts it to a materia...