Developer Reference

  • 2020.2
  • 07/15/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

call spttrsv
(
trans
,
n
,
nrhs
,
d
,
e
,
b
,
ldb
,
info
)
call dpttrsv
(
trans
,
n
,
nrhs
,
d
,
e
,
b
,
ldb
,
info
)
call cpttrsv
(
uplo
, trans,
n
,
nrhs
,
d
,
e
,
b
,
ldb
,
info
)
call zpttrsv
(
uplo
, trans,
n
,
nrhs
,
d
,
e
,
b
,
ldb
,
info
)
Description
The
?pttrsv
routine
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
CHARACTER*1
.
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
CHARACTER
.
Specifies the form of the system of equations:
for real flavors:
if
trans
=
'N'
:
L*X
=
B
(no transpose)
if
trans
=
'T'
:
L
T