scipy.linalg.lapack.dtrsen#
- scipy.linalg.lapack.dtrsen(select, t, q, job='B', wantq=1, lwork=max(1, n), liwork=1, overwrite_t=0, overwrite_q=0) = <flapack function dtrsen>#
Reorder a Schur decomposition to gather selected eigenvalues into a leading cluster (LAPACK
dtrsen).- Parameters:
- selectndarray
Boolean mask of length
n: the eigenvalues it marks are gathered into the leading block. A bool array works; LAPACK reads it as a Fortran LOGICAL.- tndarray
Upper (quasi-)triangular Schur form of shape
(n, n).- qndarray
Matrix of Schur vectors; updated when wantq is nonzero.
- jobstr, optional
What to compute besides the reordering:
'N'nothing,'E'the cluster condition number s,'V'the separation sep,'B'both. Default is'B'.- wantqint, optional
If nonzero, the transformation is accumulated into q. Default is 1.
- lworkint, optional
Workspace size; -1 requests the query. Default is
max(1, n). The default is a bare minimum for the cheapest job only – what is actually needed depends on the cluster size, so query the matching_lworkroutine.- liworkint, optional
Integer workspace size; -1 requests the query. Default is 1. The complex flavors have no integer workspace and take no liwork.
- overwrite_tint, optional
If nonzero, t may be overwritten in place. Default is 0.
- overwrite_qint, optional
If nonzero, q may be overwritten in place. Default is 0.
- Returns:
- tsndarray
The reordered Schur form.
- qsndarray
The updated Schur vectors.
- wrndarray
Real parts of the reordered eigenvalues, length
n.- windarray
Imaginary parts of the reordered eigenvalues, length
n.- mint
Size of the selected cluster.
- sfloat
Condition number of the selected cluster; 0 unless job asked for it.
- sepfloat
Separation of the cluster; 0 unless job asked for it.
- infoint
0 on success; if negative, the
-info-th argument had an illegal value.