yaeos__equilibria_boundaries_pure_saturation Module


Uses

  • module~~yaeos__equilibria_boundaries_pure_saturation~~UsesGraph module~yaeos__equilibria_boundaries_pure_saturation 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

Used by

  • module~~yaeos__equilibria_boundaries_pure_saturation~~UsedByGraph module~yaeos__equilibria_boundaries_pure_saturation yaeos__equilibria_boundaries_pure_saturation module~yaeos__equilibria yaeos__equilibria module~yaeos__equilibria->module~yaeos__equilibria_boundaries_pure_saturation proc~refit_rkpr_k refit_rkpr_k proc~refit_rkpr_k->module~yaeos__equilibria_boundaries_pure_saturation module~yaeos yaeos module~yaeos->module~yaeos__equilibria

Derived Types

type, public ::  PurePsat

Components

Type Visibility Attributes Name Initial
real(kind=pr), public, allocatable :: P(:)

Pressure [Pa]

real(kind=pr), public, allocatable :: T(:)

Temperature [K]

real(kind=pr), public, allocatable :: Vx(:)

Molar volume [L/mol] in the liquid phase

real(kind=pr), public, allocatable :: Vy(:)

Molar volume [L/mol] in the vapor phase

type(linear_interp_1d), private :: interpolator_get_P
type(linear_interp_1d), private :: interpolator_get_T

Type-Bound Procedures

procedure, public :: get_P
procedure, public :: get_T

Functions

public function get_P(pt, T) result(P)

Get the saturation pressure for a given temperature.

Read more…

Arguments

Type IntentOptional Attributes Name
class(PurePsat), intent(inout) :: pt
real(kind=pr), intent(in) :: T

Return Value real(kind=pr)

public function get_T(pt, P) result(T)

Get the saturation temperature for a given pressure.

Read more…

Arguments

Type IntentOptional Attributes Name
class(PurePsat), intent(inout) :: pt
real(kind=pr), intent(in) :: P

Return Value real(kind=pr)

public function pure_saturation_line(model, component, minP, minT) result(pt)

Saturation pressures and temperatures for a pure component.

Read more…

Arguments

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

Thermodyanmic model

integer, intent(in) :: component

Component index to calculate the line

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

Minimum pressure [bar]

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

Minimum temperature [K]

Return Value type(PurePsat)


Subroutines

public subroutine solve_point(model, ncomp, nc, X, ns, S, F, dF, dFdS, its)

Solve a saturation point for a pure component.

Read more…

Arguments

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

Thermodynamic model

integer, intent(in) :: ncomp

Component index

integer, intent(in) :: nc

Total number of components

real(kind=pr), intent(inout) :: X(4)

Variables

integer, intent(in) :: ns

Variable index to solve. If the

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

Variable value specified to solve

real(kind=pr), intent(out) :: F(4)

Function

real(kind=pr), intent(out) :: dF(4,4)

Jacobian

real(kind=pr), intent(out) :: dFdS(4)

Derivative of the function with respect to S

integer, intent(out) :: its

Number of iterations