pt_mp_flash Function

public function pt_mp_flash(model, z, P, T)

pt_mp_flash

Perform a multiphase flash calculation at constant zPT.

Description

This method will do stability analysis to detect the possibility of new phases. For each new phase detected it will calculate a multiphase flash and repeat stability analysis until no new phases are detected.

Examples


References

Arguments

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

Return Value type(MPEquilibriumState)


Variables

Type Visibility Attributes Name Initial
real(kind=pr), public, allocatable :: F(:)
real(kind=pr), public :: K(max_phases,size(z))
real(kind=pr), public :: S1
real(kind=pr), public :: S2
real(kind=pr), public, allocatable :: X(:)
real(kind=pr), public :: all_minima(size(z),size(z))
real(kind=pr), public :: beta0
integer, public :: beta_0_index
real(kind=pr), public, allocatable :: betas(:)
integer, public :: iters
character(len=14), public :: kind_w
character(len=14), public :: kinds_x(max_phases)
logical, public :: less_phases
integer, public :: max_iters
integer, public, parameter :: max_phases = 4
real(kind=pr), public :: mintpd
real(kind=pr), public :: mintpd_w
real(kind=pr), public :: mintpd_xl1
integer, public :: nc
integer, public :: np
integer, public :: ns1
integer, public :: ns2
real(kind=pr), public :: w(size(z))
real(kind=pr), public :: w_stab(size(z))
real(kind=pr), public :: x_l(max_phases,size(z))