Skip to content

Conversation

@hexaeder
Copy link
Contributor

At least in my context, it is very typical to define models based on subcomponents. However, the parameters still "belong" to the higher level model not to the lower level model. See #2714

A solution which works for me is to pass symbolic parameters of the outer system as structural parameters to the inner system. That works great, but might be off the beaten track and feels like the kind of feature which easily breaks by accident. This PR just adds a test case for that to detect accidental breakage before it breaks my whole model library 🙃

it is common to define composite systems, where the parameters and their
names are defined in the "outer" system. Passing them as structural
parameters ensures, that there is only one parameter holding that
information (which can be changed with a callback for example)
rather than having multiple parameters which just share the same
default values.
@AayushSabharwal
Copy link
Member

Looks good!

Unrelated, but thankfully I'm not going insane and InterfaceII running for hours isn't my fault in #3994 :D

@hexaeder
Copy link
Contributor Author

I guess all the failing stuff is unrelated, since the added test belong to Interface I and those run through.

@AayushSabharwal AayushSabharwal merged commit caedda6 into SciML:master Oct 29, 2025
112 of 128 checks passed
@AayushSabharwal
Copy link
Member

Accidentally closed and reopened. Tests passed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants