lagtm(3)
๐ NAME ๐
okay so this is lagtm(3) from the Library Functions Manual โ part 1 of 2, bestie, and we are so back. It's the tridiagonal matrix-matrix multiply page, and it's giving precision-squad energy: four subroutines, same core vibe, different types. No cap. ๐
lagtm - lagtm: tridiagonal matrix-matrix multiply.
โจ SYNOPSIS โจ
๐ Functions ๐
subroutine clagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, ldb)โ CLAGTM performs a matrix-matrix product of the formC = ฮฑAB+ฮฒC, whereAis a tridiagonal matrix,BandCare rectangular matrices, andฮฑandฮฒare scalars, which may be0,1, or-1. ๐subroutine dlagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, ldb)โ DLAGTM performs a matrix-matrix product of the formC = ฮฑAB+ฮฒC, whereAis a tridiagonal matrix,BandCare rectangular matrices, andฮฑandฮฒare scalars, which may be0,1, or-1. โจsubroutine slagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, ldb)โ SLAGTM performs a matrix-matrix product of the formC = ฮฑAB+ฮฒC, whereAis a tridiagonal matrix,BandCare rectangular matrices, andฮฑandฮฒare scalars, which may be0,1, or-1. ๐subroutine zlagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, ldb)โ ZLAGTM performs a matrix-matrix product of the formC = ฮฑAB+ฮฒC, whereAis a tridiagonal matrix,BandCare rectangular matrices, andฮฑandฮฒare scalars, which may be0,1, or-1. ๐ฆ
๐ฆ Detailed Description ๐ฆ
okay so this section is giving โheading onlyโ energy in the source โ no extra prose before the function docs, so we're keeping it cute and moving right along. ๐ธ
๐ Function Documentation ๐
the source wraps the purpose and parameter text in !> Fortran doc-comment confetti; the facts below are all the tea โ
๐ง clagtm โ complex-precision bestie
subroutine clagtm (character trans, integer n, integer nrhs, real alpha,
complex, dimension( * ) dl, complex, dimension( * ) d, complex,
dimension( * ) du, complex, dimension( ldx, * ) x, integer ldx, real
beta, complex, dimension( ldb, * ) b, integer ldb)
CLAGTM performs a matrix-matrix product of the form C = ฮฑAB+ฮฒC, where A is a tridiagonal matrix, B and C are rectangular matrices, and ฮฑ and ฮฒ are scalars, which may be 0, 1, or -1. Slay. ๐
โจ Purpose โจ
okay so it literally does:
B := alpha * A * X + beta * B
where A is a tridiagonal matrix of order N, B and X are N by NRHS matrices, and alpha and beta are real scalars, each of which may be 0., 1., or -1. periodt. ๐
๐ Parameters ๐
TRANSโTRANS is CHARACTER*1. Specifies the operation applied toA.= 'N':No transpose,B := alpha * A * X + beta * B= 'T':Transpose,B := alpha * A**T * X + beta * B= 'C':Conjugate transpose,B := alpha * A**H * X + beta * B
NโN is INTEGER. The order of the matrixA.N >= 0.NRHSโNRHS is INTEGER. The number of right hand sides, i.e., the number of columns of the matricesXandB.ALPHAโALPHA is REAL. The scalar alpha.ALPHAmust be0.,1., or-1.; otherwise, it is assumed to be0.DLโDL is COMPLEX array, dimension (N-1). The(n-1)sub-diagonal elements ofT.DโD is COMPLEX array, dimension (N). The diagonal elements ofT.DUโDU is COMPLEX array, dimension (N-1). The(n-1)super-diagonal elements ofT.XโX is COMPLEX array, dimension (LDX,NRHS). TheNbyNRHSmatrixX.LDXโLDX is INTEGER. The leading dimension of the arrayX.LDX >= max(N,1).BETAโBETA is REAL. The scalar beta.BETAmust be0.,1., or-1.; otherwise, it is assumed to be1.BโB is COMPLEX array, dimension (LDB,NRHS). On entry, theNbyNRHSmatrixB. On exit,Bis overwritten by the matrix expressionB := alpha * A * X + beta * B.LDBโLDB is INTEGER. The leading dimension of the arrayB.LDB >= max(N,1).
Author: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.
Definition at line 143 of file clagtm.f.
๐ฆ dlagtm โ double-precision icon
subroutine dlagtm (character trans, integer n, integer nrhs, double
precision alpha, double precision, dimension( * ) dl, double precision,
dimension( * ) d, double precision, dimension( * ) du, double precision,
dimension( ldx, * ) x, integer ldx, double precision beta, double
precision, dimension( ldb, * ) b, integer ldb)
DLAGTM performs a matrix-matrix product of the form C = ฮฑAB+ฮฒC, where A is a tridiagonal matrix, B and C are rectangular matrices, and ฮฑ and ฮฒ are scalars, which may be 0, 1, or -1. Obsessed. ๐
โจ Purpose โจ
same iconic formula, double-precision edition:
B := alpha * A * X + beta * B
where A is a tridiagonal matrix of order N, B and X are N by NRHS matrices, and alpha and beta are real scalars, each of which may be 0., 1., or -1. fr fr. ๐ญ
๐ Parameters ๐
TRANSโTRANS is CHARACTER*1. Specifies the operation applied toA.= 'N':No transpose,B := alpha * A * X + beta * B= 'T':Transpose,B := alpha * A'* X + beta * B= 'C':Conjugate transpose = Transpose
NโN is INTEGER. The order of the matrixA.N >= 0.NRHSโNRHS is INTEGER. The number of right hand sides, i.e., the number of columns of the matricesXandB.ALPHAโALPHA is DOUBLE PRECISION. The scalar alpha.ALPHAmust be0.,1., or-1.; otherwise, it is assumed to be0.DLโDL is DOUBLE PRECISION array, dimension (N-1). The(n-1)sub-diagonal elements ofT.DโD is DOUBLE PRECISION array, dimension (N). The diagonal elements ofT.DUโDU is DOUBLE PRECISION array, dimension (N-1). The(n-1)super-diagonal elements ofT.XโX is DOUBLE PRECISION array, dimension (LDX,NRHS). TheNbyNRHSmatrixX.LDXโLDX is INTEGER. The leading dimension of the arrayX.LDX >= max(N,1).BETAโBETA is DOUBLE PRECISION. The scalar beta.BETAmust be0.,1., or-1.; otherwise, it is assumed to be1.BโB is DOUBLE PRECISION array, dimension (LDB,NRHS). On entry, theNbyNRHSmatrixB. On exit,Bis overwritten by the matrix expressionB := alpha * A * X + beta * B.LDBโLDB is INTEGER. The leading dimension of the arrayB.LDB >= max(N,1).
Author: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.
Definition at line 143 of file dlagtm.f.
๐ slagtm โ real-precision sweetie
subroutine slagtm (character trans, integer n, integer nrhs, real alpha,
real, dimension( * ) dl, real, dimension( * ) d, real, dimension( * )
du, real, dimension( ldx, * ) x, integer ldx, real beta, real,
dimension( ldb, * ) b, integer ldb)
SLAGTM performs a matrix-matrix product of the form C = ฮฑAB+ฮฒC, where A is a tridiagonal matrix, B and C are rectangular matrices, and ฮฑ and ฮฒ are scalars, which may be 0, 1, or -1. It's giving main character energy. ๐๐ฅ
โจ Purpose โจ
and it's doing the exact same product vibe, real-precision style:
B := alpha * A * X + beta * B
where A is a tridiagonal matrix of order N, B and X are N by NRHS matrices, and alpha and beta are real scalars, each of which may be 0., 1., or -1. no notes. ๐
๐ Parameters ๐
TRANSโTRANS is CHARACTER*1. Specifies the operation applied toA.= 'N':No transpose,B := alpha * A * X + beta * B= 'T':Transpose,B := alpha * A'* X + beta * B= 'C':Conjugate transpose = Transpose
NโN is INTEGER. The order of the matrixA.N >= 0.NRHSโNRHS is INTEGER. The number of right hand sides, i.e., the number of columns of the matricesXandB.ALPHAโALPHA is REAL. The scalar alpha.ALPHAmust be0.,1., or-1.; otherwise, it is assumed to be0.DLโDL is REAL array, dimension (N-1). The(n-1)sub-diagonal elements ofT.DโD is REAL array, dimension (N). The diagonal elements ofT.DUโDU is REAL array, dimension (N-1). The(n-1)super-diagonal elements ofT.XโX is REAL array, dimension (LDX,NRHS). TheNbyNRHSmatrixX.LDXโLDX is INTEGER. The leading dimension of the arrayX.LDX >= max(N,1).BETAโBETA is REAL. The scalar beta.BETAmust be0.,1., or-1.; otherwise, it is assumed to be1.BโB is REAL array, dimension (LDB,NRHS). On entry, theNbyNRHSmatrixB. On exit,Bis overwritten by the matrix expressionB := alpha * A * X + beta * B.LDBโLDB is INTEGER. The leading dimension of the arrayB.LDB >= max(N,1).
Author: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.
Definition at line 143 of file slagtm.f.
part 2 is loading with the zlagtm receipts โ don't touch that dial, bestie ๐๐ซถ
okay so we already got the intro out of the way โ now itโs time for the actual zlagtm glow-up โจ this is the subroutine that does the tridiagonal matrix-matrix product, and honestly? it ate ๐
subroutine zlagtm (character trans, integer n, integer nrhs, double
precision alpha, complex*16, dimension( * ) dl, complex*16, dimension( *
) d, complex*16, dimension( * ) du, complex*16, dimension( ldx, * ) x,
integer ldx, double precision beta, complex*16, dimension( ldb, * ) b,
integer ldb)
ZLAGTM performs a matrix-matrix product of the form C = ฮฑAB+ฮฒC, where A is a tridiagonal matrix, B and C are rectangular matrices, and ฮฑ and ฮฒ are scalars, which may be 0, 1, or -1. no cap, thatโs the whole vibe ๐ซถ
Purpose โ the actual math baddie ๐งฎ
okay so the purpose is literally this:
B := alpha * A * X + beta * B
where A is a tridiagonal matrix of order N, B and X are N by NRHS matrices, and alpha and beta are real scalars, each of which may be 0., 1., or -1. ๐
Parameters ๐ซถ
TRANSโTRANS is CHARACTER*1. Specifies the operation applied to A.= 'N': No transpose,B := alpha * A * X + beta * B= 'T': Transpose,B := alpha * A**T * X + beta * B= 'C': Conjugate transpose,B := alpha * A**H * X + beta * B
NโN is INTEGER. The order of the matrix A.N >= 0.NRHSโNRHS is INTEGER. The number of right hand sides, i.e., the number of columns of the matrices X and B.ALPHAโALPHA is DOUBLE PRECISION. The scalar alpha.ALPHA must be 0., 1., or -1.; otherwise, it is assumed to be 0.DLโDL is COMPLEX*16 array, dimension (N-1). The(n-1)sub-diagonal elements of T.DโD is COMPLEX*16 array, dimension (N). The diagonal elements of T.DUโDU is COMPLEX*16 array, dimension (N-1). The(n-1)super-diagonal elements of T.XโX is COMPLEX*16 array, dimension (LDX,NRHS). The N by NRHS matrix X.LDXโLDX is INTEGER. The leading dimension of the array X.LDX >= max(N,1).BETAโBETA is DOUBLE PRECISION. The scalar beta.BETA must be 0., 1., or -1.; otherwise, it is assumed to be 1.BโB is COMPLEX*16 array, dimension (LDB,NRHS). On entry, the N by NRHS matrix B. On exit, B is overwritten by the matrix expressionB := alpha * A * X + beta * B.LDBโLDB is INTEGER. The leading dimension of the array B.LDB >= max(N,1).
โ ๏ธ bestie, please clock this: ifALPHAis not0.,1., or-1., it gets assumed to be0.. IfBETAis not0.,1., or-1., it gets assumed to be1.and B is very much overwritten on exit. not a drill ๐
Author ๐
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 143 of file zlagtm.f.
Author (the automated one) ๐ค
Generated automatically by Doxygen for LAPACK from the source code.
and thatโs the whole page, bestie โ LAPACK Version 3.12.0, lagtm(3), out ๐
โจ๐
๐ฆ 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