Some updates for benchmark performance.
Summary
1 Reduced the SNOPT feasibility tolerance from 1e-7 to 1e-6 to match the settings for IPOPT and take the extra burden off the optimizer. 2 Changed the values of some fixed refs. 3 In the Alternate problem, relaxed the upper bound of the gross mass constraint because it was causing the optimizer some problems. 4 Cleaned up the add_control call in the phase builder to remove possible subtle differences between None and _undefined in dymos. 5 Add missing "continuity_ref" to the add_state call, and set it to the same value as the ref. 6 Fixed broken target_range constraint in the 2dof configurator. 7 Restored a separate phase-info for the BWB because it flies a different altitude, and needed some specific tuning of scaling parameters. 8 Fixed a few issues in the default 2dof phase_info:
- Angles in the Rotation phase mistakenly were declared as radians, but were actually in degrees.
- Added missing initial altitude for climb 1. (This must have broken at some point. The accel phase is strange, with no altitude to connect to.)
- Changed test values to correspond to correct phase info. 9 Added unique distance ref for later phases in the height_energy phase_info since those phases have a value for distance.
Related Issues
- Resolves #
Backwards incompatibilities
None
New Dependencies
None
The file name generic_BWB_phase_info.py should be changed to include 2dof because we might need another phase_info file for FLOPS based models.
The file name
generic_BWB_phase_info.pyshould be changed to include2dofbecause we might need anotherphase_infofile for FLOPS based models.
thanks, I've added 2dof into the title of that mission info.
In the PR description you talk about updating the add_control call (4), but I think the changes are to the add_state call?
Oops, you are right. I will update the description.
Are there user docs to be updated?
Are there user docs to be updated?
I wasn't planning an update for these changes, though we should probably take a look at any existing phase_infos that are specified in the docs.