BLAS/SRC/zsyrk.f(3)

✨ NAME ✨

BLAS/SRC/zsyrk.f β€” bestie, this is the file that gives you zsyrk, a Level 3 BLAS routine that does a symmetric rank-k update πŸ’–


🌸 SYNOPSIS 🌸

Functions/Subroutines

  • subroutine zsyrk (uplo, trans, n, k, alpha, a, lda, beta, c, ldc)
    • ZSYRK

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine zsyrk (character uplo, character trans, integer n, integer k,
    complex*16 alpha, complex*16, dimension(lda,*) a, integer lda,
    complex*16 beta, complex*16, dimension(ldc,*) c, integer ldc)

ZSYRK

πŸ’… Purpose:

okay so ZSYRK performs one of the symmetric rank k operations

C := alpha*A*A**T + beta*C,

or

C := alpha*A**T*A + beta*C,

where alpha and beta are scalars, C is an n by n symmetric matrix and A is an n by k matrix in the first case and a k by n matrix in the second case. literally just a glow-up for your matrix, no cap 🫢


πŸŽ€ Parameters πŸŽ€

  • UPLO UPLO is CHARACTER*1 On entry, UPLO specifies whether the upper or lower triangular part of the array C is to be referenced as follows:
    • UPLO = 'U' or 'u' β€” Only the upper triangular part of C is to be referenced.
    • UPLO = 'L' or 'l' β€” Only the lower triangular part of C is to be referenced.
  • TRANS TRANS is CHARACTER*1 On entry, TRANS specifies the operation to be performed as follows:
    • TRANS = 'N' or 'n' β€” C := alpha*A*A**T + beta*C.
    • TRANS = 'T' or 't' β€” C := alpha*A**T*A + beta*C.
  • N N is INTEGER On entry, N specifies the order of the matrix C. N must be at least zero.
  • K K is INTEGER On entry with TRANS = 'N' or 'n', K specifies the number of columns of the matrix A, and on entry with TRANS = 'T' or 't', K specifies the number of rows of the matrix A. K must be at least zero.
  • ALPHA ALPHA is COMPLEX*16 On entry, ALPHA specifies the scalar alpha. πŸ’«
  • A A is COMPLEX*16 array, dimension ( LDA, ka ), where ka is k when TRANS = 'N' or 'n', and is n otherwise. Before entry with TRANS = 'N' or 'n', the leading n by k part of the array A must contain the matrix A, otherwise the leading k by n part of the array A must contain the matrix A.
  • LDA LDA is INTEGER On entry, LDA specifies the first dimension of A as declared in the calling (sub) program. When TRANS = 'N' or 'n' then LDA must be at least max( 1, n ), otherwise LDA must be at least max( 1, k ).
  • BETA BETA is COMPLEX*16 On entry, BETA specifies the scalar beta. ✨
  • C C is COMPLEX*16 array, dimension ( LDC, N ) Before entry with UPLO = 'U' or 'u', the leading n by n upper triangular part of the array C must contain the upper triangular part of the symmetric matrix and the strictly lower triangular part of C is not referenced. On exit, the upper triangular part of the array C 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 C must contain the lower triangular part of the symmetric matrix and the strictly upper triangular part of C is not referenced. On exit, the lower triangular part of the array C is overwritten by the lower triangular part of the updated matrix.

  • LDC LDC is INTEGER On entry, LDC specifies the first dimension of C as declared in the calling (sub) program. LDC must be at least max( 1, n ).

πŸ‘‘ Author πŸ‘‘

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

🧚 Further Details:

Level 3 Blas routine. 🌈
-- Written on 8-February-1989.
   Jack Dongarra, Argonne National Laboratory.
   Iain Duff, AERE Harwell.
   Jeremy Du Croz, Numerical Algorithms Group Ltd.
   Sven Hammarling, Numerical Algorithms Group Ltd.

Definition at line 166 of file zsyrk.f. πŸ’…


⭐ Author ⭐

Generated automatically by Doxygen for LAPACK from the source code. (not me writing this by hand bestie, the robots did it πŸ™ˆ)


and that's the whole page, periodt πŸ’– it's LAPACK Version 3.12.0, dated Tue Nov 28 2023 12:08:41, filed under BLAS/SRC/zsyrk.f(3). go forth and symmetrically rank-k update, you absolute icon πŸŽ€βœ¨