pt_F_NP Subroutine

public subroutine pt_F_NP(model, z, np, kinds_x, kind_w, X, ns1, S1, ns2, S2, F, df)

Function to solve at each point of a multi-phase envelope.

Arguments

Type IntentOptional Attributes Name
class(ArModel), intent(in) :: model

Model to use.

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

Mixture global composition.

integer, intent(in) :: np

Number of main phases.

character(len=14), intent(in) :: kinds_x(np)

Kind of the main phases.

character(len=14), intent(in) :: kind_w

Kind of the reference phase.

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

Vector of variables.

integer, intent(in) :: ns1

Number of first specification.

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

First specification value.

integer, intent(in) :: ns2

Number of second specification.

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

Second specification value.

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

Vector of functions valuated.

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

Jacobian matrix.


Variables

Type Visibility Attributes Name Initial
real(kind=pr), public :: K(np,size(z))
real(kind=pr), public :: P
real(kind=pr), public :: T
real(kind=pr), public :: Vl(np)
real(kind=pr), public :: Vw
real(kind=pr), public :: beta_w
real(kind=pr), public :: betas(np)
real(kind=pr), public :: denom(size(z))
real(kind=pr), public :: denomdlnK(np,size(z),size(z))
real(kind=pr), public, dimension(size(z), size(z)) :: dlnphi_dn
real(kind=pr), public, dimension(np, size(z), size(z)) :: dlnphi_dn_l
real(kind=pr), public, dimension(size(z), size(z)) :: dlnphi_dn_w
real(kind=pr), public :: dlnphi_dp(size(z))
real(kind=pr), public, dimension(np, size(z)) :: dlnphi_dp_l
real(kind=pr), public, dimension(size(z)) :: dlnphi_dp_w
real(kind=pr), public :: dlnphi_dt(size(z))
real(kind=pr), public, dimension(np, size(z)) :: dlnphi_dt_l
real(kind=pr), public, dimension(size(z)) :: dlnphi_dt_w
real(kind=pr), public :: dwdb(np,size(z))
real(kind=pr), public :: dwdbw(size(z))
real(kind=pr), public :: dwdlnK(np,size(z))
real(kind=pr), public :: dx_l_dlnK(np,np,size(z))
integer, public :: i
integer, public :: idx_1
integer, public :: idx_2
integer, public :: j
integer, public :: l
integer, public :: lb
real(kind=pr), public :: lnphi(size(z))
real(kind=pr), public, dimension(np, size(z)) :: lnphi_l
real(kind=pr), public, dimension(size(z)) :: lnphi_w
real(kind=pr), public :: moles(size(z))
integer, public :: nc
integer, public :: phase
integer, public :: ub
real(kind=pr), public, dimension(size(z)) :: w
real(kind=pr), public, dimension(np, size(z)) :: x_l