From 8089f131650e799b4486538c69c3bee54bbe2ca7 Mon Sep 17 00:00:00 2001 From: lkdvos Date: Fri, 1 May 2026 07:49:01 -0400 Subject: [PATCH 1/2] add specializations for default algorithm --- src/linalg/factorizations.jl | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/linalg/factorizations.jl b/src/linalg/factorizations.jl index 5d49f65..75045eb 100644 --- a/src/linalg/factorizations.jl +++ b/src/linalg/factorizations.jl @@ -55,6 +55,27 @@ for f! in ( end end +# Default algorithm +# ----------------- +# Needed for disambiguation +for f in [ + :lq_full, :lq_compact, :lq_null, + :qr_full, :qr_compact, :qr_null, + :schur_full, :schur_vals, + :eig_full, :eig_vals, :eig_trunc, :eig_trunc_no_error, + :eigh_full, :eigh_vals, :eigh_trunc, :eigh_trunc_no_error, + :svd_full, :svd_compact, :svd_trunc, :svd_trunc_no_error, :svd_vals, + :left_polar, :right_polar, + :left_orth, :right_orth, :left_null, :right_null, + :project_hermitian, :project_antihermitian, :project_isometric, + ] + f! = Symbol(f, :!) + @eval MAK.$f!(t::AbstractBlockTensorMap, alg::DefaultAlgorithm) = + MAK.$f!(t, MAK.select_algorithm(MAK.$f!, t, nothing; alg.kwargs...)) + @eval MAK.$f!(t::AbstractBlockTensorMap, out, alg::DefaultAlgorithm) = + MAK.$f!(t, out, MAK.select_algorithm(MAK.$f!, t, nothing; alg.kwargs...)) +end + # specializations until fixes in base package function MAK.is_left_isometric(A::BlockMatrix; atol::Real = 0, rtol::Real = MAK.defaulttol(A), norm = LinearAlgebra.norm) P = A' * A From eef72b3088f34eb0ab8bf1aa22349e4f254f174f Mon Sep 17 00:00:00 2001 From: lkdvos Date: Fri, 1 May 2026 07:49:31 -0400 Subject: [PATCH 2/2] bump v 0.3.11 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index c0c0443..520d6cb 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "BlockTensorKit" uuid = "5f87ffc2-9cf1-4a46-8172-465d160bd8cd" -version = "0.3.10" +version = "0.3.11" authors = ["Lukas Devos and contributors"] [deps]