/home/abui...la_gbamv.f(3)
π NAME π
Okay so bestie, this whole page is literally about one file β and its full government name is a whole journey:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zla_gbamv.f
Yes that's the actual name, no cap. It lives in the Library Functions Manual (that's the manual section, iykyk) and it's the home of ZLA_GBAMV, an iconic little workhorse from LAPACK. π¦
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine ZLA_GBAMV (trans, m, n, kl, ku, alpha, ab, ldab, x, incx,
beta, y, incy)
ZLA_GBAMV performs a matrix-vector operation to calculate error bounds. That's her whole job and she does it slayfully. π
π Function/Subroutine Documentation π
subroutine ZLA_GBAMV (integer trans, integer m, integer n, integer kl,
integer ku, double precision alpha, complex*16, dimension( ldab, * ) ab,
integer ldab, complex*16, dimension( * ) x, integer incx, double
precision beta, double precision, dimension( * ) y, integer incy)
ZLA_GBAMV performs a matrix-vector operation to calculate error bounds. she's giving utility function with main character energy. π
πΈ Purpose πΈ
ZLA_GBAMV performs one of the matrix-vector operations:
y := alpha*abs(A)*abs(x) + beta*abs(y),
or
y := alpha*abs(A)**T*abs(x) + beta*abs(y),
where alpha and beta are scalars, x and y are vectors and A is an m by n matrix.
This function is primarily used in calculating error bounds. To protect against underflow during evaluation, components in the resulting vector are perturbed away from zero by (N+1) times the underflow threshold. To prevent unnecessarily large errors for block-structure embedded in general matrices, zero components are not perturbed. A zero entry is considered if all multiplications involved in computing that entry have at least one zero multiplicand. π§
Lowkey important: that "zero components are not perturbed" thing is the whole vibe check of this routine β it's not a bug, it's the design. Don't come for her.
π Parameters π
TRANSβINTEGER. On entry,TRANSspecifies the operation to be performed as follows:BLAS_NO_TRANSβy := alpha*abs(A)*abs(x) + beta*abs(y)BLAS_TRANSβy := alpha*abs(A**T)*abs(x) + beta*abs(y)BLAS_CONJ_TRANSβy := alpha*abs(A**T)*abs(x) + beta*abs(y)
Unchanged on exit.
MβINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. Unchanged on exit.NβINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. Unchanged on exit.KLβINTEGER. The number of subdiagonals within the band ofA.KL >= 0.KUβINTEGER. The number of superdiagonals within the band ofA.KU >= 0.ALPHAβDOUBLE PRECISION. On entry,ALPHAspecifies the scalar alpha. Unchanged on exit. πABβCOMPLEX*16array, dimension( LDAB, n ). Before entry, the leadingmbynpart of the arrayABmust contain the matrix of coefficients. Unchanged on exit.LDABβINTEGER. On entry,LDABspecifies the first dimension ofABas declared in the calling (sub) program.LDABmust be at leastmax( 1, m ). Unchanged on exit.XβCOMPLEX*16array, dimension( 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. Unchanged on exit.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Unchanged on exit. π«ΆBETAβDOUBLE PRECISION. On entry,BETAspecifies the scalar beta. WhenBETAis supplied as zero thenYneed not be set on input. Unchanged on exit.YβDOUBLE PRECISIONarray, dimension( 1 + ( m - 1 )*abs( INCY ) )whenTRANS = 'N'or'n'and at least( 1 + ( n - 1 )*abs( INCY ) )otherwise. Before entry withBETAnon-zero, the incremented arrayYmust contain the vectory. On exit,Yis overwritten by the updated vectory. If eithermornis zero, thenYis not referenced and the function performs a quick return. π¨INCYβINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. Unchanged on exit.
Level 2 Blas routine. β¨
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 186 of file zla_gbamv.f. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. Not me writing it by hand, bestie β the machines did this one. π€
Anyway, that's the whole page, and honestly? She ate. ππ₯
Sign-off era: this is LAPACK, Version 3.12.0, and yes, this page literally comes from /home/abui...la_gbamv.f(3) β the header and footer served their purpose so I'm folding them in here instead of copy-pasting them like a boring person. π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms