OpenMDAO v0.12.0 Release Notes
- Major refactor of the underlying data-passing code to make things more efficient and pave the way for MPI support.
- Most data is now passed via a set of large shared vectors on the framework side.
- Total refactor of the derivatives system with better support for variable trees and arrays.
- Support for multiple linear solvers for total derivatives: Petsc KSP, Scipy GMres, Linear GaussSeidel
- Options for controling which solvers are used, tolerances, etc., can now be found in the `gradient_options`
atrribute of the corresponding driver.
- Backwards-incompatible change: All component arrays must be properly sized at run time. Users can no longer rely on the
data passing system to fill arrays with the correct size as it goes. User will see errors for any un-initialized arrays.
- Refactor of the nonlinear solvers: FixedPointIterator (GaussSeidel) and Newton were totally re-written.
- Plugin system now allows users to specify custom github repos from which to install plugins.
- Backwards-incompatible change: CaseRecording system refactored to use JSON or BSON sparse data file formats. CSV and dump case recorders are removed. users should use the CSV or DUMP post processors on the JSON or BSON files instead.
- Post processors can be used in separate scripts from the run file and run at the same time to track execution progress.
- Case recording options now specified in the `recording_options` variable tree on an assembly
- Fixed a bug with recording variable trees in the new case recorders.