1ZGBEQU(1) LAPACK routine (version 3.1) ZGBEQU(1)
2
3
4
6 ZGBEQU - row and column scalings intended to equilibrate an M-by-N band
7 matrix A and reduce its condition number
8
10 SUBROUTINE ZGBEQU( M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND, AMAX,
11 INFO )
12
13 INTEGER INFO, KL, KU, LDAB, M, N
14
15 DOUBLE PRECISION AMAX, COLCND, ROWCND
16
17 DOUBLE PRECISION C( * ), R( * )
18
19 COMPLEX*16 AB( LDAB, * )
20
22 ZGBEQU computes row and column scalings intended to equilibrate an M-
23 by-N band matrix A and reduce its condition number. R returns the row
24 scale factors and C the column scale factors, chosen to try to make the
25 largest element in each row and column of the matrix B with elements
26 B(i,j)=R(i)*A(i,j)*C(j) have absolute value 1.
27
28 R(i) and C(j) are restricted to be between SMLNUM = smallest safe num‐
29 ber and BIGNUM = largest safe number. Use of these scaling factors is
30 not guaranteed to reduce the condition number of A but works well in
31 practice.
32
33
35 M (input) INTEGER
36 The number of rows of the matrix A. M >= 0.
37
38 N (input) INTEGER
39 The number of columns of the matrix A. N >= 0.
40
41 KL (input) INTEGER
42 The number of subdiagonals within the band of A. KL >= 0.
43
44 KU (input) INTEGER
45 The number of superdiagonals within the band of A. KU >= 0.
46
47 AB (input) COMPLEX*16 array, dimension (LDAB,N)
48 The band matrix A, stored in rows 1 to KL+KU+1. The j-th col‐
49 umn of A is stored in the j-th column of the array AB as fol‐
50 lows: AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl).
51
52 LDAB (input) INTEGER
53 The leading dimension of the array AB. LDAB >= KL+KU+1.
54
55 R (output) DOUBLE PRECISION array, dimension (M)
56 If INFO = 0, or INFO > M, R contains the row scale factors for
57 A.
58
59 C (output) DOUBLE PRECISION array, dimension (N)
60 If INFO = 0, C contains the column scale factors for A.
61
62 ROWCND (output) DOUBLE PRECISION
63 If INFO = 0 or INFO > M, ROWCND contains the ratio of the
64 smallest R(i) to the largest R(i). If ROWCND >= 0.1 and AMAX
65 is neither too large nor too small, it is not worth scaling by
66 R.
67
68 COLCND (output) DOUBLE PRECISION
69 If INFO = 0, COLCND contains the ratio of the smallest C(i) to
70 the largest C(i). If COLCND >= 0.1, it is not worth scaling by
71 C.
72
73 AMAX (output) DOUBLE PRECISION
74 Absolute value of largest matrix element. If AMAX is very
75 close to overflow or very close to underflow, the matrix should
76 be scaled.
77
78 INFO (output) INTEGER
79 = 0: successful exit
80 < 0: if INFO = -i, the i-th argument had an illegal value
81 > 0: if INFO = i, and i is
82 <= M: the i-th row of A is exactly zero
83 > M: the (i-M)-th column of A is exactly zero
84
85
86
87 LAPACK routine (version 3.1) November 2006 ZGBEQU(1)