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

Verbosity cleanup and reduced warnings/printouts #636

Open
wants to merge 25 commits into
base: main
Choose a base branch
from

Conversation

jkirk5
Copy link
Contributor

@jkirk5 jkirk5 commented Dec 26, 2024

Summary

Made a variety of updates related to Aviary's printouts and giving users more control over them, as well as some related housekeeping items while I was looking at that part of the code.

Printouts

  • Overhauled the pyoptsparse and optimizer printouts to provide less information (mostly unneeded/redundant with reports) across the board for all verbosities except DEBUG.
  • Eliminated unnecessary openmdao and dymos printouts.
  • Added a number of verbosity checks on other print statements throughout Aviary (not comprehensive).
  • Tweaked a number of aircraft models to avoid preprocessor warnings about ambiguous inputs (such as providing NUM_ENGINES but not NUM_WING_ENGINES (not comprehensive).

Verbosity

  • Verbosity can now be set independently of what is in the .csv or AviaryValues object when using the Python interface (L1 or L2) as well as from the CLI
    • run_aviary() now has a verbosity argument which overrides whatever is in the aircraft data. Can be passed via CLI.
    • Relevant methods in method_for_level2.py have optional verbosity arguments which override any other verbosity sources for that method call only. In case you want to run a specific step with higher/lower verbosity when using L2.
  • Switched a large number of tests to QUIET verbosity, including all benchmark tests.
  • The default optimizer for AviaryProblem is now IPOPT instead of SNOPT.
  • Default verbosity now pulls from metadata instead of being hardcoded (still BRIEF).

Bugfixes

  • AviaryProblems now uses openmdao default problem name when given an AviaryValues, instead of trying to name it off of the filename Path().stem.

All of methods_for_level2.py got the autoformat treatment since I touched a bunch of pieces of it - makes for a messy diff, but this file was very inconsistently styled, IMO it needed to be done.

Related Issues

  • Resolves #

Backwards incompatibilities

API changes - Level 2

  • run_aviary(): renamed aircraft_filename argument to aircraft_data to reflect capability to provide an AviaryValues object instead of a filepath.

New Dependencies

None

@jkirk5 jkirk5 changed the title Verbosity cleanup roundl;i' Verbosity cleanup round Dec 26, 2024
@jkirk5 jkirk5 changed the title Verbosity cleanup round Verbosity cleanup and reduced warnings/printouts Dec 27, 2024
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