rmgpy.thermo.
NASAPolynomial
(coeffs=None, Tmin=None, Tmax=None, E0=None, comment='')¶A heat capacity model based on the NASA polynomial. Both the seven-coefficient and nine-coefficient variations are supported. The attributes are:
Attribute | Description |
---|---|
coeffs | The seven or nine NASA polynomial coefficients |
Tmin | The minimum temperature in K at which the model is valid, or zero if unknown or undefined |
Tmax | The maximum temperature in K at which the model is valid, or zero if unknown or undefined |
E0 | The energy at zero Kelvin (including zero point energy) |
comment | Information about the model (e.g. its source) |
The NASA polynomial is another representation of the heat capacity, enthalpy, and entropy using seven or nine coefficients \(\mathbf{a} = \left[a_{-2}\ a_{-1}\ a_0\ a_1\ a_2\ a_3\ a_4\ a_5\ a_6 \right]\). The relevant thermodynamic parameters are evaluated via the expressions
In the seven-coefficient version, \(a_{-2} = a_{-1} = 0\).
As simple polynomial expressions, the NASA polynomial is faster to evaluate
when compared to the Wilhoit model; however, it does not have the nice
physical behavior of the Wilhoit representation. Often multiple NASA polynomials
are used to accurately represent the thermodynamics of a system over a wide
temperature range; the NASA
class is available for this purpose.
Cp0
¶The heat capacity at zero temperature.
CpInf
¶The heat capacity at infinite temperature.
E0
¶The ground state energy (J/mol) at zero Kelvin, including zero point energy, or None
if not yet specified.
Tmax
¶The maximum temperature at which the model is valid, or None
if not defined.
Tmin
¶The minimum temperature at which the model is valid, or None
if not defined.
c0
¶c0: ‘double’
c1
¶c1: ‘double’
c2
¶c2: ‘double’
c3
¶c3: ‘double’
c4
¶c4: ‘double’
c5
¶c5: ‘double’
c6
¶c6: ‘double’
changeBaseEnthalpy
(self, double deltaH)¶Add deltaH in J/mol to the base enthalpy of formation H298.
cm1
¶cm1: ‘double’
cm2
¶cm2: ‘double’
coeffs
¶The set of seven or nine NASA polynomial coefficients.
comment
¶comment: str
discrepancy
(self, HeatCapacityModel other) → double¶Return some measure of how dissimilar self is from other.
The measure is arbitrary, but hopefully useful for sorting purposes. Discrepancy of 0 means they are identical
getEnthalpy
(self, double T) → double¶Return the enthalpy in J/mol at the specified temperature T in K.
getEntropy
(self, double T) → double¶Return the entropy in J/mol*K at the specified temperature T in K.
getFreeEnergy
(self, double T) → double¶Return the Gibbs free energy in J/mol at the specified temperature T in K.
getHeatCapacity
(self, double T) → double¶Return the constant-pressure heat capacity in J/mol*K at the specified temperature T in K.
isIdenticalTo
(self, HeatCapacityModel other) → bool¶Returns True
if self and other report very similar thermo values
for heat capacity, enthalpy, entropy, and free energy over a wide
range of temperatures, or False
otherwise.
isSimilarTo
(self, HeatCapacityModel other) → bool¶Returns True
if self and other report similar thermo values
for heat capacity, enthalpy, entropy, and free energy over a wide
range of temperatures, or False
otherwise.
isTemperatureValid
(self, double T) → bool¶Return True
if the temperature T in K is within the valid
temperature range of the thermodynamic data, or False
if not. If
the minimum and maximum temperature are not defined, True
is
returned.