estimate_critical_point Subroutine

private subroutine estimate_critical_point(model, i, nc, V_est, T_est)

Uses

  • proc~~estimate_critical_point~~UsesGraph proc~estimate_critical_point estimate_critical_point module~yaeos__equilibria_boundaries_pure_saturation yaeos__equilibria_boundaries_pure_saturation proc~estimate_critical_point->module~yaeos__equilibria_boundaries_pure_saturation linear_interpolation_module linear_interpolation_module module~yaeos__equilibria_boundaries_pure_saturation->linear_interpolation_module module~yaeos__constants yaeos__constants module~yaeos__equilibria_boundaries_pure_saturation->module~yaeos__constants module~yaeos__math_continuation yaeos__math_continuation module~yaeos__equilibria_boundaries_pure_saturation->module~yaeos__math_continuation module~yaeos__math_linalg yaeos__math_linalg module~yaeos__equilibria_boundaries_pure_saturation->module~yaeos__math_linalg module~yaeos__models_ar yaeos__models_ar module~yaeos__equilibria_boundaries_pure_saturation->module~yaeos__models_ar iso_fortran_env iso_fortran_env module~yaeos__constants->iso_fortran_env module~yaeos__math_continuation->module~yaeos__constants module~yaeos__math_continuation->module~yaeos__math_linalg module~yaeos__math_linalg->module~yaeos__constants module~yaeos__models_ar->module~yaeos__constants module~yaeos__models_base yaeos__models_base module~yaeos__models_ar->module~yaeos__models_base module~yaeos__substance yaeos__substance module~yaeos__models_base->module~yaeos__substance module~yaeos__substance->module~yaeos__constants

Arguments

Type IntentOptional Attributes Name
class(ArModel), intent(in) :: model
integer, intent(in) :: i
integer, intent(in) :: nc
real(kind=pr), intent(out) :: V_est
real(kind=pr), intent(out) :: T_est

Calls

proc~~estimate_critical_point~~CallsGraph proc~estimate_critical_point estimate_critical_point proc~psat_pure ArModel%Psat_pure proc~estimate_critical_point->proc~psat_pure proc~pressure ArModel%pressure proc~psat_pure->proc~pressure proc~solve_point_psat solve_point_psat proc~psat_pure->proc~solve_point_psat proc~volume~3 ArModel%volume proc~psat_pure->proc~volume~3 residual_helmholtz residual_helmholtz proc~pressure->residual_helmholtz get_v0 get_v0 proc~solve_point_psat->get_v0 none~isofugacity~2 isofugacity proc~solve_point_psat->none~isofugacity~2 proc~solve_system solve_system proc~solve_point_psat->proc~solve_system proc~volume~3->get_v0 interface~newton newton proc~volume~3->interface~newton proc~newton_1d newton_1d interface~newton->proc~newton_1d proc~lnfug_vt ArModel%lnfug_vt none~isofugacity~2->proc~lnfug_vt none~dgesv dgesv proc~solve_system->none~dgesv proc~lnfug_vt->residual_helmholtz

Called by

proc~~estimate_critical_point~~CalledByGraph proc~estimate_critical_point estimate_critical_point proc~find_critical_points_all_components find_critical_points_all_components proc~find_critical_points_all_components->proc~estimate_critical_point proc~init_pcsaft init_pcsaft proc~init_pcsaft->proc~find_critical_points_all_components

Variables

Type Visibility Attributes Name Initial
real(kind=pr), private :: P_sat
real(kind=pr), private :: T
real(kind=pr), private :: VL
real(kind=pr), private :: VV
real(kind=pr), private :: dT
integer, private :: iter
type(PurePsat), private :: psat
logical, private :: psat_converged
real(kind=pr), private :: ratio
real(kind=pr), private :: z(nc)