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