You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
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
The text was updated successfully, but these errors were encountered: