diff --git a/Project.toml b/Project.toml index 3ea5afc..adb5567 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "NamedDimsArrays" uuid = "60cbd0c0-df58-4cb7-918c-6f5607b73fde" authors = ["ITensor developers and contributors"] -version = "0.6.2" +version = "0.6.3" [deps] Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" @@ -36,6 +36,6 @@ LinearAlgebra = "1.10" MapBroadcast = "0.1.6" Random = "1.10" SimpleTraits = "0.9.4" -TensorAlgebra = "0.2.9" +TensorAlgebra = "0.2.10" TypeParameterAccessors = "0.2, 0.3" julia = "1.10" diff --git a/src/tensoralgebra.jl b/src/tensoralgebra.jl index aee2363..a29938c 100644 --- a/src/tensoralgebra.jl +++ b/src/tensoralgebra.jl @@ -12,7 +12,9 @@ using TensorAlgebra: left_orth, left_polar, lq, + orth, permmortar, + polar, qr, right_null, right_orth, @@ -162,7 +164,9 @@ function factorize_with(f, a::AbstractNamedDimsArray, dimnames_codomain; kwargs. return factorize_with(f, a, codomain, domain; kwargs...) end -for f in [:qr, :lq, :left_polar, :right_polar, :left_orth, :right_orth, :factorize] +for f in [ + :factorize, :left_orth, :left_polar, :lq, :orth, :polar, :qr, :right_orth, :right_polar +] @eval begin function TensorAlgebra.$f( a::AbstractNamedDimsArray, dimnames_codomain, dimnames_domain; kwargs... diff --git a/test/test_tensoralgebra.jl b/test/test_tensoralgebra.jl index 8f8a3e6..37e64f1 100644 --- a/test/test_tensoralgebra.jl +++ b/test/test_tensoralgebra.jl @@ -1,15 +1,18 @@ using LinearAlgebra: factorize, lq, norm, qr, svd -using NamedDimsArrays: - dename, +using NamedDimsArrays: dename, nameddimsindices, namedoneto +using TensorAlgebra: + TensorAlgebra, + contract, + fusedims, left_null, left_orth, left_polar, - nameddimsindices, - namedoneto, + orth, + polar, right_null, right_orth, - right_polar -using TensorAlgebra: TensorAlgebra, contract, fusedims, splitdims + right_polar, + splitdims using Test: @test, @testset, @test_broken elts = (Float32, Float64, Complex{Float32}, Complex{Float64}) @testset "TensorAlgebra (eltype=$(elt))" for elt in elts @@ -59,14 +62,16 @@ elts = (Float32, Float64, Complex{Float32}, Complex{Float64}) a = randn(elt, i, j) # TODO: Should this be allowed? # TODO: Add support for specifying new name. - for f in (qr, lq, left_polar, right_polar, left_orth, right_orth, factorize) + for f in + (factorize, left_orth, left_polar, lq, orth, polar, qr, right_orth, right_polar) x, y = f(a, (i,)) @test x * y ≈ a end a = randn(elt, i, j, k, l) # TODO: Add support for specifying new name. - for f in (qr, lq, left_polar, right_polar, left_orth, right_orth, factorize) + for f in + (factorize, left_orth, left_polar, lq, orth, polar, qr, right_orth, right_polar) x, y = f(a, (i, k), (j, l)) @test x * y ≈ a end