The IDAES Toolkit
Aims to provide multi-scale, simulation-based, open source computational tools and models to support the design, analysis, optimization, scale-up, operation and troubleshooting of innovative, advanced energy systems.
https://github.com/IDAES/idaes-pse
Category: Energy Systems
Sub Category: Energy System Modeling Frameworks
Keywords
chemical-engineering idaesplus process-modeling process-systems-engineering
Keywords from Contributors
mathematical-programming modeling-language nonlinear-programming idaes-pse foqus pse pyomo training energy-system snl-applications
Last synced: about 11 hours ago
JSON representation
Repository metadata
The IDAES Process Systems Engineering Framework
- Host: GitHub
- URL: https://github.com/IDAES/idaes-pse
- Owner: IDAES
- License: other
- Created: 2019-02-01T01:12:51.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2025-04-17T16:05:14.000Z (9 days ago)
- Last Synced: 2025-04-20T12:10:56.833Z (7 days ago)
- Topics: chemical-engineering, idaesplus, process-modeling, process-systems-engineering
- Language: Python
- Homepage: https://idaes-pse.readthedocs.io/
- Size: 106 MB
- Stars: 245
- Watchers: 23
- Forks: 261
- Open Issues: 113
- Releases: 41
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Citation: CITATION.cff
- Codeowners: .github/CODEOWNERS
README.md
IDAES Toolkit
The IDAES Toolkit aims to provide multi-scale, simulation-based, open source
computational tools and models to support the design, analysis, optimization,
scale-up, operation and troubleshooting of innovative, advanced energy systems.
Project Build and Download Statuses
Getting Started
Our complete documentation is online but here is a summarized set of steps to get started using the framework. For help and assistance, please visit the IDAES PSE Discussions Board.
While not required, we encourage the installation of Miniforge with which you can use the conda
command to create a separate python environment in which to install the IDAES Toolkit.
Use conda to create a new "idaes-pse" (could be any name you like) environment then activate that environment:
conda create --name idaes-pse python=3.10
conda activate idaes-pse
Now, in that "idaes-pse" environment, install the IDAES Toolkit using either pip install
or conda install
(but not both):
# install latest stable release
pip install idaes-pse
# install latest stable release with one set of optional dependencies, e.g. `ui` for the user interface
pip install "idaes-pse[ui]"
# install latest stable release with multiple sets of optional dependencies
pip install "idaes-pse[ui,omlt,grid,coolprop]"
# install latest version from the main branch of this repository
pip install "idaes-pse @ git+https://github.com/IDAES/idaes-pse@main"
# install from the `mybranch` branch of the fork belonging to `myuser`
pip install "idaes-pse @ git+https://github.com/myuser/idaes-pse@mybranch"
You can check the version installed with the command:
idaes --version
Now install the pre-built extensions (binary solvers):
idaes get-extensions
The IDAES examples can be installed by running:
pip install idaes-examples
For more information, refer to the IDAES/examples repository, as well as the online static version of the examples available at https://idaes-examples.readthedocs.org.
Finally, refer to the complete idaes-pse documentation for detailed installation instructions, examples, guides, and reference.
System requirements
The code and examples have been tested with the following operating systems:
Operating system | Supported versions |
---|---|
Linux | Any modern Linux |
Windows | Windows 10 |
macOS | Partly supported* |
*HSL is not currently provided for macOS on Intel processors, so some features may be limited or not available.
Most of the functionality is implemented in Python. In accordance with
the end-of-life for many Python 2 libraries, the IDAES Toolkit is written
for Python 3. The following sub-versions are supported:
- Python 3.9
- Python 3.10
- Python 3.11
- Python 3.12
[!IMPORTANT]
Note that Python 3.8 is no longer officially supported.
Contacts and more information
General, background and overview information is available at the IDAES main website.
Framework development happens at our GitHub repo where you can ask questions by starting a discussion, report issues/bugs or make contributions.
For further enquiries, send an email to: [email protected]
Funding acknowledgements
This work was conducted as part of the Institute for the Design of Advanced Energy Systems (IDAES)
with support through the Simulation-Based Engineering, Crosscutting Research Program
within the U.S. Department of Energy’s Office of Fossil Energy and Carbon Management (FECM).
As of 2021, additional support was provided by FECM’s Solid Oxide Fuel Cell Program,
and Transformative Power Generation Program.
Contributing
Please see our Advanced User Installation and How-to Guides on how to work with the idaes-pse source code and contribute changes to the project.
By contributing to this repository, you are agreeing to all the terms set out in the LICENSE.md and COPYRIGHT.md files in this directory.
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - name: "IDAES contributors" title: "Institute for Design of Advanced Energy Systems (IDAES): advanced computational algorithms to enable the design and optimization of complex, interacting energy and process systems from individual plant components to the entire electrical grid" url: "https://github.com/IDAES/idaes-pse" license-url: "https://github.com/IDAES/idaes-pse/blob/main/LICENSE.md" identifiers: - description: "OSTI archive of IDAES PSE releases." type: url value: "https://www.osti.gov/search/semantic:idaes-pse" preferred-citation: type: article authors: - family-names: "Lee" given-names: "Andrew" - family-names: "Ghouse" given-names: "Jaffer H" - family-names: "Eslick" given-names: "John C" - family-names: "Laird" given-names: "Carl D" - family-names: "Siirola" given-names: "John D" - family-names: "Zamarripa" given-names: "Miguel A" - family-names: "Gunter" given-names: "Dan" - family-names: "Shinn" given-names: "John H" - family-names: "Dowling" given-names: "Alexander W" - family-names: "Bhattacharyya" given-names: "Debangsu" - family-names: "Biegler" given-names: "Lorenz T" - family-names: "Burgard" given-names: "Anthony P" - family-names: "Miller" given-names: "David C" title: "The IDAES process modeling framework and model library—Flexibility for process simulation and optimization" journal: "Journal of Advanced Manufacturing and Processing" publisher: "Wiley Online Library" volume: 3 number: 3 pages: e10095 year: 2021 doi: "doi/10.1002/amp2.10095"
Owner metadata
- Name: IDAES
- Login: IDAES
- Email: [email protected]
- Kind: organization
- Description: Institute for the Design of Advanced Energy Systems
- Website: https://idaes.org
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/16325231?v=4
- Repositories: 11
- Last ynced at: 2023-03-05T20:33:47.201Z
- Profile URL: https://github.com/IDAES
GitHub Events
Total
- Create event: 9
- Release event: 6
- Issues event: 82
- Watch event: 34
- Delete event: 2
- Issue comment event: 276
- Push event: 44
- Pull request event: 93
- Pull request review event: 283
- Pull request review comment event: 227
- Fork event: 25
Last Year
- Create event: 9
- Release event: 6
- Issues event: 82
- Watch event: 34
- Delete event: 2
- Issue comment event: 276
- Push event: 44
- Pull request event: 93
- Pull request review event: 283
- Pull request review comment event: 227
- Fork event: 25
Committers metadata
Last synced: 8 days ago
Total Commits: 6,227
Total Committers: 85
Avg Commits per committer: 73.259
Development Distribution Score (DDS): 0.756
Commits in past year: 86
Committers in past year: 27
Avg Commits per committer in past year: 3.185
Development Distribution Score (DDS) in past year: 0.802
Name | Commits | |
---|---|---|
Andrew Lee | a****e@n****v | 1519 |
John Eslick | j****k@n****v | 1205 |
Dan Gunter | d****r@l****v | 772 |
jghouse88 | j****e@n****v | 372 |
Robert | r****r@g****m | 334 |
Makayla Shepherd | m****d@l****v | 210 |
Ludovico Bianchi | l****i@l****v | 153 |
OOAmusat | 4****t | 129 |
John Eslick | j****k@A****H | 108 |
Miguel Zamarripa | m****z@n****v | 103 |
Tim Bartholomew | t****w@n****v | 101 |
Keith Beattie | K****e@l****v | 91 |
Doug Allan | d****n@k****m | 90 |
Perren Yang | p****g@l****v | 71 |
Xian | x****1@n****u | 67 |
Xiangyu Yin | x****y@a****u | 63 |
Jangho Park | J****k@l****v | 60 |
mengleCMU | m****e@a****u | 57 |
Abdelrahman Elbashandy | a****y@l****v | 48 |
Bethany Nicholson | b****o@s****v | 48 |
Brandon Paul | 8****4 | 43 |
Jangho Park | j****k@l****v | 42 |
Emmanuel Ogbe | e****e@p****n | 40 |
Alex Dowling | a****g@n****u | 30 |
minhwvu | q****e@m****u | 29 |
Paul Akula | p****1@g****m | 28 |
Alejandro Garciadiego | a****d@n****u | 26 |
agarciadiego | 26 | |
Chinedu Okoli | c****i@a****h | 25 |
chineduokoli | c****i@n****v | 24 |
and 55 more... |
Committer domains:
- lbl.gov: 10
- netl.doe.gov: 6
- ad.scilan.pgh: 5
- nd.edu: 4
- andrew.cmu.edu: 3
- pselap25.scilan: 2
- keylogic.com: 2
- nrel.gov: 2
- ad.science: 2
- sandia.gov: 2
- pselap24.scilan: 1
- mail.wvu.edu: 1
- lilly.com: 1
- mix.wvu.edu: 1
- mcmaster.ca: 1
- s1037385.srn.sandia.gov: 1
- pmd006.scilan: 1
- pselap04.scilan: 1
- asu.edu: 1
- xiangyus-mbp.dhcp.lbnl.us: 1
- p66.com: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 765
Total pull requests: 1,382
Average time to close issues: 5 months
Average time to close pull requests: 21 days
Total issue authors: 99
Total pull request authors: 75
Average comments per issue: 2.72
Average comments per pull request: 2.85
Merged pull request: 1,190
Bot issues: 0
Bot pull requests: 2
Past year issues: 107
Past year pull requests: 113
Past year average time to close issues: about 1 month
Past year average time to close pull requests: 21 days
Past year issue authors: 30
Past year pull request authors: 31
Past year average comments per issue: 2.59
Past year average comments per pull request: 2.85
Past year merged pull request: 77
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- lbianchi-lbl (118)
- dangunter (97)
- andrewlee94 (85)
- eslickj (78)
- dallan-keylogic (55)
- bpaul4 (24)
- elbashandy (23)
- ksbeattie (20)
- TheHuangs (20)
- adam-a-a (17)
- Robbybp (15)
- adowling2 (13)
- makaylas (12)
- jghouse88 (10)
- TimBartholomew (10)
Top Pull Request Authors
- andrewlee94 (347)
- eslickj (222)
- lbianchi-lbl (148)
- dangunter (60)
- dallan-keylogic (55)
- bpaul4 (51)
- elbashandy (39)
- Robbybp (34)
- ksbeattie (30)
- MAZamarripa (30)
- OOAmusat (28)
- blnicho (26)
- anujad95 (22)
- AlexNoring (22)
- adowling2 (19)
Top Issue Labels
- Priority:Normal (328)
- Priority:High (253)
- bug (133)
- Priority:Low (99)
- documentation (83)
- enhancement (55)
- testing (50)
- discussion (38)
- flowsheet viewer (36)
- user request (33)
- property packages (30)
- core (30)
- question (30)
- ui (24)
- IDAES v2.0 (23)
- Backlog (22)
- dependencies (14)
- unit models (13)
- WaterTAP (12)
- surrogates (12)
- idaes-ext (8)
- dmf (8)
- wontfix (7)
- good first issue (7)
- diagnostics (7)
- help wanted (7)
- backward-compat (6)
- PETSc (6)
- DISPATCHES (4)
- models_extra (4)
Top Pull Request Labels
- Priority:Normal (647)
- Priority:High (536)
- bug (176)
- enhancement (172)
- property packages (148)
- unit models (103)
- core (101)
- testing (91)
- CI:run-integration (60)
- documentation (57)
- IDAES v2.0 (43)
- backward-compat (34)
- Priority:Low (31)
- dependencies (24)
- approved (23)
- surrogates (20)
- WaterTAP (17)
- user request (15)
- PrOMMiS (12)
- flowsheet viewer (12)
- diagnostics (10)
- DISPATCHES (9)
- ui (8)
- apps (8)
- WIP (6)
- deprecation (5)
- Backlog (4)
- models_extra (4)
- pyomo (4)
- PySMO (3)
Package metadata
- Total packages: 3
-
Total downloads:
- pypi: 25,510 last-month
- Total dependent packages: 7 (may contain duplicates)
- Total dependent repositories: 8 (may contain duplicates)
- Total versions: 58
- Total maintainers: 2
pypi.org: idaes-pse
IDAES Process Systems Engineering Framework
- Homepage: https://idaes.org
- Documentation: https://idaes-pse.readthedocs.io/
- Licenses: BSD
- Latest release: 2.8.0 (published about 2 months ago)
- Last Synced: 2025-04-25T14:36:08.040Z (1 day ago)
- Versions: 54
- Dependent Packages: 7
- Dependent Repositories: 8
- Downloads: 25,510 Last month
- Docker Downloads: 0
-
Rankings:
- Dependent packages count: 1.583%
- Downloads: 2.158%
- Average: 3.181%
- Docker downloads count: 3.81%
- Dependent repos count: 5.171%
- Maintainers (2)
proxy.golang.org: github.com/idaes/idaes-pse
- Homepage:
- Documentation: https://pkg.go.dev/github.com/idaes/idaes-pse#section-documentation
- Licenses: other
- Latest release: v1.0.1 (published about 6 years ago)
- Last Synced: 2025-04-25T14:36:08.135Z (1 day ago)
- Versions: 2
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 1.622%
- Average: 4.057%
- Dependent packages count: 6.492%
proxy.golang.org: github.com/IDAES/idaes-pse
- Homepage:
- Documentation: https://pkg.go.dev/github.com/IDAES/idaes-pse#section-documentation
- Licenses:
- Latest release: v1.0.1 (published about 6 years ago)
- Last Synced: 2025-04-25T14:36:08.160Z (1 day ago)
- Versions: 2
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 6.999%
- Average: 8.173%
- Dependent repos count: 9.346%
Dependencies
- ./.github/actions/display-debug-info * composite
- ./.github/actions/setup-idaes * composite
- actions/checkout v2 composite
- actions/checkout v3 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite
- codecov/codecov-action v2 composite
- conda-incubator/setup-miniconda v2.1.1 composite
- crate-ci/typos master composite
- ./.github/actions/check-pr-approval * composite
- ./.github/actions/display-debug-info * composite
- ./.github/actions/run-examples * composite
- ./.github/actions/setup-idaes * composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2.1.1 composite
- $BASE_CONTAINER latest build
- ubuntu 18.04 build
- addheader >=0.2.2 development
- alabaster >=0.7.7 development
- astroid ==2.9.3 development
- black >=22.1.0 development
- black ==22.3.0 development
- coverage * development
- flake8 * development
- jsonschema * development
- jupyter_contrib_nbextensions * development
- pre-commit * development
- pylint ==2.12.2 development
- pytest * development
- pytest-cov * development
- snowballstemmer ==1.2.1 development
- sphinx >=3.0.0 development
- sphinx-argparse * development
- sphinx-rtd-theme ==1.0.0 development
- sphinxcontrib-napoleon >=0.5.0 development
- click >=8
- matplotlib *
- networkx *
- numpy *
- pandas *
- pint *
- pyomo >=6.6.2
- scipy *
- see *
- sympy *
- jupyter-cache ==0.6.1 test
- nbmake ==1.5 test
Score: 20.470676237408682