1ZTGSYL(1)               LAPACK routine (version 3.1.1)               ZTGSYL(1)
2
3
4

NAME

6       ZTGSYL - the generalized Sylvester equation
7

SYNOPSIS

9       SUBROUTINE ZTGSYL( TRANS,  IJOB,  M, N, A, LDA, B, LDB, C, LDC, D, LDD,
10                          E, LDE, F, LDF, SCALE, DIF, WORK, LWORK, IWORK, INFO
11                          )
12
13           CHARACTER      TRANS
14
15           INTEGER        IJOB,  INFO, LDA, LDB, LDC, LDD, LDE, LDF, LWORK, M,
16                          N
17
18           DOUBLE         PRECISION DIF, SCALE
19
20           INTEGER        IWORK( * )
21
22           COMPLEX*16     A( LDA, * ), B( LDB, * ), C( LDC, * ), D( LDD, *  ),
23                          E( LDE, * ), F( LDF, * ), WORK( * )
24

PURPOSE

26       ZTGSYL solves the generalized Sylvester equation:
27
28                   A * R - L * B = scale * C            (1)
29                   D * R - L * E = scale * F
30
31       where  R  and  L are unknown m-by-n matrices, (A, D), (B, E) and (C, F)
32       are given matrix pairs of size m-by-m, n-by-n and m-by-n, respectively,
33       with  complex  entries. A, B, D and E are upper triangular (i.e., (A,D)
34       and (B,E) in generalized Schur form).
35
36       The solution (R, L) overwrites (C, F). 0 <= SCALE <= 1
37       is an output scaling factor chosen to avoid overflow.
38
39       In matrix notation (1) is equivalent to solve Zx = scale*b, where Z  is
40       defined as
41
42              Z = [ kron(In, A)  -kron(B', Im) ]        (2)
43                  [ kron(In, D)  -kron(E', Im) ],
44
45       Here Ix is the identity matrix of size x and X' is the conjugate trans‐
46       pose of X. Kron(X, Y) is the Kronecker product between the  matrices  X
47       and Y.
48
49       If  TRANS = 'C', y in the conjugate transposed system Z'*y = scale*b is
50       solved for, which is equivalent to solve for R and L in
51
52                   A' * R + D' * L = scale * C           (3)
53                   R * B' + L * E' = scale * -F
54
55       This case (TRANS = 'C') is used to compute an  one-norm-based  estimate
56       of Dif[(A,D), (B,E)], the separation between the matrix pairs (A,D) and
57       (B,E), using ZLACON.
58
59       If IJOB >= 1,  ZTGSYL  computes  a  Frobenius  norm-based  estimate  of
60       Dif[(A,D),(B,E)].  That  is,  the  reciprocal  of  a lower bound on the
61       reciprocal of the smallest singular value of Z.
62
63       This is a level-3 BLAS algorithm.
64
65

ARGUMENTS

67       TRANS   (input) CHARACTER*1
68               = 'N': solve the generalized sylvester equation (1).
69               = 'C': solve the "conjugate transposed" system (3).
70
71       IJOB    (input) INTEGER
72               Specifies what kind of  functionality  to  be  performed.   =0:
73               solve (1) only.
74               =1: The functionality of 0 and 3.
75               =2: The functionality of 0 and 4.
76               =3:  Only  an estimate of Dif[(A,D), (B,E)] is computed.  (look
77               ahead strategy is used).  =4: Only an  estimate  of  Dif[(A,D),
78               (B,E)] is computed.  (ZGECON on sub-systems is used).  Not ref‐
79               erenced if TRANS = 'C'.
80
81       M       (input) INTEGER
82               The order of the matrices A and D, and the row dimension of the
83               matrices C, F, R and L.
84
85       N       (input) INTEGER
86               The  order of the matrices B and E, and the column dimension of
87               the matrices C, F, R and L.
88
89       A       (input) COMPLEX*16 array, dimension (LDA, M)
90               The upper triangular matrix A.
91
92       LDA     (input) INTEGER
93               The leading dimension of the array A. LDA >= max(1, M).
94
95       B       (input) COMPLEX*16 array, dimension (LDB, N)
96               The upper triangular matrix B.
97
98       LDB     (input) INTEGER
99               The leading dimension of the array B. LDB >= max(1, N).
100
101       C       (input/output) COMPLEX*16 array, dimension (LDC, N)
102               On entry, C contains the right-hand-side of  the  first  matrix
103               equation  in  (1)  or (3).  On exit, if IJOB = 0, 1 or 2, C has
104               been overwritten by the solution R. If IJOB = 3 or 4 and  TRANS
105               =  'N', C holds R, the solution achieved during the computation
106               of the Dif-estimate.
107
108       LDC     (input) INTEGER
109               The leading dimension of the array C. LDC >= max(1, M).
110
111       D       (input) COMPLEX*16 array, dimension (LDD, M)
112               The upper triangular matrix D.
113
114       LDD     (input) INTEGER
115               The leading dimension of the array D. LDD >= max(1, M).
116
117       E       (input) COMPLEX*16 array, dimension (LDE, N)
118               The upper triangular matrix E.
119
120       LDE     (input) INTEGER
121               The leading dimension of the array E. LDE >= max(1, N).
122
123       F       (input/output) COMPLEX*16 array, dimension (LDF, N)
124               On entry, F contains the right-hand-side of the  second  matrix
125               equation  in  (1)  or (3).  On exit, if IJOB = 0, 1 or 2, F has
126               been overwritten by the solution L. If IJOB = 3 or 4 and  TRANS
127               =  'N', F holds L, the solution achieved during the computation
128               of the Dif-estimate.
129
130       LDF     (input) INTEGER
131               The leading dimension of the array F. LDF >= max(1, M).
132
133       DIF     (output) DOUBLE PRECISION
134               On exit DIF is the reciprocal of a lower bound of the  recipro‐
135               cal  of  the  Dif-function,  i.e.  DIF  is  an  upper  bound of
136               Dif[(A,D), (B,E)] = sigma-min(Z), where Z as in (2).  IF IJOB =
137               0 or TRANS = 'C', DIF is not referenced.
138
139       SCALE   (output) DOUBLE PRECISION
140               On  exit  SCALE  is  the  scaling factor in (1) or (3).  If 0 <
141               SCALE < 1, C and F hold the solutions R  and  L,  resp.,  to  a
142               slightly  perturbed system but the input matrices A, B, D and E
143               have not been changed. If SCALE = 0, R  and  L  will  hold  the
144               solutions to the homogenious system with C = F = 0.
145
146       WORK    (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
147               On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
148
149       LWORK   (input) INTEGER
150               The dimension of the array WORK. LWORK > = 1.  If IJOB = 1 or 2
151               and TRANS = 'N', LWORK >= max(1,2*M*N).
152
153               If LWORK = -1, then a workspace query is assumed;  the  routine
154               only  calculates  the  optimal  size of the WORK array, returns
155               this value as the first entry of the WORK array, and  no  error
156               message related to LWORK is issued by XERBLA.
157
158       IWORK   (workspace) INTEGER array, dimension (M+N+2)
159
160       INFO    (output) INTEGER
161               =0: successful exit
162               <0: If INFO = -i, the i-th argument had an illegal value.
163               >0: (A, D) and (B, E) have common or very close eigenvalues.
164

FURTHER DETAILS

166       Based on contributions by
167          Bo Kagstrom and Peter Poromaa, Department of Computing Science,
168          Umea University, S-901 87 Umea, Sweden.
169
170       [1] B. Kagstrom and P. Poromaa, LAPACK-Style Algorithms and Software
171           for Solving the Generalized Sylvester Equation and Estimating the
172           Separation between Regular Matrix Pairs, Report UMINF - 93.23,
173           Department of Computing Science, Umea University, S-901 87 Umea,
174           Sweden, December 1993, Revised April 1994, Also as LAPACK Working
175           Note 75.  To appear in ACM Trans. on Math. Software, Vol 22,
176           No 1, 1996.
177
178       [2] B. Kagstrom, A Perturbation Analysis of the Generalized Sylvester
179           Equation (AR - LB, DR - LE ) = (C, F), SIAM J. Matrix Anal.
180           Appl., 15(4):1045-1060, 1994.
181
182       [3] B. Kagstrom and L. Westin, Generalized Schur Methods with
183           Condition Estimators for Solving the Generalized Sylvester
184           Equation, IEEE Transactions on Automatic Control, Vol. 34, No. 7,
185           July 1989, pp 745-751.
186
187
188
189
190 LAPACK routine (version 3.1.1)  February 2007                       ZTGSYL(1)
Impressum