laqhe#
Functions
-
void claqhe(const char *uplo, const INT n, c64 *restrict A, const INT lda, const f32 *restrict S, const f32 scond, const f32 amax, char *equed)#
CLAQHE equilibrates a Hermitian matrix A using the scaling factors in the vector S.
- Internal Parameters:
THRESHdecides whether to scale based on the ratio of the scaling factors: scaling is performed whenscond<THRESH.LARGEandSMALLdecide whether to scale based on the absolute size of the largest matrix element: scaling is performed whenamax>LARGEoramax<SMALL.
Parameters
inuplo'U': Upper triangular'L': Lower triangular
innThe order of the matrix A.
n>=0.inoutASingle complex array of dimension
(lda,n). On entry, the Hermitian matrix A. Ifuplo='U', the leading n by n upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. Ifuplo='L', the leading n by n lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced. On exit, ifequed='Y', the equilibrated matrix: diag(S) * A * diag(S).inldaThe leading dimension of A.
lda>=max(n,1).inSSingle precision array of dimension
n. The scale factors for A.inscondRatio of the smallest S(i) to the largest S(i).
inamaxAbsolute value of largest matrix entry.
outequed'N': No equilibration'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S).
void claqhe(
const char* uplo,
const INT n,
c64* restrict A,
const INT lda,
const f32* restrict S,
const f32 scond,
const f32 amax,
char* equed
);
Functions
-
void zlaqhe(const char *uplo, const INT n, c128 *restrict A, const INT lda, const f64 *restrict S, const f64 scond, const f64 amax, char *equed)#
ZLAQHE equilibrates a Hermitian matrix A using the scaling factors in the vector S.
- Internal Parameters:
THRESHdecides whether to scale based on the ratio of the scaling factors: scaling is performed whenscond<THRESH.LARGEandSMALLdecide whether to scale based on the absolute size of the largest matrix element: scaling is performed whenamax>LARGEoramax<SMALL.
Parameters
inuplo'U': Upper triangular'L': Lower triangular
innThe order of the matrix A.
n>=0.inoutADouble complex array of dimension
(lda,n). On entry, the Hermitian matrix A. Ifuplo='U', the leading n by n upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. Ifuplo='L', the leading n by n lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced. On exit, ifequed='Y', the equilibrated matrix: diag(S) * A * diag(S).inldaThe leading dimension of A.
lda>=max(n,1).inSDouble precision array of dimension
n. The scale factors for A.inscondRatio of the smallest S(i) to the largest S(i).
inamaxAbsolute value of largest matrix entry.
outequed'N': No equilibration'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S).
void zlaqhe(
const char* uplo,
const INT n,
c128* restrict A,
const INT lda,
const f64* restrict S,
const f64 scond,
const f64 amax,
char* equed
);