GNU/Linux |
CentOS 4.8 |
i386 |
![]() |
claqsb(l) |
![]() |
CLAQSB - equilibrate a symmetric band matrix A using the scaling factors in the vector S
SUBROUTINE CLAQSB( |
UPLO, N, KD, AB, LDAB, S, SCOND, AMAX, EQUED ) | ||
CHARACTER |
EQUED, UPLO | ||
INTEGER |
KD, LDAB, N | ||
REAL |
AMAX, SCOND | ||
REAL |
S( * ) | ||
COMPLEX |
AB( LDAB, * ) |
CLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S.
UPLO (input) CHARACTER*1
Specifies whether the upper or
lower triangular part of the symmetric matrix A is stored. =
’U’: Upper triangular
= ’L’: Lower triangular
N (input) INTEGER
The order of the matrix A. N >= 0.
KD (input) INTEGER
The number of super-diagonals of the matrix A if UPLO = ’U’, or the number of sub-diagonals if UPLO = ’L’. KD >= 0.
AB (input/output) COMPLEX array, dimension (LDAB,N)
On entry, the upper or lower triangle of the symmetric band matrix A, stored in the first KD+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows: if UPLO = ’U’, AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j; if UPLO = ’L’, AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, if INFO = 0, the triangular factor U or L from the Cholesky factorization A = U’*U or A = L*L’ of the band matrix A, in the same storage format as A.
LDAB (input) INTEGER
The leading dimension of the array AB. LDAB >= KD+1.
S (output) REAL array, dimension (N)
The scale factors for A.
SCOND (input) REAL
Ratio of the smallest S(i) to the largest S(i).
AMAX (input) REAL
Absolute value of largest matrix entry.
EQUED (output) CHARACTER*1
Specifies whether or not
equilibration was done. = ’N’: No equilibration.
= ’Y’: Equilibration was done, i.e., A has been
replaced by diag(S) * A * diag(S).
THRESH is a threshold value used to decide if scaling should be done based on the ratio of the scaling factors. If SCOND < THRESH, scaling is done.
LARGE and SMALL are threshold values used to decide if scaling should be done based on the absolute size of the largest matrix element. If AMAX > LARGE or AMAX < SMALL, scaling is done.
![]() |
claqsb(l) | ![]() |