Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

?dttrf

Computes an LU factorization of a general tridiagonal matrix with no pivoting (local blocked algorithm).

Syntax

void
sdttrf
(
MKL_INT
*n
,
float
*dl
,
float
*d
,
float
*du
,
MKL_INT
*info
);
void
ddttrf
(
MKL_INT
*n
,
double
*dl
,
double
*d
,
double
*du
,
MKL_INT
*info
);
void
cdttrf
(
MKL_INT
*n
,
MKL_Complex8
*dl
,
MKL_Complex8
*d
,
MKL_Complex8
*du
,
MKL_INT
*info
);
void
zdttrf
(
MKL_INT
*n
,
MKL_Complex16
*dl
,
MKL_Complex16
*d
,
MKL_Complex16
*du
,
MKL_INT
*info
);
Include Files
  • mkl_scalapack.h
Description
The
?dttrf
function
computes an
LU
factorization of a real or complex tridiagonal matrix
A
using elimination without partial pivoting.
The factorization has the form
A
=
L*U
, where
L
is a product of unit lower bidiagonal matrices and
U
is upper triangular with nonzeros only in the main diagonal and first superdiagonal.
Input Parameters
n
The order of the matrix
A
(
n
0)
.
dl
,
d
,
du
Arrays containing elements of
A
.
The array
dl
of size
(
n
-1)
contains the sub-diagonal elements of
A
.
The array
d
of size
n
contains the diagonal elements of
A
.
The array
du
of size
(
n
-1)
contains the super-diagonal elements of
A
.
Output Parameters
dl
Overwritten by the
(
n
-1)
multipliers that define the matrix
L
from the
LU
factorization of
A
.
d
Overwritten by the
n
diagonal elements of the upper triangular matrix
U
from the
LU
factorization of
A
.
du
Overwritten by the
(
n
-1)
elements of the first super-diagonal of
U
.
info
= 0: successful exit
< 0: if
info
= -
i
, the
i
-th argument had an illegal value,
> 0: if
info
=
i
,
the matrix element
U
(
i
,
i
)
is exactly 0. The factorization has been completed, but the factor
U
is exactly singular. Division by 0 will occur if you use the factor
U
for solving a system of linear equations.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.