1CTRSYL(1) LAPACK routine (version 3.2) CTRSYL(1)
2
3
4
6 CTRSYL - solves the complex Sylvester matrix equation
7
9 SUBROUTINE CTRSYL( TRANA, TRANB, ISGN, M, N, A, LDA, B, LDB, C, LDC,
10 SCALE, INFO )
11
12 CHARACTER TRANA, TRANB
13
14 INTEGER INFO, ISGN, LDA, LDB, LDC, M, N
15
16 REAL SCALE
17
18 COMPLEX A( LDA, * ), B( LDB, * ), C( LDC, * )
19
21 CTRSYL solves the complex Sylvester matrix equation:
22 op(A)*X + X*op(B) = scale*C or
23 op(A)*X - X*op(B) = scale*C,
24 where op(A) = A or A**H, and A and B are both upper triangular. A is M-
25 by-M and B is N-by-N; the right hand side C and the solution X are M-
26 by-N; and scale is an output scale factor, set <= 1 to avoid overflow
27 in X.
28
30 TRANA (input) CHARACTER*1
31 Specifies the option op(A):
32 = 'N': op(A) = A (No transpose)
33 = 'C': op(A) = A**H (Conjugate transpose)
34
35 TRANB (input) CHARACTER*1
36 Specifies the option op(B):
37 = 'N': op(B) = B (No transpose)
38 = 'C': op(B) = B**H (Conjugate transpose)
39
40 ISGN (input) INTEGER
41 Specifies the sign in the equation:
42 = +1: solve op(A)*X + X*op(B) = scale*C
43 = -1: solve op(A)*X - X*op(B) = scale*C
44
45 M (input) INTEGER
46 The order of the matrix A, and the number of rows in the matriā
47 ces X and C. M >= 0.
48
49 N (input) INTEGER
50 The order of the matrix B, and the number of columns in the
51 matrices X and C. N >= 0.
52
53 A (input) COMPLEX array, dimension (LDA,M)
54 The upper triangular matrix A.
55
56 LDA (input) INTEGER
57 The leading dimension of the array A. LDA >= max(1,M).
58
59 B (input) COMPLEX array, dimension (LDB,N)
60 The upper triangular matrix B.
61
62 LDB (input) INTEGER
63 The leading dimension of the array B. LDB >= max(1,N).
64
65 C (input/output) COMPLEX array, dimension (LDC,N)
66 On entry, the M-by-N right hand side matrix C. On exit, C is
67 overwritten by the solution matrix X.
68
69 LDC (input) INTEGER
70 The leading dimension of the array C. LDC >= max(1,M)
71
72 SCALE (output) REAL
73 The scale factor, scale, set <= 1 to avoid overflow in X.
74
75 INFO (output) INTEGER
76 = 0: successful exit
77 < 0: if INFO = -i, the i-th argument had an illegal value
78 = 1: A and B have common or very close eigenvalues; perturbed
79 values were used to solve the equation (but the matrices A and
80 B are unchanged).
81
82
83
84 LAPACK routine (version 3.2) November 2008 CTRSYL(1)