Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removing Propulsion Wrapper #402

Open
rootAmos opened this issue Nov 23, 2021 · 0 comments
Open

Removing Propulsion Wrapper #402

rootAmos opened this issue Nov 23, 2021 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@rootAmos
Copy link

Is your feature request related to a problem? Please describe.
In FAST-OAD, the propulsion system is an object of the BasicICEngine class and wrapped into an openmdao explicit component that is called as necessary by the framework. The wrapper should be removed for propulsion systems written as groups.

Describe the solution you'd like
The wrapper is suitable for simpler architectures, for example the current turbofan engine. However, for distributed hybrid/electric/Hydrogen architectures, it is significantly easier and more practical to model these architectures as groups (likely containing a number of subgroups) in openmdao. This is not inherently compatible with the current propulsion wrapper used by FAST-OAD. One would have to create an additional class for the architecture based on the output of the group, wrap it, and then wrap it again into an explicit component for FAST-OAD. Doing so breaks the link between the global optimization of the aircraft and any possible optimization within the propulsion system by openmdao. It's considerably more effort and the user would no longer be able to optimize the propulsion system when running an aircraft level optimization.

Instead, it would be helpful if the propulsion wrapper was removed, and the propulsion system could be added as an openmdao group. It should initially be sized, and called at each segment during the mission analysis. It should take throttle and atmospheric conditions as an input, and calculate fuel burn (which then updates MTOW) and thrust. These should be fed back into the mission performance modules and looped to determine the throttle setting needed to meet the flight path of that particular segment.

Additional context
An example of this can be found in openconcept: https://github.com/mdolab/openconcept

@rootAmos rootAmos added the enhancement New feature or request label Nov 23, 2021
@christophe-david christophe-david self-assigned this Oct 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants