Skip to content

Commit 1ee3cd2

Browse files
Merge pull request #43 from JuliaDiffEq/issingular
Specialize issingular on adj/tra
2 parents 9b6e7f3 + 8609a17 commit 1ee3cd2

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "ArrayInterface"
22
uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
3-
version = "2.6.0"
3+
version = "2.6.1"
44

55
[deps]
66
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"

src/ArrayInterface.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ issingular(T::Tridiagonal) = !issuccess(lu(A, check=false))
122122
issingular(A::Union{Hermitian,Symmetric}) = diaganyzero(bunchkaufman(A, check=false).LD)
123123
issingular(A::Union{LowerTriangular,UpperTriangular}) = diaganyzero(A.data)
124124
issingular(A::Union{UnitLowerTriangular,UnitUpperTriangular}) = false
125+
issingular(A::Union{Adjoint,Transpose}) = issingular(parent(A))
125126
diaganyzero(A) = any(iszero, view(A, diagind(A)))
126127

127128
"""

test/runtests.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,12 @@ using ArrayInterface: issingular
150150
S = Symmetric(R)
151151
L = UpperTriangular(R)
152152
U = LowerTriangular(R)
153-
@test all(!issingular, [R, S, L, U])
153+
@test all(!issingular, [R, S, L, U, U'])
154154
R[:, 2] .= 0
155-
@test all(issingular, [R, L, U])
155+
@test all(issingular, [R, L, U, U'])
156156
@test !issingular(S)
157157
R[2, :] .= 0
158158
@test issingular(S)
159-
@test all(!issingular, [UnitLowerTriangular(R), UnitUpperTriangular(R)])
159+
@test all(!issingular, [UnitLowerTriangular(R), UnitUpperTriangular(R), UnitUpperTriangular(R)'])
160160
end
161161
end

0 commit comments

Comments
 (0)