Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=pr), | public, | parameter | :: | lnK_min | = | 2.0_pr |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=pr), | public, | allocatable | :: | P(:) | |||
real(kind=pr), | public, | allocatable | :: | S(:) | |||
real(kind=pr), | public, | allocatable | :: | T(:) | |||
real(kind=pr), | public, | allocatable | :: | beta(:) |
Mole fraction between phase x and phase y |
||
integer, | public, | allocatable | :: | ns(:) | |||
real(kind=pr), | public, | allocatable | :: | w(:,:) |
Mole fraction of phase x |
||
real(kind=pr), | public, | allocatable | :: | x(:,:) |
Mole fraction of phase x |
||
real(kind=pr), | public, | allocatable | :: | y(:,:) |
Mole fraction of phase x |
Critical point interpolation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=pr), | intent(in) | :: | Xnew(:) |
New value of the variables |
||
real(kind=pr), | intent(in) | :: | Xold(:) |
Old value of the variables |
||
integer, | intent(in) | :: | idx(:) |
Index of the variables to interpolate |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ArModel), | intent(in) | :: | model | |||
real(kind=pr), | intent(in) | :: | z(:) | |||
real(kind=pr), | intent(in) | :: | x0(:) | |||
real(kind=pr), | intent(in) | :: | y0(:) | |||
real(kind=pr), | intent(in) | :: | w0(:) | |||
real(kind=pr), | intent(in) | :: | beta0 | |||
real(kind=pr), | intent(in) | :: | P0 | |||
real(kind=pr), | intent(in) | :: | T0 | |||
integer, | intent(in) | :: | ns0 | |||
real(kind=pr), | intent(in) | :: | dS0 | |||
integer, | intent(in) | :: | points |
Critical point detection
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=pr), | intent(inout) | :: | X(:) |
Vector of variables |
||
real(kind=pr), | intent(inout) | :: | dXdS(:) |
Variation of variables wrt S |
||
integer, | intent(inout) | :: | ns |
Number of specified variable |
||
real(kind=pr), | intent(inout) | :: | S |
Specification value |
||
real(kind=pr), | intent(inout) | :: | dS |
Step in specification |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=pr), | intent(in) | :: | z(:) | |||
real(kind=pr), | intent(in) | :: | Xvars(size(z)*2+3) | |||
real(kind=pr), | intent(out) | :: | x(size(z)) | |||
real(kind=pr), | intent(out) | :: | y(size(z)) | |||
real(kind=pr), | intent(out) | :: | w(size(z)) | |||
real(kind=pr), | intent(out) | :: | P | |||
real(kind=pr), | intent(out) | :: | T | |||
real(kind=pr), | intent(out) | :: | beta |
Function to solve at each point of a three phase envelope.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ArModel), | intent(in) | :: | model | |||
real(kind=pr), | intent(in) | :: | z(:) | |||
real(kind=pr), | intent(in) | :: | Xvars(:) |
Vector of variables |
||
integer, | intent(in) | :: | ns |
Number of specification |
||
real(kind=pr), | intent(in) | :: | S |
Specification value |
||
real(kind=pr), | intent(out) | :: | F(size(Xvars)) |
Vector of functions valuated |
||
real(kind=pr), | intent(out) | :: | df(size(Xvars),size(Xvars)) |
Jacobian matrix |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ArModel), | intent(in) | :: | model | |||
real(kind=pr), | intent(in) | :: | z(:) | |||
integer, | intent(in) | :: | ns | |||
real(kind=pr), | intent(in) | :: | S | |||
real(kind=pr), | intent(inout) | :: | X(:) | |||
real(kind=pr), | intent(out) | :: | F(:) | |||
real(kind=pr), | intent(out) | :: | dF(:,:) | |||
integer, | intent(inout) | :: | its | |||
integer, | intent(in) | :: | maxits |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | its | |||
real(kind=pr), | intent(inout) | :: | X(:) | |||
real(kind=pr), | intent(inout) | :: | dF(:,:) | |||
real(kind=pr), | intent(inout) | :: | dXdS(:) | |||
integer, | intent(inout) | :: | ns | |||
real(kind=pr), | intent(inout) | :: | dS |