Skip to content

v2.0

Compare
Choose a tag to compare
@ewu63 ewu63 released this 19 Feb 18:51
e772e84

pyOptSparse v2.0 release notes

Features

  • Support for SNOPT v7.2 has been removed. From this version forward the code will not be compatible with SNOPT v7.2. The currently tested version of SNOPT is v7.7. This is due to pySNOPT switching to a different entry point for SNOPT (snkerc instead of snoptc) which allows for a user-specified snstop function. This allows us to extract optimizer information at major iterations.
  • (#39) Major iteration counting has been implemented for SNOPT. All callCounters will now contain the key isMajor which will be True if the point evaluated was for a major step. Note that this is only supported for SNOPT, and isMajor will be set to True for all call counters for other optimizers.
  • (#39) Additional information for the major iterations can now be stored when using SNOPT. The information stored can be selected via the option Save major iteration variables option. The choices are:
    • step
    • merit
    • feasibility
    • optimality
    • penalty
    • Hessian
    • slack
    • lambda
    • condZHZ.
      The first five values are stored at every major iteration by default. Be careful with the Hessian option as the full Hessian matrix can be rather large, and unnecessarily bloat the history file size.
  • (#77) A new metadata entry is now stored in the history file. This encodes the following information:
    • optName: name of the optimization
    • optOptions: all the optimization options used
    • nprocs: number of procs used
    • startTime: starting time as a string
    • endTime: end time as a string
    • optTime: optimization time in seconds
    • optimizer: name of the optimizer
    • version: the pyOptSparse version
    • gitHash: the git hash of the code used (as discussed in #42)

Bugfixes