When using height-energy for running missions that don't fly the full design profile, aviary should not add a constraint on the mass residual. If we aren't doing a sizing mission, and thus, gross mass can't be varied, then the mass balance constraint can never be satisfied, and the optimization will not succeed.
I think the solution here is to only turn on that constraint when we are doing a sizing problem, and thus optimize_mass is set to True.
Example
"examples/run_detailed_takeoff_in_level2.py" shows the problem. If you run with SNOPT, the problem starts in inelastic mode and never leaves. This is because it can't satisfy the mass resid constraint because it can't consume enough fuel during take-off, and gross mass is fixed.
Description
When using height-energy for running missions that don't fly the full design profile, aviary should not add a constraint on the mass residual. If we aren't doing a sizing mission, and thus, gross mass can't be varied, then the mass balance constraint can never be satisfied, and the optimization will not succeed.
I think the solution here is to only turn on that constraint when we are doing a sizing problem, and thus optimize_mass is set to True.
Example
"examples/run_detailed_takeoff_in_level2.py" shows the problem. If you run with SNOPT, the problem starts in inelastic mode and never leaves. This is because it can't satisfy the mass resid constraint because it can't consume enough fuel during take-off, and gross mass is fixed.
Aviary Version
0.9.4-dev
Relevant environment information
No response