Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Computational Thermodynamics

By Kyle Niemeyer

These notes contain material and example problems in thermodynamics, in the format of Jupyter notebooks, developed to supplement the course ME 540, Intermediate Thermodynamics, taught in the School of Mechanical, Industrial, and Manufacturing Engineering at Oregon State University.

These example problems are mostly adapted from those given in the (excellent) textbook Thermodynamics by Sanford Klein and Gregory Nellis Klein & Nellis (2017). The original examples and problems in that book were solved using EES (Engineering Equation Solver), while all problems here use Python combined with Cantera Goodwin et al. (2025), CoolProp Bell et al. (2014), and the SciPy ecosystem of packages Virtanen et al. (2020), along with Pint for converting units. All artwork here is original. This collection is powered by Jupyter Book.

Reporting issues

If you see a problem or find a typo, you can file an issue via GitHub. More detailed instructions on this and contributing are in the contributing.md guide.

Supporting the author

This resource is provided free and under a permissible open license. If you find it useful, please consider making a small donation to show your support! (Students at Oregon State University are excepted from this request, because I don’t like the idea of pressuring my own students to pay me. After all, I primarily developed this material to be a resource for students in my ME 540 class.)

Creative Commons License


This work is licensed under a Creative Commons Attribution 4.0 International License.

References
  1. Klein, S., & Nellis, G. (2017). Thermodynamics (3rd ed.). Cambridge University Press.
  2. Goodwin, D. G., Moffat, H. K., Schoegl, I., Speth, R. L., & Weber, B. W. (2025). Cantera: An Object-oriented Software Toolkit for Chemical Kinetics, Thermodynamics, and Transport Processes. 10.5281/zenodo.17620923
  3. Bell, I. H., Wronski, J., Quoilin, S., & Lemort, V. (2014). Pure and Pseudo-pure Fluid Thermophysical Property Evaluation and the Open-Source Thermophysical Property Library CoolProp. Industrial & Engineering Chemistry Research, 53(6), 2498–2508. 10.1021/ie4033999
  4. Virtanen, P., Gommers, R., Oliphant, T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, P., Weckesser, W., Bright, J., van der Walt, S. J., Brett, M., Wilson, J., Jarrod Millman, K., Mayorov, N., Nelson, A. R. J., Jones, E., Kern, R., Larson, E., … Contributors, S. 1. 0. (2020). SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python. Nature Methods, 17, 261–272. 10.1038/s41592-019-0686-2