solve_point Subroutine

private subroutine solve_point(model, z0, zi, np, T, beta_w, X, ns, S, dXdS, F, df, iters, max_iterations)

solve_point

Solve the system of equations for a multiphase point.

Description

Solves the point of a multiphase system using the Newton-Raphson method. The system of equations is defined in px_F_NP

Type Bound

PXEnvelMP

Arguments

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

Model to use.

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

First mixture composition.

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

Second mixture composition.

integer, intent(in) :: np

Number of main phases

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

Temperature [K]

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

Fraction of the reference (incipient) phase

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

Vector of variables

integer, intent(in) :: ns

Number of specification

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

Specification value

real(kind=pr), intent(in) :: dXdS(size(X))

Sensitivity of the variables wrt the specification

real(kind=pr), intent(out) :: F(size(X))

Vector of functions valuated

real(kind=pr), intent(out) :: df(size(X),size(X))

Jacobian matrix

integer, intent(out) :: iters

Number of iterations needed to converge the point

integer, intent(in) :: max_iterations

Maximum number of iterations to solve the point


Variables

Type Visibility Attributes Name Initial
real(kind=pr), private :: X0(size(X))
real(kind=pr), private :: dX(size(X))
integer, private :: iP
integer, private :: ia
integer, private :: nc