Skip to content

Commit 36bf5a4

Browse files
authored
Add release notes and fix changelog (#294)
1 parent 41d30a4 commit 36bf5a4

File tree

3 files changed

+47
-4
lines changed

3 files changed

+47
-4
lines changed

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ authors:
88
given-names: "Jutho"
99
orcid: "https://orcid.org/0000-0002-0858-291X"
1010
title: "TensorKit.jl"
11-
version: "0.14.11"
11+
version: "0.15.0"
1212
doi: "10.5281/zenodo.8421339"
13-
date-released: "2025-07-18"
13+
date-released: "2025-10-03"
1414
url: "https://github.com/QuantumKitHub/TensorKit.jl"
1515
preferred-citation:
1616
type: article

Changelog.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ This version introduces [MatrixAlgebraKit](https://github.com/QuantumKitHub/Matr
2828
- Backend selection for factorizations - swap algorithms or implementations
2929

3030
#### Changed
31-
- Factorization functions `leftorth`, `rightorth`, `tsvd`, `eig`, `eigh` deprecated in favor of MatrixAlgebraKit variants (`left_orth`, `right_orth`, `tsvd`, `eig`, `eigh`)
32-
- Truncation strategies now use MatrixAlgebraKit names: `truncrank` (replaces `truncdim`), `truncbelow` (replaces `trunctol`)
31+
- Factorization functions `leftorth`, `rightorth`, `tsvd`, `eig`, `eigh` deprecated in favor of MatrixAlgebraKit variants (`left_orth`, `right_orth`, `svd_compact`, `eig_full`, `eigh_full`)
32+
- Truncation strategies now use MatrixAlgebraKit names: `truncrank` (replaces `truncdim`) and `trunctol` (replaces `truncbelow`)
3333
- `left_orth` and `right_orth` now always output tensors with a single connecting space
3434
- `left_orth` and `right_orth` now always have connecting space with `isdual=false`
3535
- code formatter is now [Runic.jl](https://github.com/fredrikekre/Runic.jl)

README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,49 @@ A Julia package for large-scale tensor computations, with a hint of category the
3838
[aqua-img]: https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg
3939
[aqua-url]: https://github.com/JuliaTesting/Aqua.jl
4040

41+
## Release notes for v0.15
42+
43+
TensorKit v0.15 consists of a (mostly internal) rewrite of the tensor factorizations to make
44+
use of [MatrixAlgebraKit.jl](https://github.com/QuantumKitHub/MatrixAlgebraKit.jl). This
45+
comes with a number of performance improvements, but also some breaking changes:
46+
47+
1. The full interface of `MatrixAlgebraKit` decompositions is now supported, such that we
48+
now also support truncated eigenvalue decompositions via `eig_trunc` and `eigh_trunc`,
49+
and have dedicated functions for `qr_compact`/`lq_compact`, `qr_full`/`lq_full`,
50+
`qr_null`/`lq_null` and `left_polar`/`right_polar`.
51+
52+
2. The previous factorization interface is now deprecated, and users should migrate from the
53+
deprecated functions to their MatrixAlgebraKit counterparts:
54+
- `leftorth`/`rightorth` -> `left_orth`/`right_orth`
55+
- `leftnull`/`rightnull` -> `left_null`/`right_null`
56+
- `tsvd` -> `svd_compact`, `svd_full` and `svd_trunc`
57+
- `eig` -> `eig_full` and `eig_trunc`
58+
- `eigh` -> `eigh_full` and `eigh_trunc`
59+
60+
3. The truncation interface has some improvements, in particular by having support for both
61+
absolute and relative tolerances, as well as a new `truncfilter` strategy to pass a
62+
filter function. `trunctol`, `truncrank` and `truncerror` replace the old `truncbelow`,
63+
`truncdim` and `truncerr`.
64+
65+
4. The factorizations pullbacks have been simplified, with a lot of boilerplate code removed
66+
and out-sourced to MatrixAlgebraKit.jl
67+
68+
## Release notes for v0.14
69+
70+
TensorKit v0.14 adds the `DiagonalTensorMap` type and provides some extra index functionality:
71+
72+
1. The `DiagonalTensorMap` is used to represent tensors that only contain diagonal entries,
73+
and map a single input `ElementarySpace` to the same output `ElementarySpace`. This is
74+
also the default output type for the matrix of singular and eigenvalues.
75+
76+
2. `flip(t, i)` changes the duality flag of the `i`th index of `t`, in such a way that
77+
flipping a pair of contracted indices in an `@tensor` contraction does not alter the
78+
result
79+
80+
3. `insertleftunit(t, i)` and `insertrightunit(t, i)` can be used to insert a trivial unit
81+
space to the left or right of an index `i`, whereas `removeunit(t, i)` undoes that
82+
operation.
83+
4184
## Release notes for v0.13
4285

4386
TensorKit v0.13 brings a number of performance improvements, but also comes with a number of

0 commit comments

Comments
 (0)