Hello. I wish to suitably reorder the eigenvalues resulting from a generalised Schur matrix decomposition in an ascending fashion. This is the code.
using LinearAlgebra
A=randn(3, 3);
B=randn(3, 3);
(S, T, Qt, Z, eS, eT)=schur(A, B);
select=abs.(eT./eS).<1;
(S_re, T_re, Qt_re, Z_re, eS_re, eT_re)=ordschur(S, T, Qt, Z, eS, eT, select)
The error I get, however, is the following.
MethodError: no method matching ordschur(::Array{Float64,2}, ::Array{Float64,2}, ::Array{Float64,2}, ::Array{Float64,2}, ::Array{Complex{Float64},1}, ::Array{Float64,1}, ::BitArray{1})
Stacktrace:
[1] top-level scope at In[153]:6
[2] include_string(::Function, ::Module, ::String, ::String) at ./loading.jl:1091
[3] execute_code(::String, ::String) at /Users/Name/.julia/packages/IJulia/a1SNk/src/execute_request.jl:27
[4] execute_request(::ZMQ.Socket, ::IJulia.Msg) at /Users/Name/.julia/packages/IJulia/a1SNk/src/execute_request.jl:86
[5] #invokelatest#1 at ./essentials.jl:710 [inlined]
[6] invokelatest at ./essentials.jl:709 [inlined]
[7] eventloop(::ZMQ.Socket) at /Users/Name/.julia/packages/IJulia/a1SNk/src/eventloop.jl:8
[8] (::IJulia.var"#15#18")() at ./task.jl:356
The “ordschur” command does not seem to work. The Julia version I am using is 1.5.3. Thank you.