NASA7IdealGasFluidProperties

Ideal gas with temperature-dependent heat capacity, enthalpy, and entropy from NASA 7-coefficient polynomials

This class implements an ideal gas whose heat capacity, enthalpy, and entropy depend on temperature through the NASA 7-coefficient polynomials (McBride et al., 1993) of a built-in species. The species is selected with "species": H, O, HO, CH, CO, CO, or N. The data are those of GRI-Mech 3.0 (Smith et al., 1999) as distributed with Cantera 3.2.0 (Goodwin et al., 2025); the polynomials, the data, and their temperature ranges are described with the NASA 7-coefficient polynomial utilities.


[FluidProperties]
  [steam]
    type = NASA7IdealGasFluidProperties
    species = H2O
  []
[]

Properties

The equation of state is that of an ideal gas:

where is pressure, is specific volume, is temperature, is the universal gas constant, and is the molar mass of the species. With the dimensionless standard-state heat capacity , enthalpy , and entropy from the polynomials, the specific enthalpy, internal energy, entropy, and heat capacities are

where Pa is the reference pressure of the data. The ratio of specific heats is , and the sound speed is .

The enthalpy includes the enthalpy of formation of the species, and the entropy is the absolute entropy. The enthalpies of different species therefore share a common reference, so a mixture energy balance accounts for the heat of reaction when the composition changes by reaction.

The derivatives of the properties are computed by forward-mode automatic differentiation of the expressions above, so they are exact.

This class provides the properties from pressure and temperature, from temperature and specific volume, from specific volume and internal energy, and from pressure and enthalpy, as well as the pressure from enthalpy and entropy and the internal energy from pressure and density and from specific volume and enthalpy. It does not provide viscosity or thermal conductivity, so it cannot yet be used in flow models that need them, such as the gas-mixture flow channels of the thermal hydraulics module. Mixtures of these gases are described by IdealGasMixtureFluidProperties.

Comparison with IdealGasFluidProperties

Both classes describe ideal gases, but they differ as follows:

IdealGasFluidPropertiesNASA7IdealGasFluidProperties
GasAny gas, given by its ratio of specific heats and molar massOne of the built-in species
Specific heatsConstantFunctions of temperature
Internal energy plus a user-supplied reference valueIncludes the enthalpy of formation
EntropyRelative to an arbitrary referenceAbsolute
Temperature from internal energy or enthalpyExplicitNewton iteration
Temperature rangeUnlimitedThat of the data, with a solution warning outside it
Viscosity and thermal conductivityConstant, user-suppliedNot provided
Density from pressure and entropy, critical-point propertiesProvidedNot provided

Temperature from internal energy or enthalpy

The properties from specific volume and internal energy, and those from enthalpy, require the temperature at which the internal energy or the enthalpy takes a given value. The temperature is found with the 1D Newton solver of the fluid properties utilities, whose relative tolerance and maximum number of iterations are set with "tolerance" and "max_newton_its". Two choices make this inversion robust:

  • The iteration starts at the upper end of the temperature range of the data, so this class has no initial-guess parameters. The internal energy and the enthalpy are convex functions of temperature over nearly all of that range, because the heat capacity increases with temperature, so the iterates approach the solution from above. An iteration started below the solution can overshoot far beyond the range, where the extrapolated polynomials eventually make the energy decrease with temperature and produce a second, spurious solution. For the built-in species, the solution is found up to at least 1.7 times the upper end of the range.

  • The internal energy and the enthalpy include the enthalpy of formation, so they can be zero: the internal energy of N, for example, vanishes near 417 K. The Newton solver tests convergence relative to the target value, which close to zero would demand accuracy below roundoff. The equation is therefore offset by a constant that makes both of its sides close to (or ), which turns the test into one on the relative error in temperature.

At the midpoint temperature of the data, where the two polynomials do not match exactly, the same internal energy or enthalpy is also reached slightly above the midpoint temperature, by less than K for the built-in species. The inversion may return either temperature.

Temperature range

The polynomials are fitted from 200 K to 3500 K, except for N, whose fit extends from 300 K to 5000 K. Outside its range, the polynomials of a species are still evaluated, and each such evaluation is counted as a solution warning, which appears in the solution invalidity summary. For example, N at room temperature lies slightly below its range. A non-positive or not-a-number temperature is flagged as an invalid solution.

Input Parameters

  • speciesGas species

    C++ Type:MooseEnum

    Options:H2, O2, H2O, CH4, CO, CO2, N2

    Controllable:No

    Description:Gas species

Required Parameters

  • allow_imperfect_jacobiansFalsetrue to allow unimplemented property derivative terms to be set to zero for the AD API

    Default:False

    C++ Type:bool

    Controllable:No

    Description:true to allow unimplemented property derivative terms to be set to zero for the AD API

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:Yes

    Description:Set the enabled status of the MooseObject.

  • fp_typesingle-phase-fpType of the fluid property object

    Default:single-phase-fp

    C++ Type:FPType

    Controllable:No

    Description:Type of the fluid property object

Advanced Parameters

  • max_newton_its100Maximum number of Newton iterations for variable set conversions

    Default:100

    C++ Type:unsigned int

    Controllable:No

    Description:Maximum number of Newton iterations for variable set conversions

  • tolerance1e-08Tolerance for 2D Newton variable set conversion

    Default:1e-08

    C++ Type:Real

    Unit:(no unit assumed)

    Range:tolerance > 0

    Controllable:No

    Description:Tolerance for 2D Newton variable set conversion

  • verbose_newtonFalseWhether to output Newton inversion iterations to console

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether to output Newton inversion iterations to console

Variable Set Conversions Newton Solve Parameters

  • prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

    C++ Type:MaterialPropertyName

    Unit:(no unit assumed)

    Controllable:No

    Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

  • use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

Material Property Retrieval Parameters

References

  1. David G. Goodwin, Harry K. Moffat, Ingmar Schoegl, Raymond L. Speth, and Bryan W. Weber. Cantera: an object-oriented software toolkit for chemical kinetics, thermodynamics, and transport processes. 2025. Version 3.2.0. URL: https://www.cantera.org.[Export]
  2. Bonnie J. McBride, Sanford Gordon, and Martin A. Reno. Coefficients for calculating thermodynamic and transport properties of individual species. Technical Report NASA TM-4513, NASA Lewis Research Center, 1993.[Export]
  3. Gregory P. Smith, David M. Golden, Michael Frenklach, Nigel W. Moriarty, Boris Eiteneer, Mikhail Goldenberg, C. Thomas Bowman, Ronald K. Hanson, Soonho Song, William C. Gardiner, Jr., Vitali V. Lissianski, and Zhiwei Qin. GRI-Mech 3.0. 1999. URL: http://combustion.berkeley.edu/gri-mech/.[Export]