solve_TP Subroutine

public subroutine solve_TP(model, kind, z, X, ns, S, tol, max_iterations, its)

Uses

  • proc~~solve_tp~~UsesGraph proc~solve_tp solve_TP module~nonlinear_solvers nonlinear_solvers proc~solve_tp->module~nonlinear_solvers module~yaeos__math yaeos__math proc~solve_tp->module~yaeos__math module~yaeos__math_nonlinearsolvers yaeos__math_nonlinearsolvers proc~solve_tp->module~yaeos__math_nonlinearsolvers module~yaeos__constants yaeos__constants module~nonlinear_solvers->module~yaeos__constants module~yaeos__math_linalg yaeos__math_linalg module~nonlinear_solvers->module~yaeos__math_linalg module~yaeos__math->module~yaeos__constants module~yaeos__math_continuation yaeos__math_continuation module~yaeos__math->module~yaeos__math_continuation module~yaeos__math->module~yaeos__math_linalg module~yaeos__math_nonlinearsolvers->module~yaeos__constants module~yaeos__math_nonlinearsolvers->module~yaeos__math_linalg 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

Arguments

Type IntentOptional Attributes Name
class(ArModel), intent(in) :: model
character(len=*), intent(in) :: kind
real(kind=pr), intent(in) :: z(:)
real(kind=pr), intent(inout) :: X(:)
integer, intent(in) :: ns
real(kind=pr), intent(in) :: S
real(kind=pr), intent(in) :: tol
integer, intent(in) :: max_iterations
integer, intent(out) :: its

Calls

proc~~solve_tp~~CallsGraph proc~solve_tp solve_TP none~wrap~2 wrap proc~solve_tp->none~wrap~2 proc~newton newton proc~solve_tp->proc~newton proc~saturation_tp saturation_TP none~wrap~2->proc~saturation_tp proc~solve_system solve_system proc~newton->proc~solve_system proc~lnphi_pt ArModel%lnphi_pt proc~saturation_tp->proc~lnphi_pt none~dgesv dgesv proc~solve_system->none~dgesv proc~lnphi_vt ArModel%lnphi_vt proc~lnphi_pt->proc~lnphi_vt proc~volume~3 ArModel%volume proc~lnphi_pt->proc~volume~3 residual_helmholtz residual_helmholtz proc~lnphi_vt->residual_helmholtz get_v0 get_v0 proc~volume~3->get_v0 interface~newton newton proc~volume~3->interface~newton proc~newton_1d newton_1d interface~newton->proc~newton_1d

Called by

proc~~solve_tp~~CalledByGraph proc~solve_tp solve_TP proc~saturation_pressure saturation_pressure proc~saturation_pressure->proc~solve_tp proc~saturation_temperature saturation_temperature proc~saturation_temperature->proc~solve_tp

Variables

Type Visibility Attributes Name Initial
real(kind=pr), public :: F(size(X))
real(kind=pr), public :: G(size(X))
real(kind=pr), public :: H(size(X))
real(kind=pr), public :: Jp(size(X))
real(kind=pr), public :: X0(size(X))
real(kind=pr), public :: Xnew(size(X))
real(kind=pr), public :: alpha
real(kind=pr), public :: dF(size(X),size(X))
real(kind=pr), public :: dFdS(size(X))
real(kind=pr), public :: dG(size(X),size(X))
real(kind=pr), public :: dH(size(X),size(X))
real(kind=pr), public :: dx(size(X))
real(kind=pr), public :: grad_phi_p
integer, public :: info
integer, public :: nc
real(kind=pr), public :: phi_ax
real(kind=pr), public :: phi_x
real(kind=pr), public :: t

Subroutines

subroutine wrap(X, F, J)

Arguments

Type IntentOptional Attributes Name
real(kind=pr), intent(in) :: X(:)
real(kind=pr), intent(out) :: F(:)
real(kind=pr), intent(out) :: J(:,:)