Developer Reference

  • 0.9
  • 09/09/2020
  • Public Content
Contents

?pttrsv

Solves a symmetric (Hermitian) positive-definite tridiagonal system of linear equations, using the L*D*L
H
factorization computed by
?pttrf
.

Syntax

void
spttrsv
(
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
float
*d
,
float
*e
,
float
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
dpttrsv
(
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
double
*d
,
double
*e
,
double
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
cpttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
float
*d
,
MKL_Complex8
*e
,
MKL_Complex8
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
zpttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
double
*d
,
MKL_Complex16
*e
,
MKL_Complex16
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
Include Files
  • mkl_scalapack.h
Description
The
?pttrsv
function
solves one of the triangular systems:
L
T
*X
=
B
, or
L*X
=
B
for real flavors,
or
L*X
=
B
, or
L
H
*X
=
B
,
U*X
=
B
, or
U
H
*X
=
B
for complex flavors,
where
L
(or
U
for complex flavors) is the Cholesky factor of a Hermitian positive-definite tridiagonal matrix
A
such that
A
=
L*D*L
H
(computed by
spttrf/dpttrf
)
or
A
=
U
H
*D*U
or
A
=
L*D*L
H
(computed by
cpttrf/zpttrf
).
Input Parameters
uplo
Must be
'U'
or
'L'
.
Specifies whether the superdiagonal or the subdiagonal of the tridiagonal matrix
A
is stored and the form of the factorization:
If
uplo
=
'U'
,
e
is the superdiagonal of
U
, and
A
=
U
H
*D*U
or
A
=
L*D*L
H
;
if ,
e
is the subdiagonal of
L
, and
A
=
L*D*L
H
.
The two forms are equivalent, if
A
is real.
trans
Specifies the form of the system of equations:
for real flavors:
if
trans
=
'N'
:
L*X
=
B
(no transpose)
if
trans
=
'T'
:
L
T
*X
=
B
(transpose)
for complex flavors:
if
trans
=
'N'
:
U*X
=
B
or
L*X
=
B
(no transpose)
if
trans
=
'C'
:
U
H
*X
=
B
or
L
H
*X
=
B
(conjugate transpose).
n
The order of the tridiagonal matrix
A
.
n
0
.
nrhs
The number of right hand sides, that is, the number of columns of the matrix
B
.
nrhs
0
.
d
array of size
n
. The
n
diagonal elements of the diagonal matrix
D
from the factorization computed by
?pttrf
.
e
array of size
(
n
-1)
. The (
n
-1) off-diagonal elements of the unit bidiagonal factor
U
or
L
from the factorization computed by
?pttrf
. See
uplo
.
b
array of size
ldb
*
nrhs
.
On entry, the right hand side matrix
B
.
ldb
The leading dimension of the array
b
.
ldb
max(1,
n
)
.
Output Parameters
b
On exit, the solution matrix
X
.
info
= 0
: successful exit
< 0
: if
info
= -
i
, the
i-
th argument had an illegal value.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804