BLAS/SRC/cgerc.f(3)

πŸ’– BLAS/SRC/cgerc.f πŸ’–

okay bestie, so this is a page from LAPACK (the Linear Algebra PACKage, the blueprint of every numerical linear algebra library you've ever used, no cap) and it's literally all about one tiny icon: cgerc. it lives in the BLAS/SRC folder and it's giving level 2 BLAS routine energy, which is iykyk. sit down, grab a strawberry πŸ“, let's get into it.


✨ SYNOPSIS ✨

🫢 Functions/Subroutines

  • subroutine cgerc (m, n, alpha, x, incx, y, incy, a, lda) β€” the one and only, CGERC itself πŸ’…

🌸 Function/Subroutine Documentation 🌸

πŸ’œ subroutine cgerc (integer m, integer n, complex alpha, complex, dimension(*) x, integer incx, complex, dimension(*) y, integer incy, complex, dimension(lda,*) a, integer lda)

CGERC ✨

πŸŽ€ Purpose:

CGERC performs the rank 1 operation

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

where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. slay. that's the whole vibe. a rank-1 update, no notes. πŸ”₯

πŸ¦‹ Parameters

  • M β€” M is INTEGER. On entry, M specifies the number of rows of the matrix A. M must be at least zero. (zero is allowed, negative is not, we don't do that here 🚫)
  • N β€” N is INTEGER. On entry, N specifies the number of columns of the matrix A. N must be at least zero. same rules bestie ✨
  • ALPHA β€” ALPHA is COMPLEX. On entry, ALPHA specifies the scalar alpha. the little multiplier that could πŸ’«
  • X β€” X is COMPLEX array, dimension at least ( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the m element vector x. so like, it needs to be big enough, plan ahead queen πŸ‘‘
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero. seriously. not zero. the math does not survive a zero stride 😭
  • Y β€” Y is COMPLEX array, dimension at least ( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented array Y must contain the n element vector y. same sizing rules, same main character energy 🌈
  • INCY β€” INCY is INTEGER. On entry, INCY specifies the increment for the elements of Y. INCY must not be zero. 🫢
  • A β€” A is COMPLEX array, dimension ( LDA, N ). Before entry, the leading m by n part of the array A must contain the matrix of coefficients. On exit, A is overwritten by the updated matrix. yes, it gets overwritten, it's a glow-up in place πŸ’…
  • 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, m ). read that again: at least max( 1, m ), not less, don't test her πŸ™ˆ

πŸ‘‘ Author

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

the whole squad, iconic honestly πŸ’–

⭐ Further Details:

  • Level 2 Blas routine.
  • -- 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.
1986?? the way this code is older than basically everyone's parents and it's STILL running your matrix math. timeless. legendary. no cap. 🧚

Definition at line 129 of file cgerc.f.


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for LAPACK from the source code. (not a human writing this one, just the doc generator doing its little thing πŸ€–βœ¨)


and that's the whole page bestie!! πŸ’œ this was LAPACK Version 3.12.0, generated Tue Nov 28 2023 12:08:41, filed under BLAS/SRC/cgerc.f(3). go forth and rank-1 update something. periodt. πŸ’…πŸŒΈ