diff --git a/docs/releases.rst b/docs/releases.rst index d539f05..dd7ac9a 100644 --- a/docs/releases.rst +++ b/docs/releases.rst @@ -8,3 +8,4 @@ Release history releases/0_2_0 releases/0_3_0 releases/0_4_0 + releases/0_5_0 diff --git a/docs/releases/0_5_0.rst b/docs/releases/0_5_0.rst new file mode 100644 index 0000000..007cb08 --- /dev/null +++ b/docs/releases/0_5_0.rst @@ -0,0 +1,32 @@ +0.5.0 +----- + +The most prominent change of this release is the addition of the +``RestrictedPartHoleDrudge``. Compared with the ``SpinOneHalfPartHoleDrudge``, +this class is less flexible but can be orders of magnitude faster. Note that +no backward compatibility is broken by this. All previous script should still +run fine. For problems originally written in terms of the unitary group +generators, switching to this new drudge can be really easy. All these needs +to be done is to remove your own definitions of the unitary group generators, +and use the generator ``e_`` provided by the drudge instead. For instance, as +in the patch for the `RCCSD example`_. + +.. _RCCSD example: https://github.com/tschijnmo/drudge/commit/83f65a690981f7a3c53a93463b58c90d14c9c5ff + +With such simple changes, the internals of the evaluations will be switched to +the new scheme and the code will be significantly faster. + +In addition of this change, there are also some other revisions, + +* A bug in Spark has been circumvented in tensor rewriting. Thanks to Ethan + Qiu for pointing this out. + +* Tensor definition now allow generic external indices without explicit range. + +* A new simplification heuristics is added to simplify summations whose dummy + is not actually involved in the tensor. + +* Add total timing support in ``Stopwatch``. + +* Optimize summation discovery based on Einstein summation convention. +