BLAS/SRC/dsbmv.f(3)

πŸ’– NAME πŸ’–

Welcome to the <pink>BLAS/SRC/dsbmv.f(3)</pink> page, bestie β€” straight out of the <cyan>Library Functions Manual</cyan>. This is the BLAS glow-up for dsbmv, and it's giving symmetric band matrix-vector realness. ✨

🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine dsbmv (uplo, n, k, alpha, a, lda, x, incx, beta, y, incy)

DSBMV πŸ‘‘

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

The full signature, no cap

   subroutine dsbmv (character uplo, integer n, integer k, double precision
       alpha, double precision, dimension(lda,*) a, integer lda, double
       precision, dimension(*) x, integer incx, double precision beta, double
       precision, dimension(*) y, integer incy)

DSBMV

Purpose: 🎯

okay so <hotpink>DSBMV</hotpink> performs the matrix-vector operation:

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

where alpha and beta are scalars, x and y are n element vectors, and A is an n by n <purple>symmetric band matrix</purple>, with k super-diagonals. periodt. πŸ’…

Parameters πŸ’…

  • UPLO β€” UPLO is CHARACTER*1. On entry, UPLO tells you whether the upper or lower triangular part of the band matrix A is being supplied, and it's literally one of these:
    • UPLO = 'U' or 'u' β€” the upper triangular part of A is being supplied.
    • UPLO = 'L' or 'l' β€” the lower triangular part of A is being supplied.
  • N β€” N is INTEGER. On entry, N specifies the order of the matrix A. N must be at least zero. 🫢
  • K β€” K is INTEGER. On entry, K specifies the number of super-diagonals of the matrix A. K must satisfy 0 .le. K.
  • ALPHA β€” ALPHA is DOUBLE PRECISION. On entry, ALPHA specifies the scalar alpha.
  • A β€” A is DOUBLE PRECISION array, dimension ( LDA, N ).

Before entry with UPLO = 'U' or 'u', the leading ( k + 1 ) by n part of the array A must contain the upper triangular band part of the symmetric matrix, supplied column by column, with the leading diagonal of the matrix in row ( k + 1 ) of the array, the first super-diagonal starting at position 2 in row k, and so on. The top left k by k triangle of the array A is not referenced. The following program segment will transfer the upper triangular part of a symmetric band matrix from conventional full matrix storage to band storage:

                 DO 20, J = 1, N
                    M = K + 1 - J
                    DO 10, I = MAX( 1, J - K ), J
                       A( M + I, J ) = matrix( I, J )
              10    CONTINUE
              20 CONTINUE

Before entry with UPLO = 'L' or 'l', the leading ( k + 1 ) by n part of the array A must contain the lower triangular band part of the symmetric matrix, supplied column by column, with the leading diagonal of the matrix in row 1 of the array, the first sub-diagonal starting at position 1 in row 2, and so on. The bottom right k by k triangle of the array A is not referenced. The following program segment will transfer the lower triangular part of a symmetric band matrix from conventional full matrix storage to band storage:

                 DO 20, J = 1, N
                    M = 1 - J
                    DO 10, I = J, MIN( N, J + K )
                       A( M + I, J ) = matrix( I, J )
              10    CONTINUE
              20 CONTINUE
  • 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 ( k + 1 ).
  • X β€” X is DOUBLE PRECISION array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the vector x. πŸ“
  • INCX β€” INCX is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero.
bestie, <yellow>INCX must not be zero</yellow> β€” that's a hard no, iykyk. πŸ’€
  • BETA β€” BETA is DOUBLE PRECISION. On entry, BETA specifies the scalar beta.
  • Y β€” Y is DOUBLE PRECISION array, dimension at least ( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented array Y must contain the vector y. On exit, Y is overwritten by the updated vector y.
  • INCY β€” INCY is INTEGER. On entry, INCY specifies the increment for the elements of Y. INCY must not be zero.
and same energy for <yellow>INCY must not be zero.</yellow> 🫢

Author πŸ’–

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

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.

Definition at line 183 of file dsbmv.f.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.

Cute sign-off bestie: the footer's giving <rainbow>LAPACK Version 3.12.0</rainbow> and page <pink>BLAS/SRC/dsbmv.f(3)</pink> β€” no date in the footer, iykyk, mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from