Skip to content

Extend Diagnostics Tools to support Grey Box models#1756

Open
andrewlee94 wants to merge 18 commits intoIDAES:mainfrom
andrewlee94:diagnostics_grey_box
Open

Extend Diagnostics Tools to support Grey Box models#1756
andrewlee94 wants to merge 18 commits intoIDAES:mainfrom
andrewlee94:diagnostics_grey_box

Conversation

@andrewlee94
Copy link
Copy Markdown
Contributor

Fixes None

Requires Pyomo/pyomo#3870

Summary/Motivation:

The current diagnostics tools do not support grey box models, and either do not work at all or give misleading results. This PR extends most methods supported by the DiagnosticsToolbox to work with models which include ExternalGreyBoxBlocks. These changes require the updates in Pyomo/pyomo#3870 and require the ExternalGreyBoxBlock to set build_implicit_constraint_objects=True.

Current exclusions are:

  • SVDToolbox - this quite possibly will work with the changes implemented here, but I lack the time and knowledge to test it.
  • DegeneracyHunter - similarly, this might also work with the changes implemented here.
  • Minimum infeasible set: this is a Pyomo tool and would need to be fixed there by someone who knows the code.

Changes proposed in this PR:

  • Update all statistics methods to correctly collect variables and implicit constraints from grey box blocks.
  • Update Jacobian tools to collect Jacobian information from implicit constraints.

Legal Acknowledgement

By contributing to this software project, I agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the license terms described in the LICENSE.txt file at the top level of this directory.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

@ksbeattie ksbeattie added the Priority:Normal Normal Priority Issue or PR label Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Priority:Normal Normal Priority Issue or PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants