OpenMDAO / OpenMDAO/Aviary

Rename 'include_takeoff' setting and add documentation on it to explain its function.

Open
#1,077 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

code cleanup
Dominant language
Python
Stars
287
Forks
140
Avg merge
6d 14h
Merged PRs (30d)
18

Description

Desired capability or behavior.

We currently have a boolean setting in phase_info: 'include_takeoff'.
This variable has a potentially confusing behavior and this issue tracks:

  1. Add to the documentation to describe it's behavior
  2. Change name to assist with describing its behavior

Details:
This variable is only for energy state EOM.
When include_takeoff = True it adds the takeoff subsystem to the Aviary Problem.
This subsystem calculates Mission.Takeoff.FUEL, and end of takeoff properties such as Altitude, Mach, and aircraft mass, feeding these into the start of the first mission phase.
We need to add some checks to identify discontinuities between end of takeoff and the first mission phase otherwise this might prevent trajectories from converging. (initial mach, initial altitude etc... must match)
The variable Mission.Takeoff.FUEL_BURN is 'included' in the fuel burn of the aircraft regardless of the setting of include_takeoff - this is the confusing bit!
If = True and FUEL is set in aviary_inputs then the calculated value will be overwritten by the input.
If = False and FUEL is set in aviary_inputs then there will not be a calculated value and Aviary will use the specified value.
If = False and FUEL is not included in aviary_inputs it probably defaults to zero - this needs checking.
If = True and FUEL is not included in aviary_inputs Aviary adds the subsystem and calculates the fuel burn.

Mission.Taxi.TAXI_OUT_FUEL is always included in the mission fuel, regardless of whether takeoff is included.

Suggest name change to something like 'model_takeoff' or similar so it's clear what Aviary will do with this parameter. Should this variable be added to the Hierarchy or remain as an option in phase_info.

Some of these details are discussed in comments in PR #1068

Is your feature request related to a problem? Please describe.

No response

Associated Bug Report

No response

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with the phase_info option handling and the comments in PR #1068; trace how include_takeoff, FUEL, and FUEL_BURN are resolved, including the unspecified default. Settle the setting name and location, document the final behavior, and add checks for discontinuities between takeoff and the first mission phase; done means the renamed option and its semantics are verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, documentation
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.