version 1.1, 2015/11/26 11:44:22
|
version 1.6, 2023/08/07 08:39:20
|
Line 243
|
Line 243
|
*> The QZ iteration failed. (A,B) are not in Schur |
*> The QZ iteration failed. (A,B) are not in Schur |
*> form, but ALPHA(j) and BETA(j) should be correct for |
*> form, but ALPHA(j) and BETA(j) should be correct for |
*> j=INFO+1,...,N. |
*> j=INFO+1,...,N. |
*> > N: =N+1: other than QZ iteration failed in ZHGEQZ |
*> > N: =N+1: other than QZ iteration failed in ZLAQZ0 |
*> =N+2: after reordering, roundoff changed values of |
*> =N+2: after reordering, roundoff changed values of |
*> some complex eigenvalues so that leading |
*> some complex eigenvalues so that leading |
*> eigenvalues in the Generalized Schur form no |
*> eigenvalues in the Generalized Schur form no |
Line 260
|
Line 260
|
*> \author Univ. of Colorado Denver |
*> \author Univ. of Colorado Denver |
*> \author NAG Ltd. |
*> \author NAG Ltd. |
* |
* |
*> \date January 2015 |
|
* |
|
*> \ingroup complex16GEeigen |
*> \ingroup complex16GEeigen |
* |
* |
* ===================================================================== |
* ===================================================================== |
Line 269
|
Line 267
|
$ LDB, SDIM, ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, |
$ LDB, SDIM, ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, |
$ WORK, LWORK, RWORK, BWORK, INFO ) |
$ WORK, LWORK, RWORK, BWORK, INFO ) |
* |
* |
* -- LAPACK driver routine (version 3.6.0) -- |
* -- LAPACK driver routine -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* January 2015 |
|
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER JOBVSL, JOBVSR, SORT |
CHARACTER JOBVSL, JOBVSR, SORT |
Line 313
|
Line 310
|
* .. |
* .. |
* .. External Subroutines .. |
* .. External Subroutines .. |
EXTERNAL DLABAD, XERBLA, ZGEQRF, ZGGBAK, ZGGBAL, ZGGHD3, |
EXTERNAL DLABAD, XERBLA, ZGEQRF, ZGGBAK, ZGGBAL, ZGGHD3, |
$ ZHGEQZ, ZLACPY, ZLASCL, ZLASET, ZTGSEN, ZUNGQR, |
$ ZLAQZ0, ZLACPY, ZLASCL, ZLASET, ZTGSEN, ZUNGQR, |
$ ZUNMQR |
$ ZUNMQR |
* .. |
* .. |
* .. External Functions .. |
* .. External Functions .. |
Line 391
|
Line 388
|
CALL ZGGHD3( JOBVSL, JOBVSR, N, 1, N, A, LDA, B, LDB, VSL, |
CALL ZGGHD3( JOBVSL, JOBVSR, N, 1, N, A, LDA, B, LDB, VSL, |
$ LDVSL, VSR, LDVSR, WORK, -1, IERR ) |
$ LDVSL, VSR, LDVSR, WORK, -1, IERR ) |
LWKOPT = MAX( LWKOPT, N + INT ( WORK( 1 ) ) ) |
LWKOPT = MAX( LWKOPT, N + INT ( WORK( 1 ) ) ) |
CALL ZHGEQZ( 'S', JOBVSL, JOBVSR, N, 1, N, A, LDA, B, LDB, |
CALL ZLAQZ0( 'S', JOBVSL, JOBVSR, N, 1, N, A, LDA, B, LDB, |
$ ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, WORK, |
$ ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, WORK, -1, |
$ -1, RWORK, IERR ) |
$ RWORK, 0, IERR ) |
LWKOPT = MAX( LWKOPT, INT ( WORK( 1 ) ) ) |
LWKOPT = MAX( LWKOPT, INT ( WORK( 1 ) ) ) |
IF( WANTST ) THEN |
IF( WANTST ) THEN |
CALL ZTGSEN( 0, ILVSL, ILVSR, BWORK, N, A, LDA, B, LDB, |
CALL ZTGSEN( 0, ILVSL, ILVSR, BWORK, N, A, LDA, B, LDB, |
Line 507
|
Line 504
|
* Perform QZ algorithm, computing Schur vectors if desired |
* Perform QZ algorithm, computing Schur vectors if desired |
* |
* |
IWRK = ITAU |
IWRK = ITAU |
CALL ZHGEQZ( 'S', JOBVSL, JOBVSR, N, ILO, IHI, A, LDA, B, LDB, |
CALL ZLAQZ0( 'S', JOBVSL, JOBVSR, N, ILO, IHI, A, LDA, B, LDB, |
$ ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, WORK( IWRK ), |
$ ALPHA, BETA, VSL, LDVSL, VSR, LDVSR, WORK( IWRK ), |
$ LWORK+1-IWRK, RWORK( IRWRK ), IERR ) |
$ LWORK+1-IWRK, RWORK( IRWRK ), 0, IERR ) |
IF( IERR.NE.0 ) THEN |
IF( IERR.NE.0 ) THEN |
IF( IERR.GT.0 .AND. IERR.LE.N ) THEN |
IF( IERR.GT.0 .AND. IERR.LE.N ) THEN |
INFO = IERR |
INFO = IERR |