complexHEauxiliary(3)

πŸ“¦
version 3.11.0 Β· 2 versions
, in debian bookworm

✨ NAME ✨

complexHEauxiliary β€” bestie, this is the complex auxiliary squad, like literally the whole group of complex helper functions for HE matrices πŸ’…


🌸 SYNOPSIS 🌸

πŸŽ€ Functions

  • subroutine cheswapr (UPLO, N, A, LDA, I1, I2) β€” CHESWAPR does an elementary permutation on the rows and columns of a Hermitian matrix. iconic behavior honestly.
  • real function clanhe (NORM, UPLO, N, A, LDA, WORK) β€” CLANHE hands you the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a complex Hermitian matrix.
  • subroutine claqhe (UPLO, N, A, LDA, S, SCOND, AMAX, EQUED) β€” CLAQHE scales a Hermitian matrix. glow-up but for numbers ✨

πŸ’œ Detailed Description πŸ’œ

This is the group of complex auxiliary functions for HE matrices. no cap, that's the whole vibe. πŸ¦‹


πŸ‘‘ Function Documentation πŸ‘‘

🌈 subroutine cheswapr

subroutine cheswapr (character UPLO, integer N, complex, dimension( lda, n ) A, integer LDA, integer I1, integer I2)

CHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.

πŸ“ Purpose:

CHESWAPR applies an elementary permutation on the rows and the columns of
a hermitian matrix.

πŸ’– Parameters

  • UPLO

UPLO is CHARACTER*1 Specifies whether the details of the factorization are stored as an upper or lower triangular matrix.

  • = 'U': Upper triangular, form is A = U*D*U**T;
  • = 'L': Lower triangular, form is A = L*D*L**T.
  • N

N is INTEGER The order of the matrix A. N >= 0.

  • A

A is COMPLEX array, dimension (LDA,N) On entry, the NB diagonal matrix D and the multipliers used to obtain the factor U or L as computed by CSYTRF.

On exit, if INFO = 0, the (symmetric) inverse of the original matrix. If UPLO = 'U', the upper triangular part of the inverse is formed and the part of A below the diagonal is not referenced; if UPLO = 'L' the lower triangular part of the inverse is formed and the part of A above the diagonal is not referenced.

  • LDA

LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

  • I1

I1 is INTEGER Index of the first row to swap

  • I2

I2 is INTEGER Index of the second row to swap

🌟 Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

πŸ¦‹ real function clanhe

real function clanhe (character NORM, character UPLO, integer N, complex, dimension( lda, * ) A, integer LDA, real, dimension( * ) WORK)

CLANHE returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a complex Hermitian matrix. she's flexible like that πŸ’…

πŸ“ Purpose:

CLANHE  returns the value of the one norm,  or the Frobenius norm, or
the  infinity norm,  or the  element of  largest absolute value  of a
complex hermitian matrix A.

πŸ’œ Returns

  • CLANHE
CLANHE = ( max(abs(A(i,j))), NORM = 'M' or 'm'
         (
         ( norm1(A),         NORM = '1', 'O' or 'o'
         (
         ( normI(A),         NORM = 'I' or 'i'
         (
         ( normF(A),         NORM = 'F', 'f', 'E' or 'e'

where norm1 denotes the one norm of a matrix (maximum column sum), normI denotes the infinity norm of a matrix (maximum row sum) and normF denotes the Frobenius norm of a matrix (square root of sum of squares). Note that max(abs(A(i,j))) is not a consistent matrix norm.

πŸ’– Parameters

  • NORM

NORM is CHARACTER*1 Specifies the value to be returned in CLANHE as described above.

  • UPLO

UPLO is CHARACTER*1 Specifies whether the upper or lower triangular part of the hermitian matrix A is to be referenced.

  • = 'U': Upper triangular part of A is referenced
  • = 'L': Lower triangular part of A is referenced
  • N

N is INTEGER The order of the matrix A. N >= 0. When N = 0, CLANHE is set to zero.

  • A

A is COMPLEX array, dimension (LDA,N) The hermitian matrix A. If UPLO = '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. If UPLO = '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. Note that the imaginary parts of the diagonal elements need not be set and are assumed to be zero.

  • LDA

LDA is INTEGER The leading dimension of the array A. LDA >= max(N,1).

  • WORK

WORK is REAL array, dimension (MAX(1,LWORK)), where LWORK >= N when NORM = 'I' or '1' or 'O'; otherwise, WORK is not referenced.

🌟 Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

🌸 subroutine claqhe

subroutine claqhe (character UPLO, integer N, complex, dimension( lda, * ) A, integer LDA, real, dimension( * ) S, real SCOND, real AMAX, character EQUED)

CLAQHE scales a Hermitian matrix.

πŸ“ Purpose:

CLAQHE equilibrates a Hermitian matrix A using the scaling factors
in the vector S.

πŸ’– Parameters

  • UPLO

UPLO is CHARACTER*1 Specifies whether the upper or lower triangular part of the Hermitian matrix A is stored.

  • = 'U': Upper triangular
  • = 'L': Lower triangular
  • N

N is INTEGER The order of the matrix A. N >= 0.

  • A

A is COMPLEX array, dimension (LDA,N) On entry, the Hermitian matrix A. If UPLO = '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. If UPLO = '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, if EQUED = 'Y', the equilibrated matrix: diag(S) * A * diag(S).

  • LDA

LDA is INTEGER The leading dimension of the array A. LDA >= max(N,1).

  • S

S is REAL array, dimension (N) The scale factors for A.

  • SCOND

SCOND is REAL Ratio of the smallest S(i) to the largest S(i).

  • AMAX

AMAX is REAL Absolute value of largest matrix entry.

  • EQUED

EQUED is 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).

🧚 Internal Parameters:

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.

🌟 Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. not a human hand in sight, she's self-made πŸ˜­πŸ’…


Version 3.11.0 β€” Sun Nov 27 2022 🫢

okay that's the whole page bestie, complexHEauxiliary(3) from the LAPACK gang, version 3.11.0, dated Sun Nov 27 2022 β€” go forth and scale those Hermitian matrices, ily, bye πŸ’–βœ¨πŸ‘‘

πŸ“¦ where this page comes from