Define the abstract equation of state (EOS) for FORESEER library.
Abstract interfaces of deferred methods of eos_object.
Operator =.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(inout) | :: | lhs | Left hand side. |
||
| class(eos_object), | intent(in) | :: | rhs | Right hand side. |
Abstract interfaces of deferred methods of eos_object.
Return density.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| real(kind=R8P), | intent(in), | optional | :: | energy | Specific internal energy value. |
|
| real(kind=R8P), | intent(in), | optional | :: | pressure | Pressure value. |
|
| real(kind=R8P), | intent(in), | optional | :: | speed_of_sound | Speed of sound value. |
|
| real(kind=R8P), | intent(in), | optional | :: | temperature | Temperature value. |
Density value.
Abstract interfaces of deferred methods of eos_object.
Return a pretty-formatted object description.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| character(len=*), | intent(in), | optional | :: | prefix | Prefixing string. |
Description.
Abstract interfaces of deferred methods of eos_object.
Return specific internal energy.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| real(kind=R8P), | intent(in), | optional | :: | density | Density value. |
|
| real(kind=R8P), | intent(in), | optional | :: | pressure | Pressure value. |
|
| real(kind=R8P), | intent(in), | optional | :: | temperature | Temperature value. |
Energy value.
Abstract interfaces of deferred methods of eos_object.
Return pressure.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| real(kind=R8P), | intent(in), | optional | :: | density | Density value. |
|
| real(kind=R8P), | intent(in), | optional | :: | energy | Specific internal energy value. |
|
| real(kind=R8P), | intent(in), | optional | :: | temperature | Temperature value. |
Pressure value.
Abstract interfaces of deferred methods of eos_object.
Return a scalar real value by only self data.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
Scalar value.
Abstract interfaces of deferred methods of eos_object.
Return speed of sound.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| real(kind=R8P), | intent(in) | :: | density | Density value. |
||
| real(kind=R8P), | intent(in) | :: | pressure | Pressure value. |
Speed of sound value.
Abstract interfaces of deferred methods of eos_object.
Return temperature.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(eos_object), | intent(in) | :: | self | Equation of state. |
||
| real(kind=R8P), | intent(in), | optional | :: | density | Density value. |
|
| real(kind=R8P), | intent(in), | optional | :: | energy | Specific internal energy value. |
|
| real(kind=R8P), | intent(in), | optional | :: | pressure | Pressure value. |
Temperature value.
Equation of State (EOS) object class.
| procedure(scalar_interface), public, pass(self) :: R | Return fluid constant |
| generic, public :: assignment(=) => eos_assign_eos | Overload |
| procedure(scalar_interface), public, pass(self) :: cp | Return specific heat at constant pressure. |
| procedure(scalar_interface), public, pass(self) :: cv | Return specific heat at constant volume. |
| procedure(scalar_interface), public, pass(self) :: delta | Return |
| procedure(density_interface), public, pass(self) :: density | Return density. |
| procedure(description_interface), public, pass(self) :: description | Return pretty-printed object description. |
| procedure(energy_interface), public, pass(self) :: energy | Return specific internal energy. |
| procedure(assignment_interface), public, pass(lhs) :: eos_assign_eos | Operator |
| procedure(scalar_interface), public, pass(self) :: eta | Return |
| procedure(scalar_interface), public, pass(self) :: g | Return specific heats ratio |
| procedure(scalar_interface), public, pass(self) :: gm1 | Return |
| procedure(scalar_interface), public, pass(self) :: gp1 | Return |
| procedure(pressure_interface), public, pass(self) :: pressure | Return pressure. |
| procedure(speed_of_sound_interface), public, pass(self) :: speed_of_sound | Return speed of sound. |
| procedure(temperature_interface), public, pass(self) :: temperature | Return temperature. |