Skip to content

Commit 6257c18

Browse files
committed
generalize to sparse rhs
1 parent b084a30 commit 6257c18

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/solvers/cholmod.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import Base: (*), convert, copy, eltype, getindex, getproperty, show, size,
1515
using Base: require_one_based_indexing
1616

1717
using LinearAlgebra
18-
using LinearAlgebra: RealHermSymComplexHerm, AdjOrTrans, AdjOrTransStridedMat
18+
using LinearAlgebra: RealHermSymComplexHerm, AdjOrTrans, AdjOrTransAbsMat
1919
import LinearAlgebra: (\), AdjointFactorization,
2020
cholesky, cholesky!, det, diag, ishermitian, isposdef,
2121
issuccess, issymmetric, ldiv!, ldlt, ldlt!, logdet,
@@ -1928,7 +1928,7 @@ function \(adjL::AdjointFactorization{<:VTypes,<:Factor}, B::StridedMatrix)
19281928
L = adjL.parent
19291929
return Matrix(solve(CHOLMOD_A, L, Dense(B)))
19301930
end
1931-
(\)(adjL::AdjointFactorization{<:VTypes,<:Factor}, B::LinearAlgebra.AdjOrTransStridedMat) = adjL \ copy(B)
1931+
(\)(adjL::AdjointFactorization{<:VTypes,<:Factor}, B::AdjOrTransAbsMat) = adjL \ copy(B)
19321932

19331933
const RealHermSymComplexHermSSL{Ti, Tr} = Union{
19341934
Symmetric{Tr, SparseMatrixCSC{Tr, Ti}},

test/cholmod.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1026,9 +1026,12 @@ end
10261026

10271027
B = rand(n, 2)
10281028
Bt = Matrix(B')
1029+
Bts = sparse(B')
10291030

10301031
F = factorize(A')
10311032
@test F \ B F \ Bt'
1033+
@test F \ B F \ Bts'
1034+
@test issparse(F \ Bts')
10321035
end
10331036

10341037
end # for Tv ∈ (Float32, Float64)

0 commit comments

Comments
 (0)