-
Notifications
You must be signed in to change notification settings - Fork 52
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
Operator norm (p = 2) for sparse matrices is not implemented #119
Comments
Returning |
@dkarrasch I agree, silently returning But what are Julia's plans to resolve this issue? To resolve this issue in Julia, I assume we would need to have something like a Lanczos Bidiagonlization algorithm implemented. Is this the way to go or rather out-of-scope and should be kept in external Julia packages? |
I'm no authority here, but I guess this is a bit out of scope to provide one standard way to do it. You could proceed as you said, compute the topmost singular value. Now here is exactly the point: which method/implementation do you want to use? I'm not sure one can solve that by means of stdlib-functions (which kind of implies that this is not going to be done in |
Since sparse matrices are part of It is currently possible to solve linear systems It would be really interesting to hear the opinions from several Julia maintainers. |
I very much want to move sparse arrays out of stdlib. |
Interesting. I guess having On the other hand, sparse matrices are a fundamental data structure which are used in many different applications. Not having them in the standard library would probably worsen the Julia out-of-the-box experience for many users... |
There are lots of packages that have fantastic experience for users. I think users will be better served with a faster moving sparse matrix package that lives outside, where capabilities can be added quickly, and new experiments can be carried out. We'll move Sparse and SuiteSparse out whenever the stdlib versioning stuff is figured out. |
@ViralBShah is this out of scope for SparseArrays even once we move it out? |
Not sure I understand. You mean implementing the |
Using
opnorm
on a sparse matrix (of typeSparseMatrixCSC
) gives this error:Here is a piece of code which produces that error:
I am interested in working on that issue, but I would need some guidance.
The proper way to solve this (in my opinion) is to implement
svdvals
for sparse matrices, so thatopnorm
can be modifed to return the largest singular value ofA
by usingsvdvals
for sparce matrices. If this is the way to go, which algorithm should be used to implementsvdvals
for sparse matrices?There have been many discussions about implementing SVD for sparse matrices (e.g. JuliaLang/LinearAlgebra.jl#106) a long time ago...
If the proposed solution is not the desired way to resolve this, why can't we just replace the error message by returning
opnorm(Array(A))
as it is suggested in the error message itself?The text was updated successfully, but these errors were encountered: