ScalarProperty Derived Type

type, public, extends(Property) :: ScalarProperty

Scalar property.

A property with a single scalar value, like a critical constant.


Inherits

type~~scalarproperty~~InheritsGraph type~scalarproperty ScalarProperty type~property Property type~scalarproperty->type~property

Inherited by

type~~scalarproperty~~InheritedByGraph type~scalarproperty ScalarProperty type~criticalconstants CriticalConstants type~criticalconstants->type~scalarproperty critical_pressure, critical_temperature, critical_volume, acentric_factor type~substance Substance type~substance->type~scalarproperty parachor, mathiascopeman type~substance->type~criticalconstants critical

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: name

Property’s name

character(len=:), public, allocatable :: units

Units

real(kind=pr), public :: value

Property value


Type-Bound Procedures

procedure, public :: from_json => scalar_from_json

  • public impure elemental subroutine scalar_from_json(self, name, json_str, path)

    Setup a scalar property from a provided json key and json file path.

    Arguments

    Type IntentOptional Attributes Name
    class(ScalarProperty), intent(inout) :: self
    character(len=*), intent(in) :: name

    Property name. Should be the key in the json file.

    character(len=*), intent(in) :: json_str

    json file relative path to executable.

    character(len=*), intent(in), optional :: path

    json file relative path to executable.