mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-10-25 07:07:42 -05:00
Adapt to upstream addition of traits for hyst and eps.
This commit is contained in:
1 parent
00d6bf213c
commit
ce81e1c4d9
9 files changed
+34
-8
No files matched your search
@@ -131,7 +131,9 @@ private:
|
||||
using Traits = Opm::ThreePhaseMaterialTraits<Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::oilPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
/* hysteresis */ false,
|
||||
/* endpointscaling */ false>;
|
||||
|
||||
// define the material law which is parameterized by effective saturation
|
||||
using EffMaterialLaw = Opm::NullMaterial<Traits>;
|
||||
|
||||
@@ -88,7 +88,9 @@ private:
|
||||
Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::naplPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
/* hysteresis */ false,
|
||||
/* endpointscaling */ false>;
|
||||
|
||||
public:
|
||||
using type = Opm::ThreePhaseParkerVanGenuchten<Traits>;
|
||||
|
||||
@@ -86,7 +86,9 @@ private:
|
||||
Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::naplPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
/* hysteresis */ false,
|
||||
/* endpointscaling */ false>;
|
||||
|
||||
public:
|
||||
using type = Opm::ThreePhaseParkerVanGenuchten<Traits>;
|
||||
|
||||
@@ -93,7 +93,9 @@ private:
|
||||
ThreePhaseMaterialTraits<Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::oilPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
/* hysteresis */ false,
|
||||
/* endpointscaling */ false>;
|
||||
|
||||
public:
|
||||
using type = Opm::LinearMaterial<Traits>;
|
||||
|
||||
@@ -77,6 +77,12 @@ struct EnableApiTracking { using type = UndefinedProperty; };
|
||||
template<class TypeTag, class MyTypeTag>
|
||||
struct EnableDebuggingChecks { using type = Properties::UndefinedProperty; };
|
||||
|
||||
template<class TypeTag, class MyTypeTag>
|
||||
struct EnableHysteresis { using type = Properties::UndefinedProperty; };
|
||||
|
||||
template<class TypeTag, class MyTypeTag>
|
||||
struct EnableEndpointScaling { using type = Properties::UndefinedProperty; };
|
||||
|
||||
// Avoid using ElementContext-based code if possible.
|
||||
template<class TypeTag, class MyTypeTag>
|
||||
struct AvoidElementContext { using type = Properties::UndefinedProperty; };
|
||||
@@ -245,6 +251,14 @@ template<class TypeTag>
|
||||
struct EnableDebuggingChecks<TypeTag, TTag::FlowBaseProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableHysteresis<TypeTag, TTag::FlowBaseProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEndpointScaling<TypeTag, TTag::FlowBaseProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
// Most modules are implemented only in terms of element contexts,
|
||||
// so this must default to false.
|
||||
template<class TypeTag>
|
||||
|
||||
@@ -82,7 +82,9 @@ private:
|
||||
using Traits = ThreePhaseMaterialTraits<Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::oilPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
getPropValue<TypeTag, Properties::EnableHysteresis>(),
|
||||
getPropValue<TypeTag, Properties::EnableEndpointScaling>()>;
|
||||
|
||||
public:
|
||||
using EclMaterialLawManager = ::Opm::EclMaterialLaw::Manager<Traits>;
|
||||
|
||||
@@ -72,7 +72,9 @@ private:
|
||||
using Traits = ThreePhaseMaterialTraits<Scalar,
|
||||
/*wettingPhaseIdx=*/FluidSystem::waterPhaseIdx,
|
||||
/*nonWettingPhaseIdx=*/FluidSystem::oilPhaseIdx,
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx>;
|
||||
/*gasPhaseIdx=*/FluidSystem::gasPhaseIdx,
|
||||
/* hysteresis */ true,
|
||||
/* endpointscaling */ true>;
|
||||
|
||||
public:
|
||||
using EclMaterialLawManager = ::Opm::EclMaterialLaw::Manager<Traits>;
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace Opm {
|
||||
namespace EQUIL {
|
||||
|
||||
template<class Scalar>
|
||||
using MatLaw = EclMaterialLaw::Manager<ThreePhaseMaterialTraits<Scalar,0,1,2>>;
|
||||
using MatLaw = EclMaterialLaw::Manager<ThreePhaseMaterialTraits<Scalar,0,1,2,true,true>>;
|
||||
template<class Scalar> using FS = BlackOilFluidSystem<Scalar>;
|
||||
|
||||
#define INSTANTIATE_TYPE(T) \
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
namespace Opm {
|
||||
|
||||
template<class Scalar>
|
||||
using MatLaw = EclMaterialLaw::Manager<ThreePhaseMaterialTraits<Scalar,0,1,2>>;
|
||||
using MatLaw = EclMaterialLaw::Manager<ThreePhaseMaterialTraits<Scalar,0,1,2,true,true>>;
|
||||
|
||||
namespace EQUIL {
|
||||
namespace DeckDependent {
|
||||
|
||||
Reference in new issue
Block a user