51 Traits::nonWettingPhaseIdx,
54 Traits::wettingPhaseIdx,
55 Traits::nonWettingPhaseIdx>;
57 Traits::wettingPhaseIdx,
65 using GasOilEffectiveParams =
typename GasOilEffectiveLaw::Params;
66 using OilWaterEffectiveParams =
typename OilWaterEffectiveLaw::Params;
67 using GasWaterEffectiveParams =
typename GasWaterEffectiveLaw::Params;
69 template <
bool enableEPS,
typename BaseLaw>
70 using SelectEPSLaw = std::conditional_t<enableEPS, EclEpsTwoPhaseLaw<BaseLaw>, BaseLaw>;
73 using GasOilEpsLaw = SelectEPSLaw<Traits::enableEndpointScaling, GasOilEffectiveLaw>;
74 using OilWaterEpsLaw = SelectEPSLaw<Traits::enableEndpointScaling, OilWaterEffectiveLaw>;
75 using GasWaterEpsLaw = SelectEPSLaw<Traits::enableEndpointScaling, GasWaterEffectiveLaw>;
76 using GasOilEpsParams =
typename GasOilEpsLaw::Params;
77 using OilWaterEpsParams =
typename OilWaterEpsLaw::Params;
78 using GasWaterEpsParams =
typename GasWaterEpsLaw::Params;
80 template <
bool enableHyst,
typename BaseLaw>
81 using SelectHystLaw = std::conditional_t<enableHyst, EclHysteresisTwoPhaseLaw<BaseLaw>, BaseLaw>;
84 using GasOilLaw = SelectHystLaw<Traits::enableHysteresis, GasOilEpsLaw>;
85 using OilWaterLaw = SelectHystLaw<Traits::enableHysteresis, OilWaterEpsLaw>;
86 using GasWaterLaw = SelectHystLaw<Traits::enableHysteresis, GasWaterEpsLaw>;
88 using GasOilHystParams =
typename GasOilLaw::Params;
89 using OilWaterHystParams =
typename OilWaterLaw::Params;
90 using GasWaterHystParams =
typename GasWaterLaw::Params;
92 using GasOilEffectiveParamVector = std::vector<std::shared_ptr<GasOilEffectiveParams>>;
93 using OilWaterEffectiveParamVector = std::vector<std::shared_ptr<OilWaterEffectiveParams>>;
94 using GasWaterEffectiveParamVector = std::vector<std::shared_ptr<GasWaterEffectiveParams>>;