Skip to content

Conversation

@kanekosh
Copy link
Contributor

@kanekosh kanekosh commented Nov 10, 2025

Summary

This PR improves and fixes the level-2 FLOPS-based detailed nominal takeoff example.

  • I added a mass_link constraint to the solved 2DoF problem configurator, like the height-energy configurator already does. Without this, the initial mass is fixed because it sets fix_initial=True for the mass state in the FLOPS ground-roll phase. Now it overrides the mass state to fix_initial=False and add an equality constraint to impose initial mass state = mission:summary:gross_mass.
  • I made minor changes to num_segments and optimizer settings so the level-2 detailed takeoff example converges.

Questions

In the height-energy problem configurator, the mass link constraint is only added when the simple takeoff component is not added. I'm not sure if we should do the same for the solved-2DoF configurator (I guess the question comes down to: do we ever use the simple takeoff comp along with solved-2DoF EoM for main mission, or solved-2DoF is exclusively for FLOPS detailed takeoff?)

Also the height-energy configurator adds the range and mass residual constraints but the solved-2DoF configurator does not. This works fine for my case because I only use solved-2DoF mission for takeoff, but if the solved-2DoF phases are intended to cover the entire mission, range and mass residual constraints would be required. Currently a user would have to manually add these in their runscript (which in my opinion perfectly fine)

Note

It might also help other cases if we set a default limited_memory_max_history in Aviary's set_driver method. This is analogous to SNOPT's Hessian frequency. IPOPT's default for this parameter is 6, but in my experience carrying more history for Hessian approximation improves convergence.

Related Issues

  • Resolves #

Backwards incompatibilities

None

New Dependencies

None

@kanekosh kanekosh marked this pull request as draft November 11, 2025 18:51
@kanekosh kanekosh marked this pull request as ready for review November 11, 2025 19:38
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.

1 participant