Releases: QuantumKitHub/TensorKit.jl
v0.14.8
v0.14.7
TensorKit v0.14.7
This patch release contains some non-breaking changes in the form of important performance reworks that are particularly relevant to non-Abelian symmetries in the context of tensors with a larger number of indices.
The backend for index manipulations for these kinds of tensors should be noticeably faster.
For those that wish the experiment, you can also now configure the multithreading settings for these operations through set_num_transformer_threads(n).
Additionally, the system for keeping the cached data has been refactored and cleaned up, so it should be slightly easier to interact with that and print information about it.
Finally, various minor convenience and docs improvements have been carried out.
Merged pull requests:
- make all caches behave the same (#244) (@Jutho)
- Default
spacetypeandsectortypeimplementations in type domain (#248) (@ogauthe) - DiagonalTensorMap performance and convenience specializations (#249) (@lkdvos)
- small type stability fix (#250) (@Jutho)
- [Performance]
TreeTransformerrefactor + multithreading (#251) (@lkdvos) - Add color inversion for docs images in dark themes (#253) (@leburgel)
Closed issues:
- Dark theme of website "https://jutho.github.io/TensorKit.jl/stable/" (#128)
- Can the category VecG be supported? (#227)
- About functions on braided sector (#246)
v0.14.6
TensorKit v0.14.6
This patch release features mostly small fixes and improvements.
Most notable are the addition of rrule support for inv, DiagonalTensorMap and flip, and the ability to use in-place versions of the special-purpose constructors like isomorphism!, unitary! etc.
Merged pull requests:
- Add
complex(::BraidingTensor)specialization (#226) (@lkdvos) - Replace
isequalwith==forFusionTree(#228) (@lkdvos) - Correct argument names in planartrace function (#229) (@lkdvos)
- correct typo in docs (#231) (@VictorVanthilt)
- Rewrite special-purpose constructors to use in-place operations (#232) (@lkdvos)
- Add benchmark suite (#233) (@lkdvos)
- Add
rruleforDiagonalTensorMapand include tests (#234) (@lkdvos) - Add
rruleforinvand corresponding tests (#236) (@lkdvos) - Improve error handling for tensor functions (#238) (@lkdvos)
- Allow twisting of trivial sectors without restrictions (#240) (@lkdvos)
- add rrule for flip (#241) (@sanderdemeyer)
Closed issues:
v0.14.5
v0.14.4
TensorKit v0.14.4
Merged pull requests:
- Add dedicated
BlockIterators (#206) (@lkdvos) - DiagonalTensorMap constructor rrule (#208) (@ebelnikola)
- Fix rrules of TensorOperations with
DiagonalTensorMap(#210) (@lkdvos) - Add DiagonalTensorMap constructors and converters (#212) (@Yue-Zhengyuan)
- Add rrule for matrix exponential (#214) (@lkdvos)
- Nightly tests don't count as failed CI (#215) (@lkdvos)
- Add rrule for
twist(#217) (@lkdvos) - Attempt to use default
archin actions to avoid complaints (#218) (@lkdvos)
Closed issues:
v0.14.3
TensorKit v0.14.3
Merged pull requests:
- fixed typo (#199) (@adamnemecek)
rruleforcopy_oftype,permutedcopy_oftype(#202) (@lkdvos)- Fix leftorth! and rightorth! with empty blocks (#205) (@Jutho)
- add
unthunkin rrules ofeig!eigh!leftorth!rightorth!(#207) (@tangwei94)
Closed issues:
v0.14.2
TensorKit v0.14.2
Merged pull requests:
Closed issues:
v0.14.1
TensorKit v0.14.1
- Fix an issue with fusiontree iterators for symmetries with multiple fusion.
Merged pull requests:
Closed issues:
- Fusiontree iterator with multiplicities (#192)
v0.14.0
TensorKit v0.14.0
- Various index functionalities have been added:
flipcan be used to change arrows,insertleftunit,insertrightunitandremoveunitwill manipulate trivial indices.
Breaking changes
- The
DiagonalTensorMapis now the default output type for the diagonal singular and eigenvalue tensors returned bytsvd,eigand related functions - There is a small change in the truncation of singular values for non-abelian symmetries, where now it is guaranteed that smaller singular values are removed first
Merged pull requests:
- Add and test rrules for
realandimag(#183) (@lkdvos) - Constructor fixes (#185) (@Jutho)
insertleftunit,insertrightunitandremoveunit(#187) (@lkdvos)- change truncation strategy to always select smallest schmidt coefficient (#188) (@Jutho)
- add 🐬 functionality (#189) (@Jutho)
- use diagonaltensormap (#190) (@Jutho)
- some cleanup for v0.14 (#191) (@Jutho)
Closed issues:
- svdvals and eigvals (#34)
- How to apply gradient of gradient? (#175)
- convert to floating point in matrix factorisations (#181)
- Fail to extract block by specifying sector of each index for (N,0) or (0,N) tensors (#182)
- Why using weighted singular values for the truncation? (#184)
- Partial convert(Array, TensorMap) (#186)
v0.13.2
TensorKit v0.13.2
- Add functionality for working with
DiagonalTensorMap(currently not yet used) - Various fixes and improvements
Merged pull requests:
- WIP: implementation of DiagonalTensorMap (#174) (@Jutho)
- CompatHelper: bump compat for VectorInterface to 0.5, (keep existing compat) (#176) (@github-actions[bot])
- Bump codecov/codecov-action from 4 to 5 (#177) (@dependabot[bot])
- Braidingtensor improvements (#179) (@lkdvos)
- Fix converting empty tensors to array (#180) (@lkdvos)
Closed issues:
- convert to Array fails for empty TensorMap (#178)