yaeos__models_ge Module

Excess Gibbs Models.



Abstract Interfaces

abstract interface

  • public subroutine excess_gibbs(self, n, T, Ge, GeT, GeT2, Gen, GeTn, Gen2)

    Calculate Excess Gibbs and its derivatives.

    Arguments

    Type IntentOptional Attributes Name
    class(GeModel), intent(in) :: self

    Model

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

    Moles vector

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

    Temperature [K]

    real(kind=pr), intent(out), optional :: Ge

    Excess Gibbs free energy

    real(kind=pr), intent(out), optional :: GeT

    real(kind=pr), intent(out), optional :: GeT2

    real(kind=pr), intent(out), optional :: Gen(size(n))

    real(kind=pr), intent(out), optional :: GeTn(size(n))

    real(kind=pr), intent(out), optional :: Gen2(size(n),size(n))


Derived Types

type, public, abstract, extends(BaseModel) ::  GeModel

Excess Gibbs energy model.

Components

Type Visibility Attributes Name Initial
type(Substances), public :: components

Substances contained in the module

Type-Bound Procedures

procedure, public :: excess_enthalpy
procedure, public :: excess_entropy
procedure(excess_gibbs), public, deferred :: excess_gibbs
procedure, public :: ln_activity_coefficient

Subroutines

public subroutine excess_enthalpy(self, n, T, He, HeT, Hen)

Calculate Excess enthalpy and its derivatives.

Read more…

Arguments

Type IntentOptional Attributes Name
class(GeModel), intent(in) :: self

Model

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

Moles vector

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

Temperature [K]

real(kind=pr), intent(out), optional :: He

Excess enthalpy

real(kind=pr), intent(out), optional :: HeT

real(kind=pr), intent(out), optional :: Hen(:)

public subroutine excess_entropy(self, n, T, Se, SeT, Sen)

Calculate Excess entropy and its derivatives.

Read more…

Arguments

Type IntentOptional Attributes Name
class(GeModel), intent(in) :: self

Model

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

Moles vector

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

Temperature [K]

real(kind=pr), intent(out), optional :: Se

Excess entropy

real(kind=pr), intent(out), optional :: SeT

real(kind=pr), intent(out), optional :: Sen(:)

public subroutine ln_activity_coefficient(self, n, T, lngamma, dlngammadT, dlngammadn)

Calculate natural logarithm of activity coefficients.

Read more…

Arguments

Type IntentOptional Attributes Name
class(GeModel), intent(in) :: self

Model

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

Moles vector

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

Temperature [K]

real(kind=pr), intent(out), optional :: lngamma(:)

Natural logarithm of activity coefficients

real(kind=pr), intent(out), optional :: dlngammadT(size(n))

real(kind=pr), intent(out), optional :: dlngammadn(size(n),size(n))