# Different calculations for values of thermodynamic properties

While deciding what tool (library) to use for a simulation of a hybrid gas turbine plant, I found that different libraries/tools of thermodynamic properties yield different values than the other.

I made a simple test to calculate $c_p$ of air at $300\ K$(same goes for enthalpy by the way) only for simplification and comparison and here are the results.

Source              |    Cp at 300 K (J/kg.K)
--------------------------------------------
Thermopy  (python)  |   1004.89
Cantera   (python)  |   1010.06
CoolProps (python)  |   1006.627
EES Software        |   1005
Engineering Toolbox |   1005
Incropera's book    |   1007
Cengel's book       |   1007

What do you think is the reason for the difference in values?

Apparently the one closest to the properties sheets from Incropera and Cengel is CoolProps but is this level of accuracy sufficient?

The case might not be convincing for $c_p$, but it did occur to me once while calculating adiabatic flame temperature of some fuels and the error were in hundred Celsius range!

• If the calculation is done by curve-fitting empirical data, results can vary based on what function you choose to fit, i.e. 4th-order polynomial vs 5th-order, etc. This amount of variation doesn't look all that bad though. Jul 6 '15 at 19:26
• @Carlton maybe the values from textbooks are empirical but for the other tools I think it's based on NASA Polynomials (where I don't see a need for curve-fitting) combustion.berkeley.edu/gri_mech/data/nasa_plnm.html which isn't logical to me why is there a difference in values.
– Algo
Jul 6 '15 at 19:38
• The coefficients in the NASA polynomials are almost certainly calculated from empirical data. This means that any experimental error will also cause the results to vary from one database to the next. Now, if two calculations claim to use the same database but report different values, then there may be an error. Jul 6 '15 at 19:44
• What may be more important is that you cite where you got your thermo values from when reporting the results of your simulation. Jul 6 '15 at 19:48

What do you think is the reason for the difference in values?

It's likely that they have calculated the coefficients of whatever model they are using from different data sets (or sub-sets). It's also possible that they are using different models.

is this level of accuracy sufficient?

That depends on what you're using it for. In general you probably have an acceptable level of error in your output. To get an idea of whether your input accuracy is acceptable you can do a sensitivity analysis on your simulation to see what kind of accuracy you need for your inputs.

My guess however, is that a variation of less than 1% will probably not be a significant source of error in your output compared to the simplifications of your model, and thus the sensitivity analysis is unnecessary for the case of errors in $C_p$

However, I do not know the accuracy of the rest of the package, so I'd recommend running a sensitivity analysis on your model, and an error estimation of each of your inputs to give you an idea of how much accuracy you need and if the package you use can deliver that accuracy.

• +1 on the sensitivity approach, great answer.
– Algo
Jul 31 '15 at 4:28