1CPPEQU(1) LAPACK routine (version 3.1) CPPEQU(1)
2
3
4
6 CPPEQU - row and column scalings intended to equilibrate a Hermitian
7 positive definite matrix A in packed storage and reduce its condition
8 number (with respect to the two-norm)
9
11 SUBROUTINE CPPEQU( UPLO, N, AP, S, SCOND, AMAX, INFO )
12
13 CHARACTER UPLO
14
15 INTEGER INFO, N
16
17 REAL AMAX, SCOND
18
19 REAL S( * )
20
21 COMPLEX AP( * )
22
24 CPPEQU computes row and column scalings intended to equilibrate a Her‐
25 mitian positive definite matrix A in packed storage and reduce its con‐
26 dition number (with respect to the two-norm). S contains the scale
27 factors, S(i)=1/sqrt(A(i,i)), chosen so that the scaled matrix B with
28 elements B(i,j)=S(i)*A(i,j)*S(j) has ones on the diagonal. This choice
29 of S puts the condition number of B within a factor N of the smallest
30 possible condition number over all possible diagonal scalings.
31
32
34 UPLO (input) CHARACTER*1
35 = 'U': Upper triangle of A is stored;
36 = 'L': Lower triangle of A is stored.
37
38 N (input) INTEGER
39 The order of the matrix A. N >= 0.
40
41 AP (input) COMPLEX array, dimension (N*(N+1)/2)
42 The upper or lower triangle of the Hermitian matrix A, packed
43 columnwise in a linear array. The j-th column of A is stored
44 in the array AP as follows: if UPLO = 'U', AP(i + (j-1)*j/2) =
45 A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) =
46 A(i,j) for j<=i<=n.
47
48 S (output) REAL array, dimension (N)
49 If INFO = 0, S contains the scale factors for A.
50
51 SCOND (output) REAL
52 If INFO = 0, S contains the ratio of the smallest S(i) to the
53 largest S(i). If SCOND >= 0.1 and AMAX is neither too large
54 nor too small, it is not worth scaling by S.
55
56 AMAX (output) REAL
57 Absolute value of largest matrix element. If AMAX is very
58 close to overflow or very close to underflow, the matrix should
59 be scaled.
60
61 INFO (output) INTEGER
62 = 0: successful exit
63 < 0: if INFO = -i, the i-th argument had an illegal value
64 > 0: if INFO = i, the i-th diagonal element is nonpositive.
65
66
67
68 LAPACK routine (version 3.1) November 2006 CPPEQU(1)