Skip to content

adam_nasto_eos_object

ADAM, NASTO Equations Of State (EOS) class definition, CPU backend.

Source: src/app/nasto/common/adam_nasto_eos_object.F90

Dependencies

Contents

Variables

NameTypeAttributesDescription
INI_SECTION_NAMEcharacter(len=15)parameterINI file section name containing fluid eos.

Derived Types

nasto_eos_object

NASTO Equations Of State (EOS, ideal, compressible fluid) class definition.

Components

NameTypeAttributesDescription
mpihtype(mpih_object)MPI handler.
cpreal(kind=R8P)Specific heat at constant pressure cp.
cvreal(kind=R8P)Specific heat at constant volume cv.
greal(kind=R8P)Specific heats ratio gamma = cp / cv.
Rreal(kind=R8P)Fluid constant R = cp - cv.
gm1real(kind=R8P)gamma - 1.
gp1real(kind=R8P)gamma + 1.
deltareal(kind=R8P)(gamma - 1) / 2.
etareal(kind=R8P)2 * gamma / (gamma - 1).
mureal(kind=R8P)Dynamic viscosity.
kdreal(kind=R8P)Thermal diffusivity.
dhareal(kind=R8P)Entalpy formation.

Type-Bound Procedures

NameAttributesDescription
compute_derivatepass(self)Compute derivate quantities (from cp and cv).
conservative2primitivepass(self)Return primitive variables from conservative ones.
descriptionpass(self)Return pretty-printed object description.
destroypass(self)Destroy physics.
initializepass(self)initialize physics.
load_from_filepass(self)Load from finer file.
primitive2conservativepass(self)Return conservative variables from primitive ones.
save_into_filepass(self)Save into finer file.
densitypass(self)Return density.
internal_energypass(self)Return specific internal energy.
pressurepass(self)Return pressure.
speed_of_soundpass(self)Return speed of sound.
temperaturepass(self)Return temperature.
total_energypass(self)Return total specific energy.
total_entalpypass(self)Return total specific entalpy.
assignment(=)Overload =.
nasto_physics_assign_nasto_physicspass(lhs)Operator =.

Interfaces

nasto_eos_object

Overload nasto_eos_object name with its constructor.

Module procedures: nasto_eos_instance

Subroutines

compute_derivate

Compute derivate quantities (from cp and cv).

Attributes: elemental

fortran
subroutine compute_derivate(self)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inoutFluid physics.

Call graph

destroy

Destroy physics.

Attributes: elemental

fortran
subroutine destroy(self)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inoutFluid physics.

Call graph

initialize

Initialize fluid physics.

fortran
subroutine initialize(self, physics, mu, kd, dha, cp, cv, gam, R)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inoutFluid physics.
physicstype(nasto_eos_object)inoptionalFluid physics.
mureal(kind=R8P)inoptionalDynamic viscosity.
kdreal(kind=R8P)inoptionalThermal diffusivity.
dhareal(kind=R8P)inoptionalEntalpy formation.
cpreal(kind=R8P)inoptionalSpecific heat at constant pressure cp value.
cvreal(kind=R8P)inoptionalSpecific heat at constant volume cv value.
gamreal(kind=R8P)inoptionalSpecific heats ratio gamma=cp/cv value.
Rreal(kind=R8P)inoptionalFluid constant R=cp-cv value.

Call graph

load_from_file

Load from file.

fortran
subroutine load_from_file(self, file_parameters, s, go_on_fail)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inoutFluid physics.
file_parameterstype(file_ini)inSimulation parameters ini file handler.
sinteger(kind=I4P)inFluid specie number.
go_on_faillogicalinoptionalGo on if load fails.

Call graph

save_into_file

Save into file.

fortran
subroutine save_into_file(self, file_parameters, s)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inoutFree conditions.
file_parameterstype(file_ini)inoutSimulation parameters ini file handler.
sinteger(kind=I4P)inFluid specie number.

Call graph

nasto_physics_assign_nasto_physics

Operator =.

Attributes: pure

fortran
subroutine nasto_physics_assign_nasto_physics(lhs, rhs)

Arguments

NameTypeIntentAttributesDescription
lhsclass(nasto_eos_object)inoutLeft hand side.
rhstype(nasto_eos_object)inRight hand side.

Functions

conservative2primitive

Return primitive variables (r, u, v, w, p) from conservative variables (r, ru, rv, rw, rE).

Attributes: pure

Returns: real(kind=R8P)

fortran
function conservative2primitive(self, conservative) result(primitive)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
conservativereal(kind=R8P)inConservative variables

description

Return a pretty-formatted object description.

Attributes: pure

Returns: character(len=:)

fortran
function description(self, prefix) result(desc)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
prefixcharacter(len=*)inoptionalPrefixing string.

Call graph

primitive2conservative

Return conservative variables (r, ru, rv, rw, rE) from primitive variables (r, u, v, w, p).

Attributes: pure

Returns: real(kind=R8P)

fortran
function primitive2conservative(self, primitive) result(conservative)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
primitivereal(kind=R8P)inPrimitive variables

Call graph

density

Return density.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function density(self, pressure, speed_of_sound) result(density_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
pressurereal(kind=R8P)inPressure value.
speed_of_soundreal(kind=R8P)inSpeed of sound value.

Call graph

internal_energy

Return specific internal energy.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function internal_energy(self, density, pressure) result(energy_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

pressure

Return pressure.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function pressure(self, density, energy) result(pressure_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
energyreal(kind=R8P)inSpecific internal energy value.

Call graph

speed_of_sound

Return speed of sound.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function speed_of_sound(self, density, pressure) result(speed_of_sound_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

temperature

Return temperature.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function temperature(self, density, pressure) result(temperature_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

total_energy

Return total specific energy.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function total_energy(self, density, pressure, velocity_sq_norm) result(energy_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.
velocity_sq_normreal(kind=R8P)inVelocity vector square norm ||velocity||^2.

Call graph

total_entalpy

Return total specific entalpy.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function total_entalpy(self, density, pressure, velocity_sq_norm) result(entalpy_)

Arguments

NameTypeIntentAttributesDescription
selfclass(nasto_eos_object)inFluid physics.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.
velocity_sq_normreal(kind=R8P)inVelocity vector square norm ||velocity||^2.

Call graph

ic_density

Return density for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_density(g, pressure, speed_of_sound) result(density_)

Arguments

NameTypeIntentAttributesDescription
greal(kind=R8P)inSpecific heats ratio.
pressurereal(kind=R8P)inPressure value.
speed_of_soundreal(kind=R8P)inSpeed of sound value.

Call graph

ic_internal_energy

Return specific internal energy for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_internal_energy(gm1, density, pressure) result(energy_)

Arguments

NameTypeIntentAttributesDescription
gm1real(kind=R8P)inSpecific heats ratio minus 1.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

ic_pressure

Return pressure for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_pressure(gm1, density, energy) result(pressure_)

Arguments

NameTypeIntentAttributesDescription
gm1real(kind=R8P)inSpecific heats ratio minus 1.
densityreal(kind=R8P)inDensity value.
energyreal(kind=R8P)inSpecific internal energy value.

Call graph

ic_speed_of_sound

Return speed of sound for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_speed_of_sound(g, density, pressure) result(speed_of_sound_)

Arguments

NameTypeIntentAttributesDescription
greal(kind=R8P)inSpecific heats ratio.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

ic_temperature

Return temperature for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_temperature(R, density, pressure) result(temperature_)

Arguments

NameTypeIntentAttributesDescription
Rreal(kind=R8P)inFluid constant.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.

Call graph

ic_total_energy

Return total specific energy for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_total_energy(gm1, density, pressure, velocity_sq_norm) result(energy_)

Arguments

NameTypeIntentAttributesDescription
gm1real(kind=R8P)inSpecific heats ratio minus 1.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.
velocity_sq_normreal(kind=R8P)inVelocity vector square norm ||velocity||^2.

Call graph

ic_total_entalpy

Return total specific entalpy for ideal compressible fluid.

Attributes: elemental

Returns: real(kind=R8P)

fortran
function ic_total_entalpy(g, density, pressure, velocity_sq_norm) result(entalpy_)

Arguments

NameTypeIntentAttributesDescription
greal(kind=R8P)inSpecific heats ratio.
densityreal(kind=R8P)inDensity value.
pressurereal(kind=R8P)inPressure value.
velocity_sq_normreal(kind=R8P)inVelocity vector square norm ||velocity||^2.

Call graph

nasto_eos_instance

Return and instance of nasto_eos_object.

@note This procedure is used for overloading nasto_eos_object name.

Attributes: elemental

Returns: type(nasto_eos_object)

fortran
function nasto_eos_instance(mu, kd, dha, cp, cv, gam, R) result(instance)

Arguments

NameTypeIntentAttributesDescription
mureal(kind=R8P)inDynamic viscosity.
kdreal(kind=R8P)inThermal diffusivity.
dhareal(kind=R8P)inEntalpy formation.
cpreal(kind=R8P)inoptionalSpecific heat at constant pressure cp value.
cvreal(kind=R8P)inoptionalSpecific heat at constant volume cv value.
gamreal(kind=R8P)inoptionalSpecific heats ratio gamma=cp/cv value.
Rreal(kind=R8P)inoptionalFluid constant R=cp-cv value.

Call graph