BLAS/SRC/dsdot.f(3)
β¨ BLAS/SRC/dsdot.f β¨
okay bestie, gather round, we're doing a LAPACK page from the LAPACK manual and honestly? this one's a little cutie. it's dsdot and it's giving "quietly doing the math so you don't have to" energy π
πΈ NAME πΈ
BLAS/SRC/dsdot.f β yes that's literally it, that's the whole name, she's lowkey mysterious like that π
π¦ SYNOPSIS π¦
Functions/Subroutines
double precision function dsdot (n, sx, incx, sy, incy)
DSDOT
π Function/Subroutine Documentation π
double precision function dsdot (integer n, real, dimension(*) sx, integer
incx, real, dimension(*) sy, integer incy)
DSDOT
π Purpose:
compute the inner product of two vectors with extended precision accumulation and result β¨
basically it returns a D.P. dot product that got accumulated in D.P., for S.P. SX and SY, no cap:
DSDOT = sum for I = 0 to N-1 of SX(LX+I*INCX) * SY(LY+I*INCY),
where LX = 1 if INCX .GE. 0, else LX = 1+(1-N)*INCX, and LY is defined in a similar way using INCY. (yes, that LX/LY thing is doing the "start from the other end when the stride is negative" dance πΊ it's iconic, it ate)
π Parameters
NβNisINTEGER, and it's the number of elements in the input vector(s). slay.SXβSXisREAL array, dimension(N), a single precision vector withNelements. she's single and ready to mingle πINCXβINCXisINTEGER, the storage spacing between elements ofSX. the stride, bestie, it's the stride.SYβSYisREAL array, dimension(N), another single precision vector withNelements. matching set πINCYβINCYisINTEGER, the storage spacing between elements ofSY. same vibe, different axis.
β Returns
DSDOTβDSDOTisDOUBLE PRECISION.DSDOTis the double precision dot product (zero ifN.LE.0β yeah, if there's nothing to multiply she just hands you a0and moves on, honestly same π)
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
(that's four whole institutions on one lil function, main character energy fr fr)
π Further Details:
(this section is empty in the original β nothing but vibes and silence π€«)
π§ References:
C. L. Lawson, R. J. Hanson, D. R. Kincaid and F. T.
Krogh, Basic linear algebra subprograms for Fortran
usage, Algorithm No. 539, Transactions on Mathematical
Software 5, 3 (September 1979), pp. 308-323.
REVISION HISTORY (YYMMDD)
791001 DATE WRITTEN
890831 Modified array declarations. (WRB)
890831 REVISION DATE from Version 3.2
891214 Prologue converted to Version 4.0 format. (BAB)
920310 Corrected definition of LX in DESCRIPTION. (WRB)
920501 Reformatted the REFERENCES section. (WRB)
070118 Reformat to LAPACK style (JL)
look at that glow-up timeline π 1979 to 2007, she's been reinvented more times than my playlist. periodt.
Definition at line 118 of file dsdot.f.
π«Ά Author
generated automatically by Doxygen for LAPACK from the source code. (so if you're mad about the formatting, blame the robot, not me π)
and that's the whole page bestie, hope the vibe check passed β¨ stay slaying, stay strided, and remember: extended precision accumulation is self care πΈ
Version 3.12.0 β Tue Nov 28 2023 12:08:41 β BLAS/SRC/dsdot.f(3) πππ¦
π¦ 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