Releases: SciML/OrdinaryDiffEq.jl
Rosenbrock speed and Integrator Interface Enhancements
The speed of the Rosenbrock23/32 method was greatly improved, and the integrator interface is now fully compatible with multiscale arrays.
DataArrays and Variable Rate Jump Compatibility
This patch contains bugfixes (and new tests) which allow for compatibility with the DataArrays and variable rate jump interfaces.
Discrete Algorithm and Performance Updates
Adds a new algorithm type, the Discrete algorithm, for essentially doing a pass through.
This is heavily used by JumpDiffEq.jl. Also there are many performance improvements.
Enhanced Interpolations and Improved Callbacks
You can now choose factorizations, event handling is better, dtmin is better, Rosenbrock has addsteps! and can resize, and enhanced interpolations are implemented.
Bug fixes
Various bugfixes and performance improvements, with a version bump as it adds some things from the DiffEqBase v0.7 integrator spec.
Init dt and no recompile bugfix
This is a small patch which fixes a documentation example where an out-of-place function is used with arrays and an initial dt is not given:
http://docs.juliadiffeq.org/latest/tutorials/ode_example.html#Systems-of-Equations-1
Not a very common use-case in practice, but support for it is fixed.
In addition, if someone gives the solver a problem type which is not strictly typed, the function will not be strictly typed. While this is not something one normally would want to do (JIT costs here are around 0.6 seconds, and so for any simulation lasting longer than a second you either get performance parity or it's better to JIT), we found that for the purposes of DiffEqOnline, avoiding the JIT is necessary since much simpler problems are solved there. More on that later...
Rosenbrock BigFloat BugFix and MaxIters BugFix
Rosenbrock methods used to error due to a ForwardDiff bug when solving with BigFloats. maxiters=1e5
now does a conversion to Int so you don't need to worry about it.
Integrator and Callback Interfaces, Composite Algorithm
For more details on this release, see the post here: http://juliadiffeq.org/2017/01/08/base.html . Lots of the docs are already updated / are updating. Tests won't pass until ParameterizedFunctions and DiffEqDevTools tags go though, but version requirements should ensure there's no breakage. This should be compatible with the previous DiffEqBase version as well (just not the tests).