init_pcsaft Function

public function init_pcsaft(m, sigma, epsilon_k, kij) result(model)

Uses

  • proc~~init_pcsaft~~UsesGraph proc~init_pcsaft init_pcsaft module~yaeos__critical_pure_point_solver yaeos__critical_pure_point_solver proc~init_pcsaft->module~yaeos__critical_pure_point_solver module~yaeos__equilibria_critical yaeos__equilibria_critical proc~init_pcsaft->module~yaeos__equilibria_critical module~yaeos__constants yaeos__constants module~yaeos__critical_pure_point_solver->module~yaeos__constants module~yaeos__models_ar yaeos__models_ar module~yaeos__critical_pure_point_solver->module~yaeos__models_ar module~yaeos__equilibria_critical->module~yaeos__constants module~yaeos__equilibria_equilibrium_state yaeos__equilibria_equilibrium_state module~yaeos__equilibria_critical->module~yaeos__equilibria_equilibrium_state module~yaeos__equilibria_critical->module~yaeos__models_ar iso_fortran_env iso_fortran_env module~yaeos__constants->iso_fortran_env module~yaeos__equilibria_equilibrium_state->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
real(kind=8), intent(in) :: m(:)

Number of segments

real(kind=8), intent(in) :: sigma(:)

Segment diameter [Angstrom]

real(kind=8), intent(in) :: epsilon_k(:)

Energy / k_B [K]

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

Binary interaction parameters (optional)

Return Value type(PCSAFT)


Calls

proc~~init_pcsaft~~CallsGraph proc~init_pcsaft init_pcsaft proc~find_critical_points_all_components find_critical_points_all_components proc~init_pcsaft->proc~find_critical_points_all_components proc~psat_pure ArModel%Psat_pure proc~init_pcsaft->proc~psat_pure proc~estimate_critical_point estimate_critical_point proc~find_critical_points_all_components->proc~estimate_critical_point proc~solve_critical_point solve_critical_point proc~find_critical_points_all_components->proc~solve_critical_point 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 proc~estimate_critical_point->proc~psat_pure residual_helmholtz residual_helmholtz proc~pressure->residual_helmholtz proc~jacobian_critical_eqs jacobian_critical_eqs proc~solve_critical_point->proc~jacobian_critical_eqs proc~residual_critical_eqs residual_critical_eqs proc~solve_critical_point->proc~residual_critical_eqs 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 proc~jacobian_critical_eqs->proc~residual_critical_eqs proc~residual_critical_eqs->proc~pressure none~dgesv dgesv proc~solve_system->none~dgesv proc~lnfug_vt->residual_helmholtz

Variables

Type Visibility Attributes Name Initial
real(kind=pr), public :: P_sat_i
real(kind=pr), public :: Pc(size(m))
real(kind=pr), public :: Tc(size(m))
real(kind=pr), public :: Vc(size(m))
real(kind=pr), public :: Vl
real(kind=pr), public :: Vv
logical, public :: converged(size(m))
integer, public :: i
integer, public :: nc
real(kind=pr), public :: w(size(m))