pt_F_three_phases Subroutine

public subroutine pt_F_three_phases(model, z, Xvars, ns, S, F, df)

Function to solve at each point of a three phase envelope.

The vector of variables X corresponds to:

While the equations are:

Arguments

Type IntentOptional Attributes Name
class(ArModel), intent(in) :: model
real(kind=pr), intent(in) :: z(:)
real(kind=pr), intent(in) :: Xvars(:)

Vector of variables

integer, intent(in) :: ns

Number of specification

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

Specification value

real(kind=pr), intent(out) :: F(size(Xvars))

Vector of functions valuated

real(kind=pr), intent(out) :: df(size(Xvars),size(Xvars))

Jacobian matrix


Variables

Type Visibility Attributes Name Initial
real(kind=pr), public :: Kx((Size(Xvars)-3)/2)
real(kind=pr), public :: Ky((Size(Xvars)-3)/2)
real(kind=pr), public :: P
real(kind=pr), public :: T
real(kind=pr), public :: Vw
real(kind=pr), public :: Vx
real(kind=pr), public :: Vy
real(kind=pr), public :: beta
real(kind=pr), public, dimension((Size(Xvars)-3)/2, (Size(Xvars)-3)/2) :: dlnphi_dn_w
real(kind=pr), public, dimension((Size(Xvars)-3)/2, (Size(Xvars)-3)/2) :: dlnphi_dn_x
real(kind=pr), public, dimension((Size(Xvars)-3)/2, (Size(Xvars)-3)/2) :: dlnphi_dn_y
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dp_w
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dp_x
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dp_y
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dt_w
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dt_x
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: dlnphi_dt_y
real(kind=pr), public :: dwdKx((Size(Xvars)-3)/2)
real(kind=pr), public :: dwdKy((Size(Xvars)-3)/2)
real(kind=pr), public :: dwdb((Size(Xvars)-3)/2)
real(kind=pr), public :: dxdKx((Size(Xvars)-3)/2)
real(kind=pr), public :: dxdKy((Size(Xvars)-3)/2)
real(kind=pr), public :: dydKx((Size(Xvars)-3)/2)
real(kind=pr), public :: dydKy((Size(Xvars)-3)/2)
integer, public :: i
integer, public :: j
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: lnphi_w
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: lnphi_x
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: lnphi_y
integer, public :: nc
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: w
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: x
real(kind=pr), public, dimension((Size(Xvars)-3)/2) :: y