38template <
class Scalar,
class Flu
idSystem>
46 template <
class Flu
idState,
class Params,
class LhsEval =
typename Flu
idState::Scalar>
47 static LhsEval
LBC(
const FluidState& fluidState,
51 const Scalar MPa_atm = 0.101325;
52 const Scalar R = 8.3144598e-3;
53 const auto& T = Opm::decay<LhsEval>(fluidState.temperature(phaseIdx));
54 const auto& rho = Opm::decay<LhsEval>(fluidState.density(phaseIdx));
57 LhsEval sumVolume = 0.0;
58 for (
unsigned compIdx = 0; compIdx < FluidSystem::numComponents; ++compIdx) {
59 const Scalar& p_c = FluidSystem::criticalPressure(compIdx)/1e6;
60 const Scalar& T_c = FluidSystem::criticalTemperature(compIdx);
61 const Scalar Mm = FluidSystem::molarMass(compIdx) * 1000;
62 const auto& x = Opm::decay<LhsEval>(fluidState.moleFraction(phaseIdx, compIdx));
63 const Scalar v_c = FluidSystem::criticalVolume(compIdx);
68 LhsEval rho_pc = sumMm/sumVolume;
69 LhsEval rho_r = rho/rho_pc;
72 LhsEval xsum_T_c = 0.0;
73 LhsEval xsum_Mm = 0.0;
74 LhsEval xsum_p_ca = 0.0;
75 for (
unsigned compIdx = 0; compIdx < FluidSystem::numComponents; ++compIdx) {
76 const Scalar& p_c = FluidSystem::criticalPressure(compIdx)/1e6;
77 const Scalar& T_c = FluidSystem::criticalTemperature(compIdx);
78 const Scalar Mm = FluidSystem::molarMass(compIdx) * 1000;
79 const auto& x = Opm::decay<LhsEval>(fluidState.moleFraction(phaseIdx, compIdx));
80 Scalar p_ca = p_c / MPa_atm;
89 for (
unsigned compIdx = 0; compIdx < FluidSystem::numComponents; ++compIdx) {
90 const Scalar& p_c = FluidSystem::criticalPressure(compIdx)/1e6;
91 const Scalar& T_c = FluidSystem::criticalTemperature(compIdx);
92 const Scalar Mm = FluidSystem::molarMass(compIdx) * 1000;
93 const auto& x = Opm::decay<LhsEval>(fluidState.moleFraction(phaseIdx, compIdx));
94 Scalar p_ca = p_c / MPa_atm;
100 mys = 34.0e-5*
Opm::pow(T_r,0.94)/zeta;
102 mys = 17.78e-5*
Opm::pow(4.58*T_r - 1.67, 0.625)/zeta;
109 std::vector<Scalar>
LBC = {0.10230,
115 LhsEval sumLBC = 0.0;
116 for (
int i = 0; i < 5; ++i) {
120 return (my0 + (
Opm::pow(sumLBC,4.0) - 1e-4)/zeta_tot)/1e3;
static LhsEval LBC(const FluidState &fluidState, const Params &, unsigned phaseIdx)
Definition: LBC.hpp:47
Definition: Air_Mesitylene.hpp:34
ReturnEval_< Evaluation1, Evaluation2 >::type pow(const Evaluation1 &base, const Evaluation2 &exp)
Definition: MathToolbox.hpp:416