RKPR Function

public function RKPR(tc, pc, w, zc, kij, lij, delta_1, k) result(model)

RKPR Equation of State

The RKPR EoS extends the classical formulation of Cubic Equations of State by freeing the parameter . This extra degree provides extra ways of implementing the equation in comparison of other Cubic EoS (like PR and SRK) which are limited to definition of their critical constants.

Besides that extra parameter, the RKRR includes another function:

In this implementation we take the simplest form which correlates the extra parameter to the critical compressibility factor and the parameter of the function to and :

Arguments

Type IntentOptional Attributes Name
real(kind=pr), intent(in) :: tc(:)

Critical Temperature [K]

real(kind=pr), intent(in) :: pc(:)

Critical Pressure [bar]

real(kind=pr), intent(in) :: w(:)

Acentric Factor

real(kind=pr), intent(in) :: zc(:)

Critical compressibility

real(kind=pr), intent(in), optional :: kij(:,:)

k_{ij} matrix

real(kind=pr), intent(in), optional :: lij(:,:)

l_{ij} matrix

real(kind=pr), intent(in), optional :: delta_1(:)
real(kind=pr), intent(in), optional :: k(:)

Return Value type(CubicEoS)


Variables

Type Visibility Attributes Name Initial
real(kind=pr), private, parameter :: A0 = 0.0017
real(kind=pr), private, parameter :: A1 = -2.4407
real(kind=pr), private, parameter :: B0 = 1.9681
real(kind=pr), private, parameter :: B1 = 7.4513
real(kind=pr), private, parameter :: C0 = -2.6238
real(kind=pr), private, parameter :: C1 = 12.504
real(kind=pr), private :: OMa(size(pc))
real(kind=pr), private :: OMb(size(pc))
real(kind=pr), private :: Zc_eos(size(pc))
type(AlphaRKPR), private :: alpha
type(Substances), private :: composition
real(kind=pr), private, parameter :: d1 = 0.428364
real(kind=pr), private, parameter :: d2 = 18.496215
real(kind=pr), private, parameter :: d3 = 0.338426
real(kind=pr), private, parameter :: d4 = 0.66
real(kind=pr), private, parameter :: d5 = 789.723105
real(kind=pr), private, parameter :: d6 = 2.512392
integer, private :: i
type(QMR_RKPR), private :: mixrule
integer, private :: nc