yaeos__equilibria_boundaries_auxiliar Module

Equilibria boundaries auxiliar module This module contains the auxiliar functions and subroutines used in the phase-boundaries calculations.



Subroutines

public subroutine detect_critical(nc, np, point, kinds_x, kind_w, binary_stop, Xold, X, dXdS, ns, dS, S, found_critical, Xc)

Detect if the system is close to a critical point.

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nc

Number of components in the mixture.

integer, intent(in) :: np

Number of main phases.

integer, intent(in) :: point

Point number in the phase boundary.

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

Kinds of the main phases.

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

Kind of the incipient phase.

logical, intent(in) :: binary_stop

If true, stop at the critical point if its a binary system.

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

Old vector of variables.

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

Vector of variables.

real(kind=pr), intent(inout) :: dXdS(:)

Sensitivity of the variables wrt the specification.

integer, intent(inout) :: ns

Number of the specified variable.

real(kind=pr), intent(inout) :: dS

Step size of the specification for the next point.

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

Specification value.

logical, intent(out) :: found_critical

If true, a critical point was found.

real(kind=pr) :: Xc(size(X))

Vector of variables at the critical point.

public subroutine get_z(alpha, z_0, z_inj, z, dzda)

Calculate the fluid composition based on an amount of addition of second fluid.

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=pr), intent(in) :: alpha

Addition percentaje

real(kind=pr), intent(in) :: z_0(:)
real(kind=pr), intent(in) :: z_inj(:)
real(kind=pr), intent(out) :: z(size(z_0))

New composition

real(kind=pr), intent(out), optional :: dzda(size(z_0))

Derivative wrt