diff --git a/Project.toml b/Project.toml index b0a350bc..852f72ae 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "BlockSparseArrays" uuid = "2c9a651f-6452-4ace-a6ac-809f4280fbb4" authors = ["ITensor developers and contributors"] -version = "0.7.0" +version = "0.7.1" [deps] Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" @@ -39,7 +39,7 @@ GPUArraysCore = "0.1.0, 0.2" LinearAlgebra = "1.10" MacroTools = "0.5.13" MapBroadcast = "0.1.5" -MatrixAlgebraKit = "0.2" +MatrixAlgebraKit = "0.2.2" SparseArraysBase = "0.5" SplitApplyCombine = "1.2.3" TensorAlgebra = "0.3.2" diff --git a/src/factorizations/lq.jl b/src/factorizations/lq.jl index acb1046f..79a068cf 100644 --- a/src/factorizations/lq.jl +++ b/src/factorizations/lq.jl @@ -1,24 +1,5 @@ using MatrixAlgebraKit: MatrixAlgebraKit, default_lq_algorithm, lq_compact!, lq_full! -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_lq_algorithm(A::AbstractBlockSparseMatrix; kwargs...) - return default_lq_algorithm(typeof(A); kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(lq_compact!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_lq_algorithm(A; kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(lq_full!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_lq_algorithm(A; kwargs...) -end - function MatrixAlgebraKit.default_lq_algorithm( A::Type{<:AbstractBlockSparseMatrix}; kwargs... ) diff --git a/src/factorizations/polar.jl b/src/factorizations/polar.jl index d8abba7c..f123662f 100644 --- a/src/factorizations/polar.jl +++ b/src/factorizations/polar.jl @@ -7,34 +7,6 @@ using MatrixAlgebraKit: right_polar!, svd_compact! -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(left_polar!), A::AbstractBlockSparseMatrix; kwargs... -) - return default_algorithm(left_polar!, typeof(A); kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(left_polar!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return PolarViaSVD(default_algorithm(svd_compact!, A; kwargs...)) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(right_polar!), A::AbstractBlockSparseMatrix; kwargs... -) - return default_algorithm(right_polar!, typeof(A); kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(right_polar!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return PolarViaSVD(default_algorithm(svd_compact!, A; kwargs...)) -end - function MatrixAlgebraKit.check_input(::typeof(left_polar!), A::AbstractBlockSparseMatrix) @views for I in eachblockstoredindex(A) m, n = size(A[I]) diff --git a/src/factorizations/qr.jl b/src/factorizations/qr.jl index 74e587b7..ceaaf575 100644 --- a/src/factorizations/qr.jl +++ b/src/factorizations/qr.jl @@ -1,25 +1,6 @@ using MatrixAlgebraKit: MatrixAlgebraKit, default_qr_algorithm, lq_compact!, lq_full!, qr_compact!, qr_full! -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_qr_algorithm(A::AbstractBlockSparseMatrix; kwargs...) - return default_qr_algorithm(typeof(A); kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(qr_compact!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_qr_algorithm(A; kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - ::typeof(qr_full!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_qr_algorithm(A; kwargs...) -end - function MatrixAlgebraKit.default_qr_algorithm( A::Type{<:AbstractBlockSparseMatrix}; kwargs... ) diff --git a/src/factorizations/svd.jl b/src/factorizations/svd.jl index 1d4d88bf..673e5763 100644 --- a/src/factorizations/svd.jl +++ b/src/factorizations/svd.jl @@ -1,14 +1,5 @@ using MatrixAlgebraKit: MatrixAlgebraKit, default_svd_algorithm, svd_compact!, svd_full! -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -using MatrixAlgebraKit: TruncatedAlgorithm, select_truncation, svd_trunc! -function MatrixAlgebraKit.select_algorithm( - ::typeof(svd_trunc!), A::Type{<:AbstractBlockSparseMatrix}, alg; trunc=nothing, kwargs... -) - alg_svd = select_algorithm(svd_compact!, A, alg; kwargs...) - return TruncatedAlgorithm(alg_svd, select_truncation(trunc)) -end - """ BlockPermutedDiagonalAlgorithm(A::MatrixAlgebraKit.AbstractAlgorithm) @@ -21,25 +12,6 @@ struct BlockPermutedDiagonalAlgorithm{A<:MatrixAlgebraKit.AbstractAlgorithm} <: alg::A end -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_svd_algorithm(A::AbstractBlockSparseMatrix; kwargs...) - return default_svd_algorithm(typeof(A), kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - f::typeof(svd_compact!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_svd_algorithm(A; kwargs...) -end - -# TODO: Delete once https://github.com/QuantumKitHub/MatrixAlgebraKit.jl/pull/32 is merged. -function MatrixAlgebraKit.default_algorithm( - f::typeof(svd_full!), A::Type{<:AbstractBlockSparseMatrix}; kwargs... -) - return default_svd_algorithm(A; kwargs...) -end - function MatrixAlgebraKit.default_svd_algorithm( A::Type{<:AbstractBlockSparseMatrix}; kwargs... )