200 SUBROUTINE ctgexc( WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z,
201 $ LDZ, IFST, ILST, INFO )
210 INTEGER IFST, ILST, INFO, LDA, LDB, LDQ, LDZ, N
213 COMPLEX A( lda, * ), B( ldb, * ), Q( ldq, * ),
234 ELSE IF( lda.LT.max( 1, n ) )
THEN 236 ELSE IF( ldb.LT.max( 1, n ) )
THEN 238 ELSE IF( ldq.LT.1 .OR. wantq .AND. ( ldq.LT.max( 1, n ) ) )
THEN 240 ELSE IF( ldz.LT.1 .OR. wantz .AND. ( ldz.LT.max( 1, n ) ) )
THEN 242 ELSE IF( ifst.LT.1 .OR. ifst.GT.n )
THEN 244 ELSE IF( ilst.LT.1 .OR. ilst.GT.n )
THEN 248 CALL xerbla(
'CTGEXC', -info )
259 IF( ifst.LT.ilst )
THEN 267 CALL ctgex2( wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz,
284 CALL ctgex2( wantq, wantz, n, a, lda, b, ldb, q, ldq, z, ldz,
subroutine ctgex2(WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z, LDZ, J1, INFO)
CTGEX2 swaps adjacent diagonal blocks in an upper (quasi) triangular matrix pair by an unitary equiva...
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine ctgexc(WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z, LDZ, IFST, ILST, INFO)
CTGEXC