QuTiP 5 is a redesign of many of the core components of QuTiP (Qobj
,
QobjEvo
, solvers) to make them more consistent and more flexible.
Qobj
may now be stored in either sparse or dense representations,
and the two may be mixed sensibly as needed. QobjEvo
is now used
consistently throughout QuTiP, and the implementation has been
substantially cleaned up. A new Coefficient
class is used to
represent the time-dependent factors inside QobjEvo
.
The solvers have been rewritten to work well with the new data layer
and the concept of Integrators
which solve ODEs has been introduced.
In future, new data layers may provide their own Integrators
specialized to their representation of the underlying data.
Much of the user-facing API of QuTiP remains familiar, but there have had to be many small breaking changes. If we can make changes to easy migrating code from QuTiP 4 to QuTiP 5, please let us know.
QuTiP 5 was a massive effort by many contributors. Please take a moment to look through the list of contributors https://qutip.readthedocs.io/en/qutip-5.0.x/changelog.html#contributor.