difference_mw_plus Subroutine

public subroutine difference_mw_plus(oil, mw_source, method, start, C, difference, plus_mw)

this subroutine … mayor igual a 12 o menor igual 14. denominator of equation to obtain C value directly

Arguments

Type IntentOptional Attributes Name
type(FluidData) :: oil
character(len=*), intent(in) :: mw_source
character(len=*), intent(in), optional :: method
logical :: start
real(kind=pr) :: C

C constants which is used in equation

real(kind=pr), intent(out) :: difference
real(kind=pr) :: plus_mw

calculated molecular weight of residual fraction


Calls

proc~~difference_mw_plus~2~~CallsGraph proc~difference_mw_plus~2 difference_mw_plus proc~best_linear_regression~3 Best_Linear_Regression proc~difference_mw_plus~2->proc~best_linear_regression~3 proc~limitline~3 LimitLine proc~difference_mw_plus~2->proc~limitline~3 proc~line_c60_max~2 Line_C60_max proc~difference_mw_plus~2->proc~line_c60_max~2 proc~select_method~2 select_method proc~difference_mw_plus~2->proc~select_method~2 proc~linear_regression~3 Linear_Regression proc~best_linear_regression~3->proc~linear_regression~3

Called by

proc~~difference_mw_plus~2~~CalledByGraph proc~difference_mw_plus~2 difference_mw_plus proc~get_c_or_m_plus get_C_or_m_plus proc~get_c_or_m_plus->proc~difference_mw_plus~2

Variables

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

output real variable. Slope of the best regression line.

real(kind=pr), public :: a_60
real(kind=pr), public :: a_best
real(kind=pr), public :: a_blr
real(kind=pr), public :: a_lim
real(kind=pr), public :: a_old
real(kind=pr), public :: b

output real variable. Intercept of the best regression line.

real(kind=pr), public :: b_60
real(kind=pr), public :: b_best
real(kind=pr), public :: b_blr
real(kind=pr), public :: b_lim
real(kind=pr), public :: b_old
integer, public :: c_max

output CN at which plus_z is reached, as the summation of single z(i) from the best linear distribution (blr)

integer, public :: c_max_60
integer, public :: c_max_blr
integer, public :: c_max_lim
integer, public, dimension(300) :: carbon_number_plus
real(kind=pr), public :: denom
real(kind=pr), public :: half
integer, public :: i
integer, public :: i_0
integer, public :: j
integer, public :: k
integer, public :: k_old
real(kind=pr), public, allocatable :: log_scn_z(:)

logarithm of corresponding mole fractions of scn cuts

integer, public :: n_best
integer, public :: n_init
real(kind=pr), public :: plus_mw_cal

calculated molecular weight of residual fraction

real(kind=pr), public :: plus_z

composition of residual fraction from input file

real(kind=pr), public, dimension(300) :: plus_z_i
real(kind=pr), public, dimension(300) :: product_z_mw_plus_i
real(kind=pr), public :: r2

output real variable. Square correlation coefficient.

real(kind=pr), public :: r2_best
real(kind=pr), public :: r2_old
real(kind=pr), public, allocatable :: scn_mw(:)

set to molecular weights calculated by

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

set of corresponding calculated mole fractions of scn cuts

real(kind=pr), public :: sum_def_comp_z_plus

compositions sum from (define component +1) to (plus component)

real(kind=pr), public :: sum_z
integer, public :: x_aux
real(kind=pr), public, allocatable :: x_blr(:)
real(kind=pr), public, allocatable :: y_blr(:)
real(kind=pr), public :: z_aux
real(kind=pr), public :: z_sum