-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
WIP: Sort gen eig #8441
WIP: Sort gen eig #8441
Conversation
…on and gges in lapack.
is this working? |
schurfact!{T<:BlasFloat}(A::StridedMatrix{T}, B::StridedMatrix{T}) = GeneralizedSchur(LinAlg.LAPACK.gges!('V', 'V', A, B)...) | ||
schurfact{T<:BlasFloat}(A::StridedMatrix{T},B::StridedMatrix{T}) = schurfact!(copy(A),copy(B)) | ||
schurfact{TA,TB}(A::StridedMatrix{TA}, B::StridedMatrix{TB}) = (S = promote_type(Float32,typeof(one(TA)/norm(one(TA))),TB); schurfact!(S != TA ? convert(AbstractMatrix{S},A) : copy(A), S != TB ? convert(AbstractMatrix{S},B) : copy(B))) | ||
schurfact!{T<:BlasFloat}(A::StridedMatrix{T}, B::StridedMatrix{T}, sort::Char='N', selctg::Ptr{None}=C_NULL) = GeneralizedSchur(LinAlg.LAPACK.gges!('V', 'V', A, B)...) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we want to expose the sorting possibility at this level. I also don't think that this works as you have changed the signature of gges!
. Let's just leave these methods unmodified unless we can actually provide a way of sorting the values.
Thanks for looking into generalizing the Schur factorization. However, we can't accept this pull request as is.
Does |
function gges!(jobvsl::Char, jobvsr::Char, A::StridedMatrix{$elty}, B::StridedMatrix{$elty}) | ||
function gges!(jobvsl::Char, jobvsr::Char, | ||
A::StridedMatrix{$elty}, B::StridedMatrix{$elty}), | ||
sort::Char, selctg::Ptr{None}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The order of the arguments should follow the LAPACK subroutine. It is not necessary to have the sort
argument as it can be inferred from the selctg
argument. It would be good to add a method without the selctg
argument that defaults to selctg = C_NULL
.
i hope to provide the desired functionality implementing matlabs ordschur function, see #8467 |
Sorry about not having seen or commented on any of this. I worked on this a little (as you could probably tell it was pretty undeveloped) but then got busy with some other things that came up. I must have smashed mark all notifications as read without having noticed this. |
No description provided.