Skip to content

Unify the API for subsystem builder methods.#1009

Merged
jkirk5 merged 46 commits intoOpenMDAO:mainfrom
Kenneth-T-Moore:sub_api
Apr 1, 2026
Merged

Unify the API for subsystem builder methods.#1009
jkirk5 merged 46 commits intoOpenMDAO:mainfrom
Kenneth-T-Moore:sub_api

Conversation

@Kenneth-T-Moore
Copy link
Copy Markdown
Member

Summary

This PR expands the arguments to many of the subsystem builder methods to include aviary_inputs, phase_info, and the phase_name where they were applicable.

  • Removed the define_order method from the phase_builder API. It never did anything, and that capability is a little tricky to do this way.
  • Removed mission/phase_utils.py and moved the functionality into the phasebuilder base class.

Related Issues

Backwards incompatibilities

Users will have to edit their subsystems to add the missing arguments.
In addition, an error will be raised if a subsystem builder contains the get_bus_variables method, which was renamed in an earlier PR to get_pre_mission_bus_variables.

New Dependencies

None

Comment thread aviary/core/aviary_group.py
Comment thread aviary/core/aviary_group.py
Comment thread aviary/subsystems/propulsion/turboprop_model.py Outdated
Comment thread aviary/subsystems/subsystem_builder.py
Comment thread aviary/subsystems/subsystem_builder.py Outdated
Comment thread aviary/subsystems/subsystem_builder.py
Comment thread aviary/subsystems/subsystem_builder.py Outdated
Comment thread aviary/subsystems/subsystem_builder.py Outdated
Comment thread aviary/subsystems/subsystem_builder.py Outdated
Comment thread aviary/subsystems/subsystem_builder.py Outdated
@jkirk5 jkirk5 enabled auto-merge April 1, 2026 20:24
@jkirk5 jkirk5 added this pull request to the merge queue Apr 1, 2026
Merged via the queue into OpenMDAO:main with commit aa956e7 Apr 1, 2026
6 checks passed
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.

Refactor subsystem builder methods that can be properties

2 participants