Developer Reference

Contents

?pttrf

Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.

Syntax

lapack_int LAPACKE_spttrf
(
lapack_int
n
,
float*
d
,
float*
e
);
lapack_int LAPACKE_dpttrf
(
lapack_int
n
,
double*
d
,
double*
e
);
lapack_int LAPACKE_cpttrf
(
lapack_int
n
,
float*
d
,
lapack_complex_float*
e
);
lapack_int LAPACKE_zpttrf
(
lapack_int
n
,
double*
d
,
lapack_complex_double*
e
);
Include Files
  • mkl.h
Description
The routine forms the factorization of a symmetric positive-definite or, for complex data, Hermitian positive-definite tridiagonal matrix
A
:
A
=
L*D*L
T
for real flavors, or
A
=
L*D*L
H
for complex flavors,
where
D
is diagonal and
L
is unit lower bidiagonal. The factorization may also be regarded as having the form
A
=
U
T
*D*U
for real flavors, or
A
=
U
H
*D*U
for complex flavors, where
U
is unit upper bidiagonal.
Input Parameters
n
The order of the matrix
A
;
n
0.
d
Array, dimension (
n
). Contains the diagonal elements of
A
.
e
Array, dimension (
n
-1). Contains the subdiagonal elements of
A
.
Output Parameters
d
Overwritten by the
n
diagonal elements of the diagonal matrix
D
from the
L*D*L
T
(for real flavors) or
L*D*L
H
(for complex flavors) factorization of
A
.
e
Overwritten by the
(
n
- 1)
sub-diagonal elements of the unit bidiagonal factor
L
or
U
from the factorization of
A
.
Return Values
This function returns a value
info
.
If
info
= 0
, the execution is successful.
If
info
=
-i
, parameter
i
had an illegal value.
If
info
=
i
, the leading minor of order
i
(and therefore the matrix
A
itself) is not positive-definite; if
i
<
n
, the factorization could not be completed, while if
i
=
n
, the factorization was completed, but
d
[
n
- 1] ≤ 0
.

Product and Performance Information

1

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