-
Notifications
You must be signed in to change notification settings - Fork 38
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
Eigenfactorization of BandedMatrix with underlying FillArrays storage fails due to strides #208
Comments
Something like this: function eigen(A::Symmetric{T,<:BandedMatrix{T,<:AbstractFill{T}}}) where T <: Real
Ap = parent(A)
B = BandedMatrices._BandedMatrix(Matrix(Ap.data), Ap.raxis, Ap.l, Ap.u)
eigen(Symmetric(B))
end |
I believe the "logic" for not including a fallback in Base is that it will crash Julia with a large sparse matrix, which isn't a worry we have here so it's fine. Why not just make that the default for Though.... it seems the wrong access point. |
You mean change the default implementation to # Default implementation
function eigen!(A::Symmetric{T,<:BandedMatrix{T,<:StridedMatrix{T}}) where T <: Real
...
end ?
Well, I'd assume the mutating version |
No change wherever |
I know this is not a problem exclusive to BandedMatrices.jl, but maybe we can figure out where/how to fix it.
I guess one could add a dispatch to
eigen
that automatically convertsA.data
to a dense array before proceeding?The text was updated successfully, but these errors were encountered: