BLAS/SRC/sgemv.f(3)

✨ BLAS/SRC/sgemv.f(3) ✨

Okay so bestie, welcome to the BLAS/SRC/sgemv.f(3) manual page πŸ’… This is the Library Functions Manual energy, and we're about to get into some Level 2 BLAS realness. No cap, this one's a classic. Let's go! πŸŽ€


✨ NAME ✨

BLAS/SRC/sgemv.f β€” it's giving matrix-vector multiplication, main character energy 🌟


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine sgemv (trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
    SGEMV

✨ Function/Subroutine Documentation ✨

subroutine sgemv (character trans, integer m, integer n, real alpha, real,
    dimension(lda,*) a, integer lda, real, dimension(*) x, integer incx,
    real beta, real, dimension(*) y, integer incy)

SGEMV β€” literally the icon, the moment, the legend πŸ’–


✨ Purpose ✨

!> SGEMV performs one of the matrix-vector operations !> y := alpha*A*x + beta*y, or y := alpha*A**T*x + beta*y, !> where alpha and beta are scalars, x and y are vectors and A is an !> m by n matrix.

It's giving "I do one thing and I do it flawlessly" ✨ periodt.


✨ Parameters ✨

  • TRANS β€” TRANS is CHARACTER*1. On entry, TRANS specifies the operation to be performed as follows:
    • TRANS = 'N' or 'n' β†’ y := alpha*A*x + beta*y.
    • TRANS = 'T' or 't' β†’ y := alpha*A**T*x + beta*y.
    • TRANS = 'C' or 'c' β†’ y := alpha*A**T*x + beta*y.
  • M β€” M is INTEGER. On entry, M specifies the number of rows of the matrix A. M must be at least zero. 🫢
  • N β€” N is INTEGER. On entry, N specifies the number of columns of the matrix A. N must be at least zero. 🫢
  • ALPHA β€” ALPHA is REAL. On entry, ALPHA specifies the scalar alpha. Slay scalar πŸ’…
  • A β€” A is REAL array, dimension ( LDA, N ). Before entry, the leading m by n part of the array A must contain the matrix of coefficients. Iconic matrix behavior πŸ”₯
  • 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 ). No cap 🧒
  • X β€” X is REAL array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ) when TRANS = 'N' or 'n' and at least ( 1 + ( m - 1 )*abs( INCX ) ) otherwise. Before entry, the incremented array X must contain the vector x. Obsessed with this vector energy 🌸
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero. 🚫
  • BETA β€” BETA is REAL. On entry, BETA specifies the scalar beta. When BETA is supplied as zero then Y need not be set on input. Lowkey efficient πŸ’€
  • Y β€” Y is REAL array, dimension at least ( 1 + ( m - 1 )*abs( INCY ) ) when TRANS = 'N' or 'n' and at least ( 1 + ( n - 1 )*abs( INCY ) ) otherwise. Before entry with BETA non-zero, the incremented array Y must contain the vector y. On exit, Y is overwritten by the updated vector y.
If either m or n is zero, then Y not referenced and the function performs a quick return. πŸ‘‘
  • INCY β€” INCY is INTEGER. On entry, INCY specifies the increment for the elements of Y. INCY must not be zero. 🚫

✨ Author ✨

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

The academic legends themselves πŸŽ“βœ¨


✨ Further Details ✨

!> Level 2 Blas routine. !> The vector and matrix arguments are not referenced when N = 0, or M = 0 !> -- 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.

I mean, the way that this routine has been slaying since 1986? We stan a timeless icon πŸ“…πŸ’–


Definition at line 157 of file sgemv.f.


✨ Author ✨

Generated automatically by Doxygen for LAPACK from the source code.


πŸ’– Okay bestie, that's a wrap! This page is from LAPACK Version 3.12.0, generated automatically by Doxygen for LAPACK from the source code. Slay, and remember: always check your increments. πŸ«Άβœ¨πŸ’…

πŸ“¦ where this page comes from