DmixHV Subroutine

public subroutine DmixHV(n, T, bi, B, dBi, dBij, D1, dD1i, dD1ij, ai, daidt, daidt2, Ge, GeT, GeT2, Gen, GeTn, Gen2, D, dDdT, dDdT2, dDi, dDidT, dDij)

DmixHV

Attractive parameter calculation for the Huron-Vidal mixing rule.

Description

This subroutine calculates the attractive parameter and its derivatives for a mixture using the Huron-Vidal mixing rule. The Huron-Vidal mixing rule combines the pure component parameters using an excess Gibbs energy model. The expression of the attractive parameter is:

Examples

References

Arguments

Type IntentOptional Attributes Name
real(kind=pr), intent(in) :: n(:)
real(kind=pr), intent(in) :: T
real(kind=pr), intent(in) :: bi(:)

Covolume parameter

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

mixture covolume parameter

real(kind=pr), intent(in) :: dBi(:)
real(kind=pr), intent(in) :: dBij(:,:)
real(kind=pr), intent(in) :: D1
real(kind=pr), intent(in) :: dD1i(:)
real(kind=pr), intent(in) :: dD1ij(:,:)
real(kind=pr), intent(in) :: ai(:)
real(kind=pr), intent(in) :: daidt(:)
real(kind=pr), intent(in) :: daidt2(:)
real(kind=pr), intent(in) :: Ge
real(kind=pr), intent(in) :: GeT
real(kind=pr), intent(in) :: GeT2
real(kind=pr), intent(in) :: Gen(:)
real(kind=pr), intent(in) :: GeTn(:)
real(kind=pr), intent(in) :: Gen2(:,:)
real(kind=pr), intent(out) :: D
real(kind=pr), intent(out) :: dDdT
real(kind=pr), intent(out) :: dDdT2
real(kind=pr), intent(out) :: dDi(:)
real(kind=pr), intent(out) :: dDidT(:)
real(kind=pr), intent(out) :: dDij(:,:)

Calls

proc~~dmixhv~~CallsGraph proc~dmixhv DmixHV proc~lamdba_hv lamdba_hv proc~dmixhv->proc~lamdba_hv

Called by

proc~~dmixhv~~CalledByGraph proc~dmixhv DmixHV proc~dmixhvnrtl HV_NRTL%DmixHVNRTL proc~dmixhvnrtl->proc~dmixhv proc~dmixhv~2 HV%DmixHV proc~dmixhv~2->proc~dmixhv

Variables

Type Visibility Attributes Name Initial
real(kind=pr), public :: L
real(kind=pr), public :: dL(size(n))
real(kind=pr), public :: dL2(size(n),size(n))
real(kind=pr), public :: f
real(kind=pr), public :: fdi(size(n))
real(kind=pr), public :: fdij(size(n),size(n))
real(kind=pr), public :: fdit(size(n))
real(kind=pr), public :: fdt
real(kind=pr), public :: fdt2
integer, public :: i
integer, public :: j
integer, public :: nc
real(kind=pr), public :: totn

Total number of moles