200 SUBROUTINE ztgexc( 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*16 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(
'ZTGEXC', -info )
259 IF( ifst.LT.ilst )
THEN
267 CALL
ztgex2( wantq, wantz, n, a, lda,
b, ldb, q, ldq, z, ldz,
284 CALL
ztgex2( wantq, wantz, n, a, lda,
b, ldb, q, ldq, z, ldz,
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine ztgex2(WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z, LDZ, J1, INFO)
ZTGEX2 swaps adjacent diagonal blocks in an upper (quasi) triangular matrix pair by an unitary equiva...
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
subroutine ztgexc(WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z, LDZ, IFST, ILST, INFO)
ZTGEXC