BLAS/SRC/zgbmv.f(3)
π NAME π
Okay so this page is BLAS/SRC/zgbmv.f β section (3), bestie β from the Library Functions Manual, and it is all about the ZGBMV subroutine. Itβs giving Level 2 BLAS, complex*16 band-matrix energy, and we are gonna get through every single parameter together. No cap. Periodt. π«Ά
β¨ SYNOPSIS β¨
π«Ά Functions/Subroutines π«Ά
subroutine zgbmv (trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y, incy)βZGBMVπ
π Function/Subroutine Documentation π
subroutine zgbmv (character trans, integer m, integer n, integer kl, integer
ku, complex*16 alpha, complex*16, dimension(lda,*) a, integer lda,
complex*16, dimension(*) x, integer incx, complex*16 beta, complex*16,
dimension(*) y, integer incy)
ZGBMV β¨
π― Purpose: π―
Bestie, ZGBMV performs one of these matrix-vector operations β yes, all three are on the menu:
y := alpha*A*x + beta*y, or y := alpha*A**T*x + beta*y, or
y := alpha*A**H*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. Iconic. π¦
π§Ύ Parameters π§Ύ
TRANSβTRANS is CHARACTER*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**H*x + beta*y.
MβM is INTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. Respect the minimum, bestie.NβN is INTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. Same vibe, zero is the floor.KLβKL is INTEGER. On entry,KLspecifies the number of sub-diagonals of the matrixA.KLmust satisfy0 .le. KL.KUβKU is INTEGER. On entry,KUspecifies the number of super-diagonals of the matrixA.KUmust satisfy0 .le. KU.ALPHAβALPHA is COMPLEX*16. On entry,ALPHAspecifies the scalaralpha. Main character scalar energy.AβA is COMPLEX*16 array, dimension ( LDA, N ). Before entry, the leading( kl + ku + 1 )by n part 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. 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βLDA is INTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at least( kl + ku + 1 ). Do not play with this one.XβX is COMPLEX*16 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 arrayXmust contain the vectorx`. Vector x is ready for her close-up.INCXβINCX is INTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Like, genuinely not zero.BETAβBETA is COMPLEX*16. On entry,BETAspecifies the scalarbeta. WhenBETAis supplied as zero thenYneed not be set on input. Zero beta means Y can chill.YβY is COMPLEX*16 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, the incremented arrayYmust contain the vectory. On exit,Yis overwritten by the updated vectory. If eithermornis zero, thenY` is not referenced and the function performs a quick return. Quick return is a whole mood.INCYβINCY is INTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. Same rule, bestie: no zero increments.
π«Ά 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 188 of file zgbmv.f. β¨
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Cute sign-off, bestie: this whole page is from LAPACK Version 3.12.0, source BLAS/SRC/zgbmv.f(3), and the written-on date flex is 22-October-1986. Slay, band matrix, slay. πππ¦
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms