mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
use the opm-material module instead of using an internal material framework
This commit is contained in:
parent
74c3290296
commit
b3a687c83b
@ -28,13 +28,13 @@
|
|||||||
#include <ewoms/models/immiscible/immisciblemodel.hh>
|
#include <ewoms/models/immiscible/immisciblemodel.hh>
|
||||||
|
|
||||||
// The chemical species that are used
|
// The chemical species that are used
|
||||||
#include <ewoms/material/components/simpleh2o.hh>
|
#include <opm/material/components/simpleh2o.hh>
|
||||||
#include <ewoms/material/components/lnapl.hh>
|
#include <opm/material/components/lnapl.hh>
|
||||||
|
|
||||||
// The material laws
|
// The material laws
|
||||||
#include <ewoms/material/fluidmatrixinteractions/2p/regularizedbrookscorey.hh> /*@\label{tutorial-coupled:rawLawInclude}@*/
|
#include <opm/material/fluidmatrixinteractions/2p/regularizedbrookscorey.hh> /*@\label{tutorial-coupled:rawLawInclude}@*/
|
||||||
#include <ewoms/material/fluidmatrixinteractions/2p/efftoabslaw.hh>
|
#include <opm/material/fluidmatrixinteractions/2p/efftoabslaw.hh>
|
||||||
#include <ewoms/material/fluidmatrixinteractions/mp/2padapter.hh>
|
#include <opm/material/fluidmatrixinteractions/mp/2padapter.hh>
|
||||||
|
|
||||||
// For the DUNE grid
|
// For the DUNE grid
|
||||||
#include <dune/grid/yaspgrid.hh> /*@\label{tutorial-coupled:include-grid-manager}@*/
|
#include <dune/grid/yaspgrid.hh> /*@\label{tutorial-coupled:include-grid-manager}@*/
|
||||||
@ -63,13 +63,13 @@ SET_TYPE_PROP(TutorialProblemCoupled, GridCreator, Ewoms::CubeGridCreator<TypeTa
|
|||||||
|
|
||||||
// Set the wetting phase /*@\label{tutorial-coupled:2p-system-start}@*/
|
// Set the wetting phase /*@\label{tutorial-coupled:2p-system-start}@*/
|
||||||
SET_TYPE_PROP(TutorialProblemCoupled, WettingPhase, /*@\label{tutorial-coupled:wettingPhase}@*/
|
SET_TYPE_PROP(TutorialProblemCoupled, WettingPhase, /*@\label{tutorial-coupled:wettingPhase}@*/
|
||||||
Ewoms::LiquidPhase<typename GET_PROP_TYPE(TypeTag, Scalar),
|
Opm::LiquidPhase<typename GET_PROP_TYPE(TypeTag, Scalar),
|
||||||
Ewoms::SimpleH2O<typename GET_PROP_TYPE(TypeTag, Scalar)> >);
|
Opm::SimpleH2O<typename GET_PROP_TYPE(TypeTag, Scalar)> >);
|
||||||
|
|
||||||
// Set the non-wetting phase
|
// Set the non-wetting phase
|
||||||
SET_TYPE_PROP(TutorialProblemCoupled, NonwettingPhase, /*@\label{tutorial-coupled:nonwettingPhase}@*/
|
SET_TYPE_PROP(TutorialProblemCoupled, NonwettingPhase, /*@\label{tutorial-coupled:nonwettingPhase}@*/
|
||||||
Ewoms::LiquidPhase<typename GET_PROP_TYPE(TypeTag, Scalar),
|
Opm::LiquidPhase<typename GET_PROP_TYPE(TypeTag, Scalar),
|
||||||
Ewoms::LNAPL<typename GET_PROP_TYPE(TypeTag, Scalar)> >); /*@\label{tutorial-coupled:2p-system-end}@*/
|
Opm::LNAPL<typename GET_PROP_TYPE(TypeTag, Scalar)> >); /*@\label{tutorial-coupled:2p-system-end}@*/
|
||||||
|
|
||||||
// Set the material law
|
// Set the material law
|
||||||
SET_PROP(TutorialProblemCoupled, MaterialLaw)
|
SET_PROP(TutorialProblemCoupled, MaterialLaw)
|
||||||
@ -78,10 +78,10 @@ private:
|
|||||||
// Retrieve the C++ type used to represent scalar values
|
// Retrieve the C++ type used to represent scalar values
|
||||||
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
|
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
|
||||||
// Select the base material law to be used
|
// Select the base material law to be used
|
||||||
typedef RegularizedBrooksCorey<Scalar> RawMaterialLaw; /*@\label{tutorial-coupled:rawlaw}@*/
|
typedef Opm::RegularizedBrooksCorey<Scalar> RawMaterialLaw; /*@\label{tutorial-coupled:rawlaw}@*/
|
||||||
// Converts absolute saturations into effective ones before
|
// Converts absolute saturations into effective ones before
|
||||||
// passing it to the base material law
|
// passing it to the base material law
|
||||||
typedef EffToAbsLaw<RawMaterialLaw> TwoPMaterialLaw; /*@\label{tutorial-coupled:eff2abs}@*/
|
typedef Opm::EffToAbsLaw<RawMaterialLaw> TwoPMaterialLaw; /*@\label{tutorial-coupled:eff2abs}@*/
|
||||||
|
|
||||||
// Retrieve the index of the wetting phase
|
// Retrieve the index of the wetting phase
|
||||||
typedef typename GET_PROP_TYPE(TypeTag, FluidSystem) FluidSystem;
|
typedef typename GET_PROP_TYPE(TypeTag, FluidSystem) FluidSystem;
|
||||||
@ -89,7 +89,7 @@ private:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
// Convert two-phase material law into a general M-phase one.
|
// Convert two-phase material law into a general M-phase one.
|
||||||
typedef TwoPAdapter<wPhaseIdx, TwoPMaterialLaw> type;
|
typedef Opm::TwoPAdapter<wPhaseIdx, TwoPMaterialLaw> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Disable gravity
|
// Disable gravity
|
||||||
@ -200,7 +200,7 @@ public:
|
|||||||
// Free-flow conditions on left boundary
|
// Free-flow conditions on left boundary
|
||||||
const auto &materialParams = this->materialLawParams(context, spaceIdx, timeIdx);
|
const auto &materialParams = this->materialLawParams(context, spaceIdx, timeIdx);
|
||||||
|
|
||||||
ImmiscibleFluidState<Scalar, FluidSystem> fs;
|
Opm::ImmiscibleFluidState<Scalar, FluidSystem> fs;
|
||||||
Scalar Sw = 1.0;
|
Scalar Sw = 1.0;
|
||||||
fs.setSaturation(wPhaseIdx, Sw);
|
fs.setSaturation(wPhaseIdx, Sw);
|
||||||
fs.setSaturation(nPhaseIdx, 1.0 - Sw);
|
fs.setSaturation(nPhaseIdx, 1.0 - Sw);
|
||||||
@ -240,7 +240,7 @@ public:
|
|||||||
void initial(PrimaryVariables &values,
|
void initial(PrimaryVariables &values,
|
||||||
const Context &context, int spaceIdx, int timeIdx) const
|
const Context &context, int spaceIdx, int timeIdx) const
|
||||||
{
|
{
|
||||||
ImmiscibleFluidState<Scalar, FluidSystem> fs;
|
Opm::ImmiscibleFluidState<Scalar, FluidSystem> fs;
|
||||||
|
|
||||||
// the domain is initially fully saturated by LNAPL
|
// the domain is initially fully saturated by LNAPL
|
||||||
Scalar Sw = 0.0;
|
Scalar Sw = 0.0;
|
||||||
|
Loading…
Reference in New Issue
Block a user