/home/abui...la_heamv.f(3)
π NAME π
okay bestie, the header says /home/abui...la_heamv.f(3) and it's from the Library Functions Manual. The NAME section spells out the actual file path: /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cla_heamv.f. That's the whole name vibe. π
β¨ SYNOPSIS β¨
π§ Functions/Subroutines π§
subroutine CLA_HEAMV (uplo, n, alpha, a, lda, x, incx, beta, y, incy)
CLA_HEAMV computes a matrix-vector product using a Hermitian indefinite matrix to calculate error bounds.
π Function/Subroutine Documentation π
subroutine CLA_HEAMV (integer uplo, integer n, real alpha, complex,
dimension( lda, * ) a, integer lda, complex, dimension( * ) x, integer
incx, real beta, real, dimension( * ) y, integer incy)
CLA_HEAMV computes a matrix-vector product using a Hermitian indefinite matrix to calculate error bounds.
π― Purpose π―
The original comment block literally starts like this β yes, it says CLA_SYAMV right there, bestie, not a typo from me:
!> CLA_SYAMV performs the matrix-vector operation
!>
!> y := alpha*abs(A)*abs(x) + beta*abs(y),
!>
!> where alpha and beta are scalars, x and y are vectors and A is an
!> n by n symmetric 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.
!>
So the operation is:
y := alpha*abs(A)*abs(x) + beta*abs(y),
where alpha and beta are scalars, x and y are vectors, and A is an n by n symmetric 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. Iconic little numerical-safety moment, no cap. π
π Parameters π
UPLOβUPLO is INTEGER. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced as follows:UPLO = BLAS_UPPERmeans only the upper triangular part ofAis to be referenced;UPLO = BLAS_LOWERmeans only the lower triangular part ofAis to be referenced. Unchanged on exit.NβN is INTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. Unchanged on exit.ALPHAβALPHA is REAL .On entry,ALPHAspecifies the scalaralpha. Unchanged on exit.AβA is COMPLEX array, dimension ( LDA, n ).Before entry, the leadingm by npart of the arrayAmust contain the matrix of coefficients. Unchanged on exit. Yes, it saysm by nβ keep it exactly like that, bestie.LDAβLDA is INTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ). Unchanged on exit.XβX is COMPLEX array, dimension ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the vectorx. Unchanged on exit.INCXβINCX is INTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Unchanged on exit.BETAβBETA is REAL .On entry,BETAspecifies the scalarbeta. WhenBETAis supplied as zero thenYneed not be set on input. Unchanged on exit.YβY is REAL array, dimension ( 1 + ( n - 1 )*abs( INCY ) ). Before entry withBETAnon-zero, the incremented arrayYmust contain the vectory. On exit,Yis overwritten by the updated vectory.INCYβINCY is INTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. Unchanged on exit.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Further Details π
The source says:
!>
!> Level 2 Blas routine.
!>
!> -- 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.
!> -- Modified for the absolute-value product, April 2006
!> Jason Riedy, UC Berkeley
!>
So: Level 2 Blas routine. It was written on 22-October-1986 by Jack Dongarra, Argonne National Lab; Jeremy Du Croz, Nag Central Office; Sven Hammarling, Nag Central Office; and Richard Hanson, Sandia National Labs. Then it was modified for the absolute-value product in April 2006 by Jason Riedy, UC Berkeley. History lesson ate. π«Ά
Definition at line 176 of file cla_heamv.f.
π« Author π«
Generated automatically by Doxygen for LAPACK from the source code.
That's the whole page, bestie: LAPACK, Version 3.12.0, and the footer path /home/abui...la_heamv.f(3). Periodt. ππβ¨
π¦ 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