scipy.linalg.lapack.ztgsen#

scipy.linalg.lapack.ztgsen(select, a, b, q, z, ijob=4, wantq=1, wantz=1, lwork=..., liwork=..., overwrite_a=0, overwrite_b=0, overwrite_q=0, overwrite_z=0) = <flapack function ztgsen>#

Reorder a generalized Schur decomposition to gather selected eigenvalues into a leading cluster (LAPACK ztgsen).

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.

andarray

Upper (quasi-)triangular factor of the pencil, shape (n, n).

bndarray

Upper triangular factor of the pencil, shape (n, n).

qndarray

Left Schur vectors; updated when wantq is nonzero.

zndarray

Right Schur vectors; updated when wantz is nonzero.

ijobint, optional

What to compute besides the reordering, 0 through 5; 0 reorders only. Default is 4.

wantqint, optional

If nonzero, the left transformation is accumulated into q. Default is 1.

wantzint, optional

If nonzero, the right transformation is accumulated into z. Default is 1.

lworkint, optional

Workspace size; -1 requests the query. Default is 1 when ijob is 0 and n + 2 otherwise. The default is a bare minimum for the cheapest job only – what is actually needed depends on the cluster size, so query the matching _lwork routine.

liworkint, optional

Integer workspace size; -1 requests the query. Default is 1 when ijob is 0 and n + 2 otherwise.

overwrite_aint, optional

If nonzero, a may be overwritten in place. Default is 0.

overwrite_bint, optional

If nonzero, b may be overwritten in place. Default is 0.

overwrite_qint, optional

If nonzero, q may be overwritten in place. Default is 0.

overwrite_zint, optional

If nonzero, z may be overwritten in place. Default is 0.

Returns:
asndarray

The reordered first factor.

bsndarray

The reordered second factor.

alphandarray

Numerators of the reordered eigenvalues, length n.

betandarray

Denominators of the reordered eigenvalues, length n.

qsndarray

The updated left Schur vectors.

zsndarray

The updated right Schur vectors.

mint

Size of the selected cluster.

plfloat

Lower bound on the reciprocal condition number of the left cluster.

prfloat

Lower bound on the reciprocal condition number of the right cluster.

difndarray

Two estimates of the Difu and Difl separations.

infoint

0 on success; if negative, the -info-th argument had an illegal value.