ggesx#
Functions
-
void sggesx(const char *jobvsl, const char *jobvsr, const char *sort, sselect3_t selctg, const char *sense, const INT n, f32 *restrict A, const INT lda, f32 *restrict B, const INT ldb, INT *sdim, f32 *restrict alphar, f32 *restrict alphai, f32 *restrict beta, f32 *restrict VSL, const INT ldvsl, f32 *restrict VSR, const INT ldvsr, f32 *restrict rconde, f32 *restrict rcondv, f32 *restrict work, const INT lwork, INT *restrict iwork, const INT liwork, INT *restrict bwork, INT *info)#
SGGESX computes for a pair of N-by-N real nonsymmetric matrices (A,B), the generalized eigenvalues, the real Schur form (S,T), and, optionally, the left and/or right matrices of Schur vectors (VSL and VSR).
This gives the generalized Schur factorization
Optionally, it also orders the eigenvalues so that a selected cluster of eigenvalues appears in the leading diagonal blocks of the upper quasi-triangular matrix S and the upper triangular matrix T; computes a reciprocal condition number for the average of the selected eigenvalues (RCONDE); and computes a reciprocal condition number for the right and left deflating subspaces corresponding to the selected eigenvalues (RCONDV).(A,B) = ( (VSL) S (VSR)**T, (VSL) T (VSR)**T )
Parameters
injobvsl= ‘N’: do not compute the left Schur vectors; = ‘V’: compute the left Schur vectors.
injobvsr= ‘N’: do not compute the right Schur vectors; = ‘V’: compute the right Schur vectors.
insort= ‘N’: Eigenvalues are not ordered; = ‘S’: Eigenvalues are ordered (see selctg).
inselctgSelection function for eigenvalue ordering.
insenseDetermines which reciprocal condition numbers are computed. = ‘N’: None are computed; = ‘E’: Computed for average of selected eigenvalues only; = ‘V’: Computed for selected deflating subspaces only; = ‘B’: Computed for both.
innThe order of the matrices A, B, VSL, and VSR. n >= 0.
inoutAOn entry, the first of the pair of matrices. On exit, A has been overwritten by its Schur form S.
inldaThe leading dimension of A. lda >= max(1,n).
inoutBOn entry, the second of the pair of matrices. On exit, B has been overwritten by its Schur form T.
inldbThe leading dimension of B. ldb >= max(1,n).
outsdimNumber of eigenvalues for which selctg is true.
outalpharReal parts of generalized eigenvalues.
outalphaiImaginary parts of generalized eigenvalues.
outbetaBeta values of generalized eigenvalues.
outVSLIf jobvsl = ‘V’, the left Schur vectors.
inldvslThe leading dimension of VSL.
outVSRIf jobvsr = ‘V’, the right Schur vectors.
inldvsrThe leading dimension of VSR.
outrcondeReciprocal condition numbers for eigenvalues (dimension 2).
outrcondvReciprocal condition numbers for subspaces (dimension 2).
outworkWorkspace array.
inlworkThe dimension of work.
outiworkInteger workspace array.
inliworkThe dimension of iwork.
outbworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
> 0: errors from QZ iteration or reordering
void sggesx(
const char* jobvsl,
const char* jobvsr,
const char* sort,
sselect3_t selctg,
const char* sense,
const INT n,
f32* restrict A,
const INT lda,
f32* restrict B,
const INT ldb,
INT* sdim,
f32* restrict alphar,
f32* restrict alphai,
f32* restrict beta,
f32* restrict VSL,
const INT ldvsl,
f32* restrict VSR,
const INT ldvsr,
f32* restrict rconde,
f32* restrict rcondv,
f32* restrict work,
const INT lwork,
INT* restrict iwork,
const INT liwork,
INT* restrict bwork,
INT* info
);
Functions
-
void dggesx(const char *jobvsl, const char *jobvsr, const char *sort, dselect3_t selctg, const char *sense, const INT n, f64 *restrict A, const INT lda, f64 *restrict B, const INT ldb, INT *sdim, f64 *restrict alphar, f64 *restrict alphai, f64 *restrict beta, f64 *restrict VSL, const INT ldvsl, f64 *restrict VSR, const INT ldvsr, f64 *restrict rconde, f64 *restrict rcondv, f64 *restrict work, const INT lwork, INT *restrict iwork, const INT liwork, INT *restrict bwork, INT *info)#
DGGESX computes for a pair of N-by-N real nonsymmetric matrices (A,B), the generalized eigenvalues, the real Schur form (S,T), and, optionally, the left and/or right matrices of Schur vectors (VSL and VSR).
This gives the generalized Schur factorization
Optionally, it also orders the eigenvalues so that a selected cluster of eigenvalues appears in the leading diagonal blocks of the upper quasi-triangular matrix S and the upper triangular matrix T; computes a reciprocal condition number for the average of the selected eigenvalues (RCONDE); and computes a reciprocal condition number for the right and left deflating subspaces corresponding to the selected eigenvalues (RCONDV).(A,B) = ( (VSL) S (VSR)**T, (VSL) T (VSR)**T )
Parameters
injobvsl= ‘N’: do not compute the left Schur vectors; = ‘V’: compute the left Schur vectors.
injobvsr= ‘N’: do not compute the right Schur vectors; = ‘V’: compute the right Schur vectors.
insort= ‘N’: Eigenvalues are not ordered; = ‘S’: Eigenvalues are ordered (see selctg).
inselctgSelection function for eigenvalue ordering.
insenseDetermines which reciprocal condition numbers are computed. = ‘N’: None are computed; = ‘E’: Computed for average of selected eigenvalues only; = ‘V’: Computed for selected deflating subspaces only; = ‘B’: Computed for both.
innThe order of the matrices A, B, VSL, and VSR. n >= 0.
inoutAOn entry, the first of the pair of matrices. On exit, A has been overwritten by its Schur form S.
inldaThe leading dimension of A. lda >= max(1,n).
inoutBOn entry, the second of the pair of matrices. On exit, B has been overwritten by its Schur form T.
inldbThe leading dimension of B. ldb >= max(1,n).
outsdimNumber of eigenvalues for which selctg is true.
outalpharReal parts of generalized eigenvalues.
outalphaiImaginary parts of generalized eigenvalues.
outbetaBeta values of generalized eigenvalues.
outVSLIf jobvsl = ‘V’, the left Schur vectors.
inldvslThe leading dimension of VSL.
outVSRIf jobvsr = ‘V’, the right Schur vectors.
inldvsrThe leading dimension of VSR.
outrcondeReciprocal condition numbers for eigenvalues (dimension 2).
outrcondvReciprocal condition numbers for subspaces (dimension 2).
outworkWorkspace array.
inlworkThe dimension of work.
outiworkInteger workspace array.
inliworkThe dimension of iwork.
outbworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
> 0: errors from QZ iteration or reordering
void dggesx(
const char* jobvsl,
const char* jobvsr,
const char* sort,
dselect3_t selctg,
const char* sense,
const INT n,
f64* restrict A,
const INT lda,
f64* restrict B,
const INT ldb,
INT* sdim,
f64* restrict alphar,
f64* restrict alphai,
f64* restrict beta,
f64* restrict VSL,
const INT ldvsl,
f64* restrict VSR,
const INT ldvsr,
f64* restrict rconde,
f64* restrict rcondv,
f64* restrict work,
const INT lwork,
INT* restrict iwork,
const INT liwork,
INT* restrict bwork,
INT* info
);
Functions
-
void cggesx(const char *jobvsl, const char *jobvsr, const char *sort, cselect2_t selctg, const char *sense, const INT n, c64 *A, const INT lda, c64 *B, const INT ldb, INT *sdim, c64 *alpha, c64 *beta, c64 *VSL, const INT ldvsl, c64 *VSR, const INT ldvsr, f32 *rconde, f32 *rcondv, c64 *work, const INT lwork, f32 *rwork, INT *iwork, const INT liwork, INT *bwork, INT *info)#
CGGESX computes for a pair of N-by-N complex nonsymmetric matrices (A,B), the generalized eigenvalues, the complex Schur form (S,T), and, optionally, the left and/or right matrices of Schur vectors (VSL and VSR).
This gives the generalized Schur factorization
where (VSR)**H is the conjugate-transpose of VSR.(A,B) = ( (VSL) S (VSR)**H, (VSL) T (VSR)**H )
Optionally, it also orders the eigenvalues so that a selected cluster of eigenvalues appears in the leading diagonal blocks of the upper triangular matrix S and the upper triangular matrix T; computes a reciprocal condition number for the average of the selected eigenvalues (RCONDE); and computes a reciprocal condition number for the right and left deflating subspaces corresponding to the selected eigenvalues (RCONDV).
Parameters
injobvsl= ‘N’: do not compute the left Schur vectors; = ‘V’: compute the left Schur vectors.
injobvsr= ‘N’: do not compute the right Schur vectors; = ‘V’: compute the right Schur vectors.
insort= ‘N’: Eigenvalues are not ordered; = ‘S’: Eigenvalues are ordered (see selctg).
inselctgSelection function for eigenvalue ordering.
insenseDetermines which reciprocal condition numbers are computed. = ‘N’: None are computed; = ‘E’: Computed for average of selected eigenvalues only; = ‘V’: Computed for selected deflating subspaces only; = ‘B’: Computed for both.
innThe order of the matrices A, B, VSL, and VSR. n >= 0.
inoutAOn entry, the first of the pair of matrices. On exit, A has been overwritten by its generalized Schur form S.
inldaThe leading dimension of A. lda >= max(1,n).
inoutBOn entry, the second of the pair of matrices. On exit, B has been overwritten by its generalized Schur form T.
inldbThe leading dimension of B. ldb >= max(1,n).
outsdimNumber of eigenvalues for which selctg is true.
outalphaComplex array, dimension (n).
outbetaComplex array, dimension (n).
outVSLIf jobvsl = ‘V’, the left Schur vectors.
inldvslThe leading dimension of VSL.
outVSRIf jobvsr = ‘V’, the right Schur vectors.
inldvsrThe leading dimension of VSR.
outrcondeReciprocal condition numbers for eigenvalues (dimension 2).
outrcondvReciprocal condition numbers for subspaces (dimension 2).
outworkComplex workspace array, dimension (max(1,lwork)).
inlworkThe dimension of work.
outrworkSingle precision array, dimension (8*n).
outiworkInteger workspace array.
inliworkThe dimension of iwork.
outbworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
> 0: errors from QZ iteration or reordering
void cggesx(
const char* jobvsl,
const char* jobvsr,
const char* sort,
cselect2_t selctg,
const char* sense,
const INT n,
c64* A,
const INT lda,
c64* B,
const INT ldb,
INT* sdim,
c64* alpha,
c64* beta,
c64* VSL,
const INT ldvsl,
c64* VSR,
const INT ldvsr,
f32* rconde,
f32* rcondv,
c64* work,
const INT lwork,
f32* rwork,
INT* iwork,
const INT liwork,
INT* bwork,
INT* info
);
Functions
-
void zggesx(const char *jobvsl, const char *jobvsr, const char *sort, zselect2_t selctg, const char *sense, const INT n, c128 *A, const INT lda, c128 *B, const INT ldb, INT *sdim, c128 *alpha, c128 *beta, c128 *VSL, const INT ldvsl, c128 *VSR, const INT ldvsr, f64 *rconde, f64 *rcondv, c128 *work, const INT lwork, f64 *rwork, INT *iwork, const INT liwork, INT *bwork, INT *info)#
ZGGESX computes for a pair of N-by-N complex nonsymmetric matrices (A,B), the generalized eigenvalues, the complex Schur form (S,T), and, optionally, the left and/or right matrices of Schur vectors (VSL and VSR).
This gives the generalized Schur factorization
where (VSR)**H is the conjugate-transpose of VSR.(A,B) = ( (VSL) S (VSR)**H, (VSL) T (VSR)**H )
Optionally, it also orders the eigenvalues so that a selected cluster of eigenvalues appears in the leading diagonal blocks of the upper triangular matrix S and the upper triangular matrix T; computes a reciprocal condition number for the average of the selected eigenvalues (RCONDE); and computes a reciprocal condition number for the right and left deflating subspaces corresponding to the selected eigenvalues (RCONDV).
Parameters
injobvsl= ‘N’: do not compute the left Schur vectors; = ‘V’: compute the left Schur vectors.
injobvsr= ‘N’: do not compute the right Schur vectors; = ‘V’: compute the right Schur vectors.
insort= ‘N’: Eigenvalues are not ordered; = ‘S’: Eigenvalues are ordered (see selctg).
inselctgSelection function for eigenvalue ordering.
insenseDetermines which reciprocal condition numbers are computed. = ‘N’: None are computed; = ‘E’: Computed for average of selected eigenvalues only; = ‘V’: Computed for selected deflating subspaces only; = ‘B’: Computed for both.
innThe order of the matrices A, B, VSL, and VSR. n >= 0.
inoutAOn entry, the first of the pair of matrices. On exit, A has been overwritten by its generalized Schur form S.
inldaThe leading dimension of A. lda >= max(1,n).
inoutBOn entry, the second of the pair of matrices. On exit, B has been overwritten by its generalized Schur form T.
inldbThe leading dimension of B. ldb >= max(1,n).
outsdimNumber of eigenvalues for which selctg is true.
outalphaComplex array, dimension (n).
outbetaComplex array, dimension (n).
outVSLIf jobvsl = ‘V’, the left Schur vectors.
inldvslThe leading dimension of VSL.
outVSRIf jobvsr = ‘V’, the right Schur vectors.
inldvsrThe leading dimension of VSR.
outrcondeReciprocal condition numbers for eigenvalues (dimension 2).
outrcondvReciprocal condition numbers for subspaces (dimension 2).
outworkComplex workspace array, dimension (max(1,lwork)).
inlworkThe dimension of work.
outrworkDouble precision array, dimension (8*n).
outiworkInteger workspace array.
inliworkThe dimension of iwork.
outbworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
> 0: errors from QZ iteration or reordering
void zggesx(
const char* jobvsl,
const char* jobvsr,
const char* sort,
zselect2_t selctg,
const char* sense,
const INT n,
c128* A,
const INT lda,
c128* B,
const INT ldb,
INT* sdim,
c128* alpha,
c128* beta,
c128* VSL,
const INT ldvsl,
c128* VSR,
const INT ldvsr,
f64* rconde,
f64* rcondv,
c128* work,
const INT lwork,
f64* rwork,
INT* iwork,
const INT liwork,
INT* bwork,
INT* info
);