BLAS/SRC/dsymm.f(3)
π BLAS/SRC/dsymm.f β like, the LAPACK manual page but make it make sense π
okay bestie, gather round, because today we're decoding BLAS/SRC/dsymm.f β a whole LAPACK moment, and honestly? it's giving linear algebra main character energy β¨
β¨ NAME β¨
BLAS/SRC/dsymm.f β no cap, that's literally the whole name. short, iconic, to the point π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine dsymm (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc)- and the subroutine is called DSYMM, yes queen, say it with your chest π
π¦ Function/Subroutine Documentation π¦
subroutine dsymm (character side, character uplo, integer m, integer n,
double precision alpha, double precision, dimension(lda,*) a, integer
lda, double precision, dimension(ldb,*) b, integer ldb, double precision
beta, double precision, dimension(ldc,*) c, integer ldc)
DSYMM π« (this is the whole personality of the file, fr fr)
π Purpose:
so the tea is: DSYMM performs one of the matrix-matrix operations
C := alpha*A*B + beta*C,
or
C := alpha*B*A + beta*C,
where alpha and beta are scalars, A is a symmetric matrix and B and C are m by n matrices. lowkey that's the whole vibe π«Ά
π Parameters
SIDEβSIDEisCHARACTER*1. On entry,SIDEspecifies whether the symmetric matrixAappears on the left or right in the operation, like so:SIDE = 'L' or 'l'βC := alpha*A*B + beta*C,SIDE = 'R' or 'r'βC := alpha*B*A + beta*C,
UPLOβUPLOisCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the symmetric matrixAis to be referenced, as follows:UPLO = 'U' or 'u'β Only the upper triangular part of the symmetric matrix is to be referenced.UPLO = 'L' or 'l'β Only the lower triangular part of the symmetric matrix is to be referenced.
MβMisINTEGER. On entry,Mspecifies the number of rows of the matrixC.Mmust be at least zero. (zero is allowed, she's generous like that π)NβNisINTEGER. On entry,Nspecifies the number of columns of the matrixC.Nmust be at least zero.ALPHAβALPHAisDOUBLE PRECISION.On entry,ALPHAspecifies the scalaralpha. just a lil scalar, doing her thing πΈAβAisDOUBLE PRECISION array, dimension ( LDA, ka ), where ka is m when SIDE = 'L' or 'l' and is n otherwise.- Before entry with
SIDE = 'L' or 'l', thembympart of the arrayAmust contain the symmetric matrix, such that whenUPLO = 'U' or 'u', the leadingmbymupper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix and the strictly lower triangular part ofAis not referenced, and whenUPLO = 'L' or 'l', the leadingmbymlower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix and the strictly upper triangular part ofAis not referenced. - Before entry with
SIDE = 'R' or 'r', thenbynpart of the arrayAmust contain the symmetric matrix, such that whenUPLO = 'U' or 'u', the leadingnbynupper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix and the strictly lower triangular part ofAis not referenced, and whenUPLO = 'L' or 'l', the leadingnbynlower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix and the strictly upper triangular part ofAis not referenced. - > bestie the "not referenced" parts are not referenced. do not touch them. they are not your business π
- Before entry with
LDAβLDAisINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program. WhenSIDE = 'L' or 'l'thenLDAmust be at leastmax( 1, m ), otherwiseLDAmust be at leastmax( 1, n ).BβBisDOUBLE PRECISION array, dimension ( LDB, N ). Before entry, the leadingmbynpart of the arrayBmust contain the matrixB.LDBβLDBisINTEGER. On entry,LDBspecifies the first dimension ofBas declared in the calling (sub) program.LDBmust be at leastmax( 1, m ).BETAβBETAisDOUBLE PRECISION.On entry,BETAspecifies the scalarbeta. WhenBETAis supplied as zero thenCneed not be set on input. (free pass, we love to see it π)CβCisDOUBLE PRECISION array, dimension ( LDC, N ). Before entry, the leadingmbynpart of the arrayCmust contain the matrixC, except whenbetais zero, in which caseCneed not be set on entry. On exit, the arrayCis overwritten by thembynupdated matrix. π₯LDCβLDCisINTEGER. On entry,LDCspecifies the first dimension ofCas declared in the calling (sub) program.LDCmust be at leastmax( 1, m ).
π« Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad, periodt π«Ά
π Further Details:
- Level 3 Blas routine.
-- Written on 8-February-1989.- Jack Dongarra, Argonne National Laboratory.
- Iain Duff, AERE Harwell.
- Jeremy Du Croz, Numerical Algorithms Group Ltd.
- Sven Hammarling, Numerical Algorithms Group Ltd.
1989?? and still serving looks. legends only π
Definition at line 188 of file dsymm.f. (line 188, mark it, bestie β)
π§ Author π§
Generated automatically by Doxygen for LAPACK from the source code. yes, a robot wrote this and honestly it ate π
and that's the whole page!! mwah π
Version 3.12.0 Β· Tue Nov 28 2023 12:08:41 Β· and we were all in the BLAS/SRC/dsymm.f(3) section together the whole time πΈβ¨ go forth and multiply your matrices, bestie π¦
π¦ 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