-
-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing matrix/factorization functions #253
Comments
I would like to work on some of these. Is it still a good idea, in light of JuliaLang/julia#8240 ? |
I don't see why it wouldn't be. Some things, like |
@kshyatt Is isposdef() still missing ? |
julia> a = sprand(5,5,0.3)
5x5 sparse matrix with 5 Float64 entries:
[1, 2] = 0.39171
[2, 2] = 0.689867
[4, 2] = 0.648607
[3, 3] = 0.403935
[2, 5] = 0.101027
julia> a = a + a.'
5x5 sparse matrix with 8 Float64 entries:
[2, 1] = 0.39171
[1, 2] = 0.39171
[2, 2] = 1.37973
[4, 2] = 0.648607
[5, 2] = 0.101027
[3, 3] = 0.80787
[2, 4] = 0.648607
[2, 5] = 0.101027
julia> a = Symmetric(a)
5x5 Symmetric{Float64,SparseMatrixCSC{Float64,Int64}}:
0.0 0.39171 0.0 0.0 0.0
0.39171 1.37973 0.0 0.648607 0.101027
0.0 0.0 0.80787 0.0 0.0
0.0 0.648607 0.0 0.0 0.0
0.0 0.101027 0.0 0.0 0.0
julia> isposdef(a)
ERROR: MethodError: `isposdef!` has no method matching isposdef!(::Symmetric{Float64,SparseMatrixCSC{Float64,Int64}})
[inlined code] from linalg/symmetric.jl:5
in isposdef at linalg/dense.jl:33
in eval at ./boot.jl:264 Seems to be! |
In order to write tests for logdet of BunchKaufman I referred tests of logdet of generic. In this just |
Notice that the test matrix |
Address issparse for specialized matrix types part of #13096
Is this still open/relevant? If so, I'd like to help with a few (need them for my own work as well) |
I'm not sure. Test them out and see if they error. |
Re: JuliaLang/julia#5840, #136, JuliaLang/julia#8240
We have a lot of easy targets to fill out the linear algebra functionality. These methods don't work at all. They don't have fallbacks to the dense method, even. Feel free to add more:
BunchKaufman
full
det
logdet
Symmetric{SparseMatrixCSC}
full
det
logdet
eigvals
eigvecs
eigfact
svdvals
svd
svdfact
issparse
- returnsfalse
cond
- broken because ofeigvals
(-)A
- can't flip sign of the valuesisposdef
A_mul_B!
A_mul_Bt!
At_mul_Bt!
At_mul_B!
norm(A,2)
also broken because ofeigvals
LDLt{SymTridiagonal}
det
logdet
norm
trace
eigvals
eigvecs
svdvals
svd
cond
The text was updated successfully, but these errors were encountered: