# lagtm - Man Page

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 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.
subroutine dlagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, 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.
subroutine slagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, 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.
subroutine zlagtm (trans, n, nrhs, alpha, dl, d, du, x, ldx, beta, b, 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.

## Function Documentation

### 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.

Purpose:

``` CLAGTM performs a matrix-matrix product of the form

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 REAL
The scalar alpha.  ALPHA must be 0., 1., or -1.; otherwise,
it is assumed to be 0.```

DL

```          DL is COMPLEX array, dimension (N-1)
The (n-1) sub-diagonal elements of T.```

D

```          D is COMPLEX array, dimension (N)
The diagonal elements of T.```

DU

```          DU is COMPLEX array, dimension (N-1)
The (n-1) super-diagonal elements of T.```

X

```          X is COMPLEX 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 REAL
The scalar beta.  BETA must be 0., 1., or -1.; otherwise,
it is assumed to be 1.```

B

```          B is COMPLEX array, dimension (LDB,NRHS)
On entry, the N by NRHS matrix B.
On exit, B is overwritten by the matrix expression
B := alpha * A * X + beta * B.```

LDB

```          LDB is INTEGER
The leading dimension of the array B.  LDB >= max(N,1).```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 143 of file clagtm.f.

### 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.

Purpose:

``` DLAGTM performs a matrix-matrix product of the form

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'* X + beta * B
= 'C':  Conjugate transpose = Transpose```

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 DOUBLE PRECISION array, dimension (N-1)
The (n-1) sub-diagonal elements of T.```

D

```          D is DOUBLE PRECISION array, dimension (N)
The diagonal elements of T.```

DU

```          DU is DOUBLE PRECISION array, dimension (N-1)
The (n-1) super-diagonal elements of T.```

X

```          X is DOUBLE PRECISION 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 DOUBLE PRECISION array, dimension (LDB,NRHS)
On entry, the N by NRHS matrix B.
On exit, B is overwritten by the matrix expression
B := alpha * A * X + beta * B.```

LDB

```          LDB is INTEGER
The leading dimension of the array B.  LDB >= max(N,1).```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 143 of file dlagtm.f.

### 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.

Purpose:

``` SLAGTM performs a matrix-matrix product of the form

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'* X + beta * B
= 'C':  Conjugate transpose = Transpose```

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 REAL
The scalar alpha.  ALPHA must be 0., 1., or -1.; otherwise,
it is assumed to be 0.```

DL

```          DL is REAL array, dimension (N-1)
The (n-1) sub-diagonal elements of T.```

D

```          D is REAL array, dimension (N)
The diagonal elements of T.```

DU

```          DU is REAL array, dimension (N-1)
The (n-1) super-diagonal elements of T.```

X

```          X is REAL 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 REAL
The scalar beta.  BETA must be 0., 1., or -1.; otherwise,
it is assumed to be 1.```

B

```          B is REAL array, dimension (LDB,NRHS)
On entry, the N by NRHS matrix B.
On exit, B is overwritten by the matrix expression
B := alpha * A * X + beta * B.```

LDB

```          LDB is INTEGER
The leading dimension of the array B.  LDB >= max(N,1).```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 143 of file slagtm.f.

### 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.

Purpose:

``` ZLAGTM performs a matrix-matrix product of the form

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 expression
B := alpha * A * X + beta * B.```

LDB

```          LDB is INTEGER
The leading dimension of the array B.  LDB >= max(N,1).```
Author

Univ. of Tennessee

Univ. of California Berkeley