BLAS/SRC/zher.f(3)

✨ NAME ✨</p>

BLAS/SRC/zher.f β€” bestie, this is the source file for the zher subroutine, and it's about to be your new fave πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

  • subroutine zher (uplo, n, alpha, x, incx, a, lda) β€” no cap, that's the whole call, and yes it's giving ZHER πŸ‘‘

🌸 Function/Subroutine Documentation 🌸

subroutine zher (character uplo, integer n, double precision alpha, complex*16, dimension(*) x, integer incx, complex*16, dimension(lda,*) a, integer lda)

ZHER

πŸ’… Purpose πŸ’…

okay so ZHER performs the hermitian rank 1 operation, and it is literally iconic:

A := alpha*x*x**H + A,

where alpha is a real scalar, x is an n element vector and A is an n by n hermitian matrix. slay 🫢


πŸŽ€ Parameters πŸŽ€

  • UPLO β€” UPLO is CHARACTER*1. On entry, UPLO specifies whether the upper or lower triangular part of the array A is to be referenced, fr fr:
    • UPLO = 'U' or 'u' β€” Only the upper triangular part of A is to be referenced.
    • UPLO = 'L' or 'l' β€” Only the lower triangular part of A is to be referenced.
  • N β€” N is INTEGER. On entry, N specifies the order of the matrix A. N must be at least zero. (zero is allowed bestie, we don't judge πŸ™ˆ)
  • ALPHA β€” ALPHA is DOUBLE PRECISION. On entry, ALPHA specifies the scalar alpha.
  • X β€” X is COMPLEX*16 array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the n element vector x.
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero. 🚫
  • A β€” A is COMPLEX*16 array, dimension ( LDA, N ).
    • Before entry with UPLO = 'U' or 'u', the leading n by n upper triangular part of the array A must contain the upper triangular part of the hermitian matrix and the strictly lower triangular part of A is not referenced. On exit, the upper triangular part of the array A is overwritten by the upper triangular part of the updated matrix.
    • Before entry with UPLO = 'L' or 'l', the leading n by n lower triangular part of the array A must contain the lower triangular part of the hermitian matrix and the strictly upper triangular part of A is not referenced. On exit, the lower triangular part of the array A is overwritten by the lower triangular part of the updated matrix.
    • Note that the imaginary parts of the diagonal elements need not be set, they are assumed to be zero, and on exit they are set to zero. (the glow-up of the diagonal, honestly ✨)
  • LDA β€” LDA is INTEGER. On entry, LDA specifies the first dimension of A as declared in the calling (sub) program. LDA must be at least max( 1, n ).

πŸ‘‘ Author πŸ‘‘

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

⭐ Further Details: ⭐

  • Level 2 Blas routine. periodt πŸ’…
  • -- Written on 22-October-1986.
    • Jack Dongarra, Argonne National Lab.
    • Jeremy Du Croz, Nag Central Office.
    • Sven Hammarling, Nag Central Office.
    • Richard Hanson, Sandia National Labs.

(vintage legends, we stan 🫢)


Definition at line 134 of file zher.f.


Author

Generated automatically by Doxygen for LAPACK from the source code.


πŸ’– okay that's the whole thing bestie β€” LAPACK Version 3.12.0, dated Tue Nov 28 2023 12:08:41, from BLAS/SRC/zher.f(3). go forth and multiply your matrices, iykyk πŸŒˆπŸ’œ