BLAS/SRC/csyrk.f(3)

πŸ’… BLAS/SRC/csyrk.f πŸ’…

okay bestie, welcome to the csyrk page β€” it's a Fortran source file living its best life in BLAS/SRC/, and the manual name up top is literally just BLAS/SRC/csyrk.f. that's it, that's the name, no cap. ✨


🌸 SYNOPSIS 🌸

Functions/Subroutines πŸŽ€

  • subroutine csyrk (uplo, trans, n, k, alpha, a, lda, beta, c, ldc) β€” CSYRK

🌈 Function/Subroutine Documentation 🌈

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

CSYRK πŸ‘‘

✨ Purpose ✨

ok so here's the whole vibe β€” CSYRK 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. two flavors, one subroutine, we love a versatile icon πŸ’–


πŸ¦‹ 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, like so:
    • 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. (zero is fine bestie, we don't judge 🫢)
  • 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. on entry, ALPHA specifies the scalar alpha. πŸ’«
  • A β€” A is COMPLEX 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. on entry, BETA specifies the scalar beta. πŸ’«
  • C β€” C is COMPLEX 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.
ngl the 1989 date is giving vintage legend energy πŸ‘‘

πŸ“ Definition πŸ“

Definition at line 166 of file csyrk.f. (yes, the whole thing lives down there β€” go look, iykyk πŸ”₯)


🧚 Author 🧚

Generated automatically by Doxygen for LAPACK from the source code.


and that's the page, bestie!! πŸŽ€ ok final sign-off: this was LAPACK, Version 3.12.0, dated BLAS/SRC/csyrk.f(3) β€” slay, periodt πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from