la_gbamv(3)
NAME π
la_gbamv β la_gbamv: matrix-vector multiply |A| * |x|, general banded. That's the whole vibe. No transpose trickery at the caller level, no drama β just a banded matrix, absolute values everywhere, and a vector multiply that lives for error bounds. π
SYNOPSIS β¨
Functions π¦
cla_gbamvβ the complex flavor.CLA_GBAMVperforms a matrix-vector operation to calculate error bounds. π
subroutine cla_gbamv (trans, m, n, kl, ku, alpha, ab, ldab, x, incx,
beta, y, incy)
dla_gbamvβ the double precision one.DLA_GBAMVperforms a matrix-vector operation to calculate error bounds. π₯
subroutine dla_gbamv (trans, m, n, kl, ku, alpha, ab, ldab, x, incx,
beta, y, incy)
sla_gbamvβ single precision, same energy.SLA_GBAMVperforms a matrix-vector operation to calculate error bounds. πΈ
subroutine sla_gbamv (trans, m, n, kl, ku, alpha, ab, ldab, x, incx,
beta, y, incy)
zla_gbamvβ double complex, main character energy.ZLA_GBAMVperforms a matrix-vector operation to calculate error bounds. π
subroutine zla_gbamv (trans, m, n, kl, ku, alpha, ab, ldab, x, incx,
beta, y, incy)
DETAILED DESCRIPTION π«Ά
okay so Detailed Description is the section header, and everything juicy lives right below it in Function Documentation. no cap, that's where the good stuff is.
FUNCTION DOCUMENTATION π
subroutine cla_gbamv π¦
subroutine cla_gbamv (integer trans, integer m, integer n, integer kl,
integer ku, real alpha, complex, dimension( ldab, * ) ab, integer ldab,
complex, dimension( * ) x, integer incx, real beta, real, dimension( * )
y, integer incy)
CLA_GBAMV performs a matrix-vector operation to calculate error bounds.
Purpose π―
bestie, this routine does one of these two 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. literally the whole plot.
so like, 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. that's not optional, that's the safety net. but β and this is the iconic part β 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. β¨
Parameters π
TRANSβINTEGER. On entry,TRANSspecifies the operation to be performed, like so:
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)
yep, BLAS_CONJ_TRANS produces the exact same line as BLAS_TRANS here β iykyk. 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βREAL. On entry,ALPHAspecifies the scalar alpha. Unchanged on exit.ABβCOMPLEXarray, dimension(LDAB,n). Before entry, the leadingmbynpart of the arrayABmust contain the matrix of coefficients. Unchanged on exit. the band storage icon.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βCOMPLEXarray, 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. fr fr, not zero. Unchanged on exit.BETAβREAL. On entry,BETAspecifies the scalar beta. WhenBETAis supplied as zero thenYneed not be set on input. Unchanged on exit. πYβREALarray, 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, thenYnot referenced and the function performs a quick return. shortcut era. β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 cla_gbamv.f.
subroutine dla_gbamv π₯
subroutine dla_gbamv (integer trans, integer m, integer n, integer kl,
integer ku, double precision alpha, double precision, dimension( ldab, *
) ab, integer ldab, double precision, dimension( * ) x, integer incx,
double precision beta, double precision, dimension( * ) y, integer incy)
DLA_GBAMV performs a matrix-vector operation to calculate error bounds.
Purpose π―
same storyline, double precision edition. it performs one of these two 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. we been knew.
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. but 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. β¨
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βDOUBLE PRECISIONarray, dimension( LDAB, n ). Before entry, the leadingmbynpart of the arrayABmust contain the matrix of coefficients. Unchanged on exit. band storage stays booked and busy.LDABβINTEGER. On entry,LDAspecifies the first dimension ofABas declared in the calling (sub) program.LDABmust be at leastmax( 1, m ). Unchanged on exit. (yes, it saysLDAright there in the source β we don't edit the source, we respect it π)XβDOUBLE PRECISIONarray, 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, thenYnot referenced and the function performs a quick return. quick return my beloved. β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 185 of file dla_gbamv.f.
(the s and z flavors are right behind this β same routine, same rules, different precision π)
π sla_gbamv β the real-valued one
subroutine sla_gbamv (integer trans, integer m, integer n, integer kl,
integer ku, real alpha, real, dimension( ldab, * ) ab, integer ldab,
real, dimension( * ) x, integer incx, real beta, real, dimension( * ) y,
integer incy)
SLA_GBAMV performs a matrix-vector operation to calculate error bounds. That's the whole gig, bestie.
β¨ Purpose
SLA_GBAMV performs one of these 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. That's the whole safety mechanism, and yes it's giving "we padded it so it doesn't vanish into the void" π
π 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βREAL. On entry,ALPHAspecifies the scalar alpha. Unchanged on exit.ABβREAL array, dimension ( LDAB, n ). Before entry, the leadingmbynpart of the arrayABmust contain the matrix of coefficients. Unchanged on exit.LDABβINTEGER. On entry,LDAspecifies the first dimension ofABas declared in the calling (sub) program.LDABmust be at leastmax( 1, m ). Unchanged on exit. Yes, it saysLDAright there in the source β we don't make the rules, we just report them πXβREAL array, dimension ( 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. Unchanged on exit.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCX must not be zero.Unchanged on exit.BETAβREAL. On entry,BETAspecifies the scalar beta. WhenBETAis supplied as zero thenYneed not be set on input. Unchanged on exit.YβREAL array, dimension ( 1 + ( m - 1 )*abs( INCY ) ) when TRANS = '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, thenYnot referenced and the function performs a quick return.INCYβINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCY must not be zero.Unchanged on exit.
Level 2 Blas routine. That's it, that's the note.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 185 of file sla_gbamv.f.
πΈ zla_gbamv β the complex*16 glow-up
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. Same energy, different precision.
β¨ Purpose
ZLA_GBAMV performs one of these 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. The underflow protection is lowkey the main character here π«Ά
π 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*16 array, 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. See? This one saysLDAB. Character development πXβCOMPLEX*16 array, dimension ( 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. Unchanged on exit.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCX must 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 PRECISION array, dimension ( 1 + ( m - 1 )*abs( INCY ) ) when TRANS = '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, thenYnot referenced and the function performs a quick return.INCYβINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCY must not be zero.Unchanged on exit.
Level 2 Blas routine. Same note, same iconic status.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 186 of file zla_gbamv.f.
π¦ Author (the meta one)
Generated automatically by Doxygen for LAPACK from the source code. Not me being generated by Doxygen, that's so real π
And that's the whole page, bestie. This was LAPACK Version 3.12.0, manual page la_gbamv(3) β go forth and compute those error bounds with main character energy. Periodt. πβ¨
π¦ 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