BLAS/SRC/dtrmm.f(3)
β¨ BLAS/SRC/dtrmm.f β¨
ok so bestie, you've stumbled into the LAPACK manual β specifically the BLAS/SRC/dtrmm.f page π (that's the manual name, it lives at the top, i'm just telling you early so you're not confused). this is the DTRMM glow-up page and it's so much less scary than it looks, i promise. π«Ά
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine dtrmm (side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)β literally just DTRMM, that's the whole vibe β¨
π Function/Subroutine Documentation π
subroutine dtrmm (character side, character uplo, character transa, character diag, integer m, integer n, double precision alpha, double precision, dimension(lda,*) a, integer lda, double precision, dimension(ldb,*) b, integer ldb)
DTRMM π
π Purpose:
bestie. DTRMM performs one of the matrix-matrix operations, okay:
B := alpha*op( A )*B, or B := alpha*B*op( A ),
where alpha is a scalar, B is an m by n matrix, A is a unit, or non-unit, upper or lower triangular matrix and op( A ) is one of
op( A ) = A or op( A ) = A**T.
that's it. that's the whole job. triangular matrix times stuff, scaled by alpha. iconic behavior fr π
π Parameters
SIDEβSIDEisCHARACTER*1. On entry,SIDEspecifies whetherop( A )multiplies B from the left or right as follows:SIDE = 'L' or 'l'βB := alpha*op( A )*B.SIDE = 'R' or 'r'βB := alpha*B*op( A ).
UPLOβUPLOisCHARACTER*1. On entry,UPLOspecifies whether the matrix A is an upper or lower triangular matrix as follows:UPLO = 'U' or 'u'β A is an upper triangular matrix.UPLO = 'L' or 'l'β A is a lower triangular matrix.
TRANSAβTRANSAisCHARACTER*1. On entry,TRANSAspecifies the form ofop( A )to be used in the matrix multiplication as follows:TRANSA = 'N' or 'n'βop( A ) = A.TRANSA = 'T' or 't'βop( A ) = A**T.TRANSA = 'C' or 'c'βop( A ) = A**T.
(yes bestie, 'T' and 'C' do the same thing here, that's not a typo, that's canon π«Ά)
MβMisINTEGER. On entry,Mspecifies the number of rows of B.Mmust be at least zero.NβNisINTEGER. On entry,Nspecifies the number of columns of B.Nmust be at least zero.ALPHAβALPHAisDOUBLE PRECISION.On entry,ALPHAspecifies the scalar alpha. When alpha is zero then A is not referenced and B need not be set before entry. (so if you're zeroing it all out, you get a free pass on A, no cap πΈ)Aβ A isDOUBLE PRECISIONarray, dimension( LDA, k ), where k is m whenSIDE = 'L' or 'l'and is n whenSIDE = 'R' or 'r'. Before entry withUPLO = 'U' or 'u', the leading k by k upper triangular part of the array A must contain the upper triangular matrix and the strictly lower triangular part of A is not referenced. Before entry withUPLO = 'L' or 'l', the leading k by k lower triangular part of the array A must contain the lower triangular matrix and the strictly upper triangular part of A is not referenced. Note that whenDIAG = 'U' or 'u', the diagonal elements of A are not referenced either, but are assumed to be unity.LDAβLDAisINTEGER. On entry,LDAspecifies the first dimension of A as declared in the calling (sub) program. WhenSIDE = 'L' or 'l'thenLDAmust be at leastmax( 1, m ), whenSIDE = 'R' or 'r'thenLDAmust be at leastmax( 1, n ).Bβ B isDOUBLE PRECISIONarray, dimension( LDB, N ). Before entry, the leading m by n part of the array B must contain the matrix B, and on exit is overwritten by the transformed matrix. (yeah it gets ate, the original B is gone π that's the whole point tho)LDBβLDBisINTEGER. On entry,LDBspecifies the first dimension of B as declared in the calling (sub) program.LDBmust be at leastmax( 1, m ).
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π¦ 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.
Definition at line 176 of file dtrmm.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
and that's the whole page bestie, you ate it π«Ά this was LAPACK version 3.12.0, dated Tue Nov 28 2023 12:08:41, and it's the BLAS/SRC/dtrmm.f(3) page β go forth and multiply your triangles, mwah π
β¨
π¦ 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