Introduction#
This documentation contains examples for the IDAES platform.
About IDAES#
The Institute for Design of Advanced Energy Systems (IDAES) [Miller et al., 2018] was originated to bring the most advanced modeling and optimization capabilities to the challenges of transforming and decarbonizing the world’s energy systems to make them environmentally sustainable while maintaining high reliability and low cost. For more information please see the IDAES website and the online IDAES documentation.
About this documentation#
The examples in this documentation show how to create, configure, and solve IDAES models for a variety of application. Some of the examples are written in a tutorial style with separate “exercise” and “solution” sections to facilitate use in a group setting.
All of the examples are written in Python as Jupyter notebooks. You can browse these notebooks online or download them to and run on your own machine. The online examples have been created with the JupyterBook software package.
Prerequisites#
Install the latest version of IDAES. Examples in this documentation are rigorously tested to ensure that they work with the latest version of the IDAES software. For more information on installing IDAES on your platform, please refer to the IDAES documentation.
Learn about mathematical optimization and Pyomo. IDAES is a state-of-the-art equation-oriented modeling and optimization environment. Below are recommended topics and references:
Mathematical optimization especially nonlinear programs (optimization problems) and chemical engineering applications. [Postek et al., 2025], along with the companion website and overview video, are the best resources for a user new to mathematical optimization. [Biegler et al., 1997], [Biegler, 2010], and [Grossmann, 2021] are excellent references for advanced users. Professor Alexander Dowling’s course website includes Jupyter notebooks and Pyomo examples inspired by these texts.
Pyomo. IDAES is built upon Pyomo, which is an open-source algebraic modeling environment. New users will likely find [Postek et al., 2025] along with its companion website and the ND Pyomo Cookbook, as the easiest introduction to Pyomo. Other excellent resources include [Bynum et al., 2021] and the official Pyomo documentation.
Getting the source code#
The full source code for these examples is available from the IDAES examples repository on GitHub. It may also be installed as a Python package from PyPI with the command:
pip install idaes-examples
Please see the README.md file
in the repository for more information.
Getting help#
If you find the content of the examples hard to understand, or perhaps incorrect, please reach out to us. Our primary public forum is the idaes-pse discussions page, where you can post questions and also see if others have had a similar problem. You may also contact us directly by sending email to idaes-support@idaes.org.
Bibliography#
Lorenz T Biegler. Nonlinear programming: concepts, algorithms, and applications to chemical processes. SIAM, 2010.
Lorenz T Biegler, Ignacio E Grossmann, and Arthur W Westerberg. Systematic methods of chemical process design. Prentice Hall, 1997. ISBN 9780134924229.
Michael L Bynum, Gabriel A Hackebeil, William E Hart, Carl D Laird, Bethany L Nicholson, John D Siirola, Jean-Paul Watson, David L Woodruff, and others. Pyomo-optimization modeling in python. Volume 67. Springer, 2021.
Ignacio E Grossmann. Advanced optimization for process systems engineering. Cambridge University Press, 2021. ISBN 9781108831659.
David C. Miller, John D. Siirola, Deb Agarwal, Anthony P. Burgard, Andrew Lee, John C. Eslick, Bethany Nicholson, Carl Laird, Lorenz T. Biegler, Debangsu Bhattacharyya, Nikolaos V. Sahinidis, Ignacio E. Grossmann, Chrysanthos E. Gounaris, and Dan Gunter. Next generation multi-scale process systems engineering framework. In Mario R. Eden, Marianthi G. Ierapetritou, and Gavin P. Towler, editors, 13th International Symposium on Process Systems Engineering (PSE 2018), volume 44 of Computer Aided Chemical Engineering, pages 2209–2214. Elsevier, 2018. URL: https://www.sciencedirect.com/science/article/pii/B9780444642417503633, doi:https://doi.org/10.1016/B978-0-444-64241-7.50363-3.
Krzysztof Postek, Alessandro Zocca, Vrije Universiteit Amsterdam, and Joaquim A. S. Gromicho. Hands-On Mathematical Optimization with Python. Cambridge University Press, 2025. ISBN 9781009493505. URL: https://www.cambridge.org/us/universitypress/subjects/mathematics/optimization-or-and-risk-analysis/hands-mathematical-optimization-python.