Files
MeanField_SERiF/src/include/serif/eos/relations/relations.hpp

28 lines
1.7 KiB
C++

#pragma once
/**
* @file relations.hpp
* @author Emily M. Boudreaux
*
* @brief File containing the thermodynamic relations used in the eos module. These relations are used to compute various thermodynamic quantities from other quantities.
*/
#include "serif/eos/relations/catalog.hpp"
#include "serif/dimensions/dimensions.hpp"
namespace serif::eos::relations {
using PressureFromDensity = Relation<dimensions::Pressure, dimensions::MassDensity>; ///< A relation to compute pressure from density.
using DensityFromPressure = Relation<dimensions::MassDensity, dimensions::Pressure>; ///< A relation to compute density at a prescribed pressure.
/**
* @brief Evaluate A(density), whose derivative on the positive barotropic branch is (dP/density)/density.
*
* An additive constant is arbitrary. A finite surface value is required when a consumer
* subtracts A at a prescribed pressure. This mechanical primitive need not be thermodynamic enthalpy.
*/
using PressurePotentialFromDensity = Relation<dimensions::BarotropicPressurePotential, dimensions::MassDensity>;
using PressureFromSpecificEnthalpy = Relation<dimensions::Pressure, dimensions::SpecificEnthalpy>; ///< A relation to compute pressure from specific enthalpy.
using SpecificEnthalpyFromDensity = Relation<dimensions::SpecificEnthalpy, dimensions::MassDensity>; ///< A relation to compute specific enthalpy from density.
using SpecificEnthalpyFromPressure = Relation<dimensions::SpecificEnthalpy, dimensions::Pressure>; ///< A relation to compute specific enthalpy from pressure.
using DensityFromSpecificEnthalpy = Relation<dimensions::MassDensity, dimensions::SpecificEnthalpy>; ///< A relation to compute density from specific enthalpy.
}