The focus of this task is on developing the infrastructure so that the models and computational tools developed under IDAES can effectively manage the large amounts of knowledge required for the synthesis, design, optimization and scale up of innovative new energy processes. This includes the development of three major components: A core framework for the generation of process models, which includes representations for hierarchically structured and composed model data, interfaces for exporting and restoring model results, loading initial model variables, and the interconnections of the modeling system with higher-level tools, workflows, and user interfaces.
The modeling framework will leverage the flexibility inherent in Python and Pyomo to automate and facilitate the development of models as much as possible, to minimize the burden on the end user. A key component will be the development and maintenance of a library of models for common unit operations, which form the foundation of all models developed within IDAES. These models will be developed to be simple representations of each unit, with the ability to be easily extended to include additional detail as needed. Another important aspect of the framework development will be to support the needs of the DOE application areas within IDAES.
Complex models, such as those being developed in this program, both generate and consume significant amounts of structured data. This data not only includes model parameterizations and optimal results, but also ancillary information used to initialize the various simulation and optimization algorithms to ensure reliable convergence to meaningful results. This can lead to complex workflows where data is shared among multiple models, for example, when using a process simulation to generate a consistent set of initialization data for a subsequent dynamic optimization process, or when checking a solution generated by a simplified (surrogate) model against the original high-fidelity model.
This task will also develop the data management framework (DMF) needed to store the models, their underlying data, and their inter-relationships in an easily searched form that can be used to share this information across models and users. The core framework will provide multiple levels of interfaces for users. There will be Python Application Programming Interfaces (APIs) for representations for hierarchically structured and composed model data, interfaces for exporting and restoring model results, loading initial model variables, and running models. There will also be graphical user interfaces (GUIs) for viewing and composing flowsheets, searching and viewing data, running the models, and viewing results, and connecting the modeling system with higher-level tools, workflows, and user interfaces.