Skip to content

Rename Mission.Summary.* variables to Mission.*#1044

Closed
cmbenne3 wants to merge 18 commits intoOpenMDAO:mainfrom
cmbenne3:issue772_part2
Closed

Rename Mission.Summary.* variables to Mission.*#1044
cmbenne3 wants to merge 18 commits intoOpenMDAO:mainfrom
cmbenne3:issue772_part2

Conversation

@cmbenne3
Copy link
Copy Markdown
Contributor

@cmbenne3 cmbenne3 commented Mar 25, 2026

Summary

This PR removes the unnecessary summary subcategory of the mission variable hierarchy by renaming variables and removing unneeded ones as follows:

Mission.Summary:
These values are inputs and outputs to/from mission analysis for the given mission (whether it is design or off-design).
In on-design these may be constrained to design values, but in off-design they independently represent the final analysis based on the user-selection.

class Summary: New Variable Name Notes
Mission.Summary.CRUISE_MACH = 'mission:summary:cruise_mach' Aircraft.Design.CRUISE_MACH = 'aircraft:design:cruise_mach This variable is actually only used to calculate the landing_to_takeoff_mass_ratio, as a result moved to aircraft.design as it is not mission specific. The actual mach in cruise is specified in phase info dictionary, and might be optimized so having a single value under mission is confusing. Note Aircraft.Design.CRUISE_MACH is distinct from Aircraft.Design.MACH which is an aerodynamic design override or computed internally by EDET. There is also Mission.Constraints.MAX_MACH which is used in Aviary premission for sizing systems (equivalent to FLOPS VMMO). This is incredibly misleading and changing it is tracked in issue #1046
Mission.Summary.CRUISE_MASS_FINAL = 'mission:summary:cruise_mass_final' N/A This is removed as it is only used to set initial guesses for two_dof_problem_configurator. If the user wants this functionality they should set it within the .csv file using 'initialization_guesses:cruise_mass_final' or set ['cruise'][initial_guesses]['mass'] in phase info?
Mission.Summary.FINAL_MASS = 'mission:summary:final_mass' Mission.FINAL_MASS = 'mission:final_mass' This variable is the mass of the aircraft at the end of the final regular phase 'traj.{final_phase}.states:mass' where final_phase = self.regular_phases[-1] It is not really used anywhere in Aviary, but is potentially useful to the user. It is clearly documented in variable MetaData.
Mission.Summary.FINAL_TIME = 'mission:summary:final_time' Mission.FINAL_TIME = 'mission:final_time' This variable is the duration of the dymos phases of the mission. We should instead calculate more useful time variables such as bock_time, and flight_time. These will depend on what phases are modelled and included. Issue #1045 tracks this.
Mission.Summary.FUEL_BURNED = 'mission:summary:fuel_burned' Mission.FUEL_BURNED Summary is unnecessary
Mission.Summary.FUEL_FLOW_SCALER = 'mission:summary:fuel_flow_scaler' Mission.FUEL_FLOW_SCALER = 'mission.fuel_flow_scaler This PR just renames this variable, but Aviary is inconsistent with translation of FLOPS MISSIN variables since FCDO, FCDI, FCDSUB and FCDSUP are technically all mission variables in FLOPS, but are Aircraft.Design variables in Aviary. If we like this change then this variable could just be removed completely since the Aviary equivalents of Aircraft.Engine.SUBSONIC_FUEL_FLOW_SCALER and Aircraft.Engine.SUPERSONIC_FUEL_FLOW_SCALER can be used to replace the per-mission additional scaler here. Issue #1048 tracks this.
Mission.Summary.GROSS_MASS = 'mission:summary:gross_mass' Mission.GROSS_MASS = 'mission:gross_mass' Summary is unnecessary.
Mission.Summary.OPERATING_MASS = 'mission:summary:operating_mass' Mission.OPERATING_MASS = 'mission:operating_mass' Summary is unnecessary.
Mission.Summary.RANGE = 'mission:summary:range' Mission.RANGE = 'mission:range' Summary is unnecessary.
Mission.Summary.RESERVE_FUEL_BURNED = 'mission:summary:reserve_fuel_burned' Mission.RESERVE_FUEL_BURNED = 'mission:reserve_fuel_burned' Summary is unnecessary.
Mission.Summary.TOTAL_FUEL_MASS = 'mission:summary:total_fuel_mass' Mission.TOTAL_FUEL_MASS = 'mission:total_fuel_mass' Summary is unnecessary.
Mission.Summary.USEFUL_LOAD = 'mission:summary:useful_load' Mission.USEFUL_LOAD = 'mission:useful_load' This PR only modifies the name of this variable. This variable is poorly named. In aviation the useful load is Gross mass - Empty mass. Issue #1049 tracks changing this.
Mission.Summary.ZERO_FUEL_MASS = 'mission:summary:zero_fuel_mass' Mission.ZERO_FUEL_MASS = 'mission:zero_fuel_mass' Summary is unnecessary

This PR also removes the duplicate variable Mission.Landing.TOUCHDOWN_MASS and replaces reference to it with Mission.FINAL_MASS

Related Issues

Together with PR #1035 these 2 PRs:

Backwards incompatibilities

None

New Dependencies

None

@cmbenne3 cmbenne3 changed the title Update Mission.Summary.* variables to Mission.* Rename Mission.Summary.* variables to Mission.* Mar 26, 2026
@cmbenne3 cmbenne3 marked this pull request as ready for review March 26, 2026 22:46
@cmbenne3
Copy link
Copy Markdown
Contributor Author

PR #1050 Combines PR #1035 and PR #1044

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

Labels

None yet

Projects

None yet

1 participant