When computing the reordered schur decomposition, LAPACK can optionally compute reciprocal condition numbers. Whether or not it does this computation depends on the JOB parameter. Currently, Julia sets this parameter to ‘N’ meaning it does not want LAPACK to do this computation and pass NULL pointers for the memory that is planned to hold the result. Therefore, if we pass something different than
'N', it causes a segmentation fault (shouldn’t there be an assert ?):
julia> F = schurfact(eye(2)); julia> Base.LAPACK.trsen!('E', 'N', ones(Base.LinAlg.BlasInt, 6), F.T, F.Z) signal (11): Segmentation fault ...
Is there any plan to add support for optionally getting the reciprocal condition numbers ?
EDIT: I submitted a PR to fix the segmentation fault but it is still not possible to get the condition number by user a high level function such as
ordschur, we need to call