BLAS/SRC/dgbmv.f(3)
π BLAS/SRC/dgbmv.f(3) β the dgbmv glow-up π
okay bestie, welcome to the LAPACK manual page for BLAS/SRC/dgbmv.f β¨ this is the whole thing, every crumb, no skips. grab a snack, we're doing banded matrix-vector math π
β¨ NAME β¨
BLAS/SRC/dgbmv.f β that's it, that's the name, she's mysterious like that π
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine dgbmv (trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y,
incy)
DGBMV
πΈ Function/Subroutine Documentation πΈ
subroutine dgbmv
subroutine dgbmv (character trans, integer m, integer n, integer kl, integer
ku, 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)
DGBMV
π« Purpose
okay so DGBMV performs one of these two matrix-vector operations, pick your fighter:
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 band matrix, with kl sub-diagonals and ku super-diagonals. band matrix representation, we stan a memory-saving queen π
π Parameters
TRANSβTRANSisCHARACTER*1. on entry,TRANSspecifies 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βMisINTEGER. on entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. (zero is allowed, bestie, we love a flexible icon)NβNisINTEGER. on entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero.KLβKLisINTEGER. on entry,KLspecifies the number of sub-diagonals of the matrixA.KLmust satisfy0 .le. KL.KUβKUisINTEGER. on entry,KUspecifies the number of super-diagonals of the matrixA.KUmust satisfy0 .le. KU.ALPHAβALPHAisDOUBLE PRECISION.on entry,ALPHAspecifies the scalar alpha. β¨AβAisDOUBLE PRECISIONarray, dimension( LDA, N ). before entry, the leading( kl + ku + 1 )bynpart of the arrayAmust contain the matrix of coefficients, supplied column by column, with the leading diagonal of the matrix in row( ku + 1 )of the array, the first super-diagonal starting at position 2 in rowku, the first sub-diagonal starting at position 1 in row( ku + 2 ), and so on. elements in the arrayAthat do not correspond to elements in the band matrix (such as the top leftkubykutriangle) are not referenced β they're just vibing, we don't touch them π. the following program segment will transfer a band matrix from conventional full matrix storage to band storage:
DO 20, J = 1, N
K = KU + 1 - J
DO 10, I = MAX( 1, J - KU ), MIN( M, J + KL )
A( K + I, J ) = matrix( I, J )
10 CONTINUE
20 CONTINUE
LDAβLDAisINTEGER. on entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at least( kl + ku + 1 ).XβXisDOUBLE PRECISIONarray, dimension at least( 1 + ( n - 1 )*abs( INCX ) )whenTRANS = 'N' or 'n'and at least( 1 + ( m - 1 )*abs( INCX ) )otherwise. before entry, the incremented arrayXmust contain the vectorx.INCXβINCXisINTEGER. on entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. π« (fr fr, do not do it)BETAβBETAisDOUBLE PRECISION.on entry,BETAspecifies the scalar beta. whenBETAis supplied as zero thenYneed not be set on input. that's a little shortcut for you, you're welcome πYβYisDOUBLE PRECISIONarray, dimension at least( 1 + ( m - 1 )*abs( INCY ) )whenTRANS = 'N' or 'n'and at least( 1 + ( n - 1 )*abs( INCY ) )otherwise. before entry, the incremented arrayYmust contain the vectory. on exit,Yis overwritten by the updated vectory. if eithermornis zero, thenYnot referenced and the function performs a quick return β she said "not today" and bounced πINCYβINCYisINTEGER. on entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero.
π 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, orM = 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
Definition at line 186 of file dgbmv.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code. (the robots did this one, not me π§)
Version 3.12.0 Β· Tue Nov 28 2023 12:08:41 Β· BLAS/SRC/dgbmv.f(3)
okay that's the whole page, every flag, every parameter, every line, nothing left out π now go forth and multiply your band matrices, bestie, you ate π«Άβ¨
π¦ where this page comes from
- centos-stream 10: blas 3.12.0-7.el10 Β· BSD-3-Clause-Open-MPI
- fedora 43: blas 3.12.0-10.fc43 Β· BSD-3-Clause-Open-MPI
- fedora 43: blas 3.12.0-10.fc43 Β· BSD-3-Clause-Open-MPI
- fedora 44: blas 3.12.0-11.fc44 Β· BSD-3-Clause-Open-MPI
- fedora 44: blas 3.12.0-11.fc44 Β· BSD-3-Clause-Open-MPI
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms