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.
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.