@@ -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
4386TensorKit v0.13 brings a number of performance improvements, but also comes with a number of
0 commit comments