Opm::PengRobinson< Scalar > Class Template Reference Implements the Peng-Robinson equation of state for liquids and gases. More...
Detailed Descriptiontemplate<class Scalar> class Opm::PengRobinson< Scalar > Implements the Peng-Robinson equation of state for liquids and gases. See: D.-Y. Peng, D.B. Robinson: A new two-constant equation of state, Industrial & Engineering Chemistry Fundamentals, 1976, 15 (1), pp. 59–64 R. Reid, et al.: The Properties of Gases and Liquids, 4th edition, McGraw-Hill, 1987, pp. 42-44, 82 Member Function Documentation◆ ambroseWalton_()
template<class Scalar >
template<class Evaluation , class Params >
The Ambrose-Walton method to estimate the vapor pressure.
See: D. Ambrose, J. Walton: "Vapor Pressures up to Their Critical Temperatures of Normal Alkanes and 1-Alkanols", Pure Appl. Chem., 61, 1395-1403, 1989 References Opm::Component< ScalarT, Implementation >::acentricFactor(), Opm::Component< ScalarT, Implementation >::criticalPressure(), Opm::Component< ScalarT, Implementation >::criticalTemperature(), Opm::exp(), Opm::pow(), and Opm::sqrt(). Referenced by Opm::PengRobinson< Scalar >::computeVaporPressure(). ◆ computeFugacity()
template<class Scalar >
template<class Evaluation , class Params >
Returns the fugacity coefficient for a given pressure and molar volume. This is the fugacity coefficient times the pressure. The mole fraction of a component in a pure fluid is obviously always 100%, so it is not required.
◆ computeFugacityCoeffient()
template<class Scalar >
template<class Evaluation , class Params >
Returns the fugacity coefficient for a given pressure and molar volume. This is the same value as computeFugacity() because the mole fraction of a component in a pure fluid is obviously always 100%.
References Opm::exp(), Opm::pow(), and Opm::sqrt(). ◆ computeMolarVolume()
template<class Scalar >
template<class FluidState , class Params >
Computes molar volumes where the Peng-Robinson EOS is true. References Opm::abs(), Opm::Valgrind::CheckDefined(), Opm::cubicRoots(), Opm::PengRobinson< Scalar >::findExtrema_(), Opm::PengRobinson< Scalar >::handleCriticalFluid_(), Opm::isfinite(), Opm::max(), Opm::min(), Opm::scalarValue(), and Opm::Valgrind::SetUndefined(). Referenced by Opm::PTFlashParameterCache< Scalar, FluidSystem >::updateMolarVolume_(), and Opm::Spe5ParameterCache< Scalar, FluidSystem >::updateMolarVolume_(). ◆ computeVaporPressure()
template<class Scalar >
template<class Evaluation , class Params >
Predicts the vapor pressure for the temperature given in setTP(). Initially, the vapor pressure is roughly estimated by using the Ambrose-Walton method, then the Newton method is used to make difference between the gas and liquid phase fugacity zero. References Opm::abs(), Opm::PengRobinson< Scalar >::ambroseWalton_(), Opm::Component< ScalarT, Implementation >::criticalPressure(), Opm::Component< ScalarT, Implementation >::criticalTemperature(), Opm::PengRobinson< Scalar >::fugacityDifference_(), and Opm::scalarValue(). ◆ findCriticalPoint_()
template<class Scalar >
template<class Evaluation >
References Opm::abs(), Opm::PengRobinson< Scalar >::findExtrema_(), Opm::isfinite(), and Opm::scalarValue(). Referenced by Opm::PengRobinson< Scalar >::handleCriticalFluid_(). ◆ findExtrema_()
template<class Scalar >
template<class Evaluation >
References Opm::abs(), Opm::isfinite(), and Opm::scalarValue(). Referenced by Opm::PengRobinson< Scalar >::computeMolarVolume(), and Opm::PengRobinson< Scalar >::findCriticalPoint_(). ◆ fugacityDifference_()
template<class Scalar >
template<class Evaluation , class Params >
Returns the difference between the liquid and the gas phase fugacities in [bar].
Referenced by Opm::PengRobinson< Scalar >::computeVaporPressure(). ◆ handleCriticalFluid_()
template<class Scalar >
template<class FluidState , class Params , class Evaluation = typename FluidState::Scalar>
References Opm::PengRobinson< Scalar >::findCriticalPoint_(), Opm::max(), and Opm::min(). Referenced by Opm::PengRobinson< Scalar >::computeMolarVolume(). ◆ init()
template<class Scalar >
Referenced by Opm::Spe5FluidSystem< Scalar >::init(). The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||