1ZTGEXC(1)                LAPACK routine (version 3.2)                ZTGEXC(1)
2
3
4

NAME

6       ZTGEXC  -  reorders  the  generalized  Schur decomposition of a complex
7       matrix pair (A,B), using an unitary equivalence transformation  (A,  B)
8       := Q * (A, B) * Z', so that the diagonal block of (A, B) with row index
9       IFST is moved to row ILST
10

SYNOPSIS

12       SUBROUTINE ZTGEXC( WANTQ, WANTZ, N, A, LDA, B, LDB,  Q,  LDQ,  Z,  LDZ,
13                          IFST, ILST, INFO )
14
15           LOGICAL        WANTQ, WANTZ
16
17           INTEGER        IFST, ILST, INFO, LDA, LDB, LDQ, LDZ, N
18
19           COMPLEX*16     A( LDA, * ), B( LDB, * ), Q( LDQ, * ), Z( LDZ, * )
20

PURPOSE

22       ZTGEXC reorders the generalized Schur decomposition of a complex matrix
23       pair (A,B), using an unitary equivalence transformation (A, B) :=  Q  *
24       (A,  B)  * Z', so that the diagonal block of (A, B) with row index IFST
25       is moved to row ILST.  (A, B) must be in  generalized  Schur  canonical
26       form, that is, A and B are both upper triangular.
27       Optionally,  the  matrices  Q  and  Z  of generalized Schur vectors are
28       updated.
29              Q(in) * A(in) * Z(in)' = Q(out) * A(out) * Z(out)'
30              Q(in) * B(in) * Z(in)' = Q(out) * B(out) * Z(out)'
31

ARGUMENTS

33       WANTQ   (input) LOGICAL .TRUE. : update the left transformation  matrix
34       Q;
35
36       WANTZ   (input) LOGICAL
37
38       N       (input) INTEGER
39               The order of the matrices A and B. N >= 0.
40
41       A       (input/output) COMPLEX*16 array, dimension (LDA,N)
42               On entry, the upper triangular matrix A in the pair (A, B).  On
43               exit, the updated matrix A.
44
45       LDA     (input)  INTEGER
46               The leading dimension of the array A. LDA >= max(1,N).
47
48       B       (input/output) COMPLEX*16 array, dimension (LDB,N)
49               On entry, the upper triangular matrix B in the pair (A, B).  On
50               exit, the updated matrix B.
51
52       LDB     (input)  INTEGER
53               The leading dimension of the array B. LDB >= max(1,N).
54
55       Q       (input/output) COMPLEX*16 array, dimension (LDZ,N)
56               On  entry,  if  WANTQ = .TRUE., the unitary matrix Q.  On exit,
57               the updated matrix Q.  If WANTQ = .FALSE., Q is not referenced.
58
59       LDQ     (input) INTEGER
60               The leading dimension of the array Q. LDQ  >=  1;  If  WANTQ  =
61               .TRUE., LDQ >= N.
62
63       Z       (input/output) COMPLEX*16 array, dimension (LDZ,N)
64               On  entry,  if  WANTZ = .TRUE., the unitary matrix Z.  On exit,
65               the updated matrix Z.  If WANTZ = .FALSE., Z is not referenced.
66
67       LDZ     (input) INTEGER
68               The leading dimension of the array Z. LDZ  >=  1;  If  WANTZ  =
69               .TRUE., LDZ >= N.
70
71       IFST    (input) INTEGER
72               ILST     (input/output)  INTEGER  Specify the reordering of the
73               diagonal blocks of (A, B).  The block with row  index  IFST  is
74               moved  to  row ILST, by a sequence of swapping between adjacent
75               blocks.
76
77       INFO    (output) INTEGER
78               =0:  Successful exit.
79               <0:  if INFO = -i, the i-th argument had an illegal value.
80               =1:  The transformed matrix pair (A, B) would be too  far  from
81               generalized Schur form; the problem is ill- conditioned. (A, B)
82               may have been partially reordered, and ILST points to the first
83               row of the current position of the block being moved.
84

FURTHER DETAILS

86       Based on contributions by
87          Bo Kagstrom and Peter Poromaa, Department of Computing Science,
88          Umea University, S-901 87 Umea, Sweden.
89       [1] B. Kagstrom; A Direct Method for Reordering Eigenvalues in the
90           Generalized Real Schur Form of a Regular Matrix Pair (A, B), in
91           M.S. Moonen et al (eds), Linear Algebra for Large Scale and
92           Real-Time  Applications,  Kluwer  Academic  Publ. 1993, pp 195-218.
93       [2] B. Kagstrom and P. Poromaa; Computing Eigenspaces with Specified
94           Eigenvalues of a Regular Matrix Pair (A, B) and Condition
95           Estimation: Theory, Algorithms and Software, Report
96           UMINF - 94.04, Department of Computing Science, Umea University,
97           S-901 87 Umea, Sweden, 1994. Also as LAPACK Working Note 87.
98           To appear in Numerical Algorithms, 1996.
99       [3] B. Kagstrom and P. Poromaa, LAPACK-Style Algorithms and Software
100           for Solving the Generalized Sylvester Equation and Estimating the
101           Separation between Regular Matrix Pairs, Report UMINF - 93.23,
102           Department of Computing Science, Umea University, S-901 87 Umea,
103           Sweden, December 1993, Revised April 1994, Also as LAPACK working
104           Note 75. To appear in ACM Trans. on Math. Software, Vol 22, No 1,
105           1996.
106
107
108
109 LAPACK routine (version 3.2)    November 2008                       ZTGEXC(1)
Impressum