Merge pull request #280 from andlaus/fix_fluidstate_getters2

fix Opm::getInvB_(fluidState) once more
This commit is contained in:
Andreas Lauser 2018-01-22 16:09:48 +01:00 committed by GitHub
commit b86664f3a9
2 changed files with 11 additions and 15 deletions

View File

@ -50,13 +50,14 @@ unsigned getPvtRegionIndex_(typename std::enable_if<!HasMember_pvtRegionIndex<Fl
const FluidState&>::type fluidState OPM_UNUSED)
{ return 0; }
OPM_GENERATE_HAS_MEMBER(invB, ) // Creates 'HasMember_invB<T>'.
OPM_GENERATE_HAS_MEMBER(invB, /*phaseIdx=*/0) // Creates 'HasMember_invB<T>'.
template <class FluidSystem, class FluidState, class LhsEval>
LhsEval getInvB_(typename std::enable_if<HasMember_invB<FluidState>::value,
const FluidState&>::type fluidState,
unsigned phaseIdx,
unsigned pvtRegionIdx OPM_UNUSED)
auto getInvB_(typename std::enable_if<HasMember_invB<FluidState>::value,
const FluidState&>::type fluidState,
unsigned phaseIdx,
unsigned pvtRegionIdx OPM_UNUSED)
-> decltype(Opm::decay<LhsEval>(fluidState.invB(phaseIdx)))
{ return Opm::decay<LhsEval>(fluidState.invB(phaseIdx)); }
template <class FluidSystem, class FluidState, class LhsEval>

View File

@ -62,11 +62,8 @@ LhsEval getRs_(typename std::enable_if<!HasMember_Rs<FluidState>::value, const F
template <class FluidSystem, class FluidState, class LhsEval>
auto getRs_(typename std::enable_if<HasMember_Rs<FluidState>::value, const FluidState&>::type fluidState,
unsigned regionIdx OPM_UNUSED)
-> decltype(Opm::MathToolbox<typename FluidState::Scalar>
::template decay<LhsEval>(fluidState.Rs()))
{
return Opm::decay<LhsEval>(fluidState.Rs());
}
-> decltype(Opm::decay<LhsEval>(fluidState.Rs()))
{ return Opm::decay<LhsEval>(fluidState.Rs()); }
template <class FluidSystem, class FluidState, class LhsEval>
LhsEval getRv_(typename std::enable_if<!HasMember_Rv<FluidState>::value, const FluidState&>::type fluidState,
@ -81,11 +78,9 @@ LhsEval getRv_(typename std::enable_if<!HasMember_Rv<FluidState>::value, const F
template <class FluidSystem, class FluidState, class LhsEval>
auto getRv_(typename std::enable_if<HasMember_Rv<FluidState>::value, const FluidState&>::type fluidState,
unsigned regionIdx OPM_UNUSED)
-> decltype(Opm::MathToolbox<typename FluidState::Scalar>
::template decay<LhsEval>(fluidState.Rv()))
{
return Opm::decay<LhsEval>(fluidState.Rv());
}
-> decltype(Opm::decay<LhsEval>(fluidState.Rv()))
{ return Opm::decay<LhsEval>(fluidState.Rv()); }
}
namespace FluidSystems {