diff --git a/Project.toml b/Project.toml index 21e7a199..ce58e06c 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "RecursiveArrayTools" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" authors = ["Chris Rackauckas "] -version = "3.8.1" +version = "3.8.2" [deps] Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" diff --git a/src/array_partition.jl b/src/array_partition.jl index 23ab35b9..1a194d7a 100644 --- a/src/array_partition.jl +++ b/src/array_partition.jl @@ -425,6 +425,13 @@ for factorization in vcat(__get_subtypes_in_module(LinearAlgebra, Factorization; end end +function LinearAlgebra.ldiv!( + A::LinearAlgebra.QRPivoted{T, <: StridedMatrix{T}, <: AbstractVector{T}}, + b::ArrayPartition{T}) where {T <: Union{Float32, Float64, ComplexF64, ComplexF32}} + x = ldiv!(A, Array(b)) + copyto!(b, x) +end + function LinearAlgebra.ldiv!(A::LinearAlgebra.QRCompactWY{T, M, C}, b::ArrayPartition) where { T <: Union{Float32, Float64, ComplexF64, ComplexF32}, diff --git a/test/linalg.jl b/test/linalg.jl index 84d255fa..cd778aa5 100644 --- a/test/linalg.jl +++ b/test/linalg.jl @@ -18,7 +18,7 @@ for T in (UpperTriangular, UnitUpperTriangular, LowerTriangular, UnitLowerTriang @test B * Array(bbb) ≈ b end -for ff in (lu, svd, qr) +for ff in (lu, svd, qr, Base.Fix2(qr, ColumnNorm())) FF = ff(A) @test A * (FF \ b) ≈ b bbb = copy(b)