Visible to Intel only — GUID: GUID-ED5CFCFB-DD13-4AD5-95DA-8AADBAD6F708
Visible to Intel only — GUID: GUID-ED5CFCFB-DD13-4AD5-95DA-8AADBAD6F708
?pttrsv
Solves a symmetric (Hermitian) positive-definite tridiagonal system of linear equations, using the L*D*LH 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 ?pttrsvroutine solves one of the triangular systems:
LT*X = B, or L*X = B for real flavors,
or
L*X = B, or LH*X = B,
U*X = B, or UH*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*LH (computed by spttrf/dpttrf)
or
A = UH*D*U or A = L*D*LH (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 = UH*D*U or A = L*D*LH;
if uplo = 'L', e is the subdiagonal of L, and A = L*D*LH.
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': LT*X = B (transpose)
for complex flavors:
if trans = 'N': U*X = B or L*X = B (no transpose)
if trans = 'C': UH*X = B or LH*X = B (conjugate transpose).
- n
-
INTEGER. The order of the tridiagonal matrix A. n ≥ 0.
- nrhs
-
INTEGER. The number of right hand sides, that is, the number of columns of the matrix B. nrhs ≥ 0.
- d
-
REAL array of size n. The n diagonal elements of the diagonal matrix D from the factorization computed by ?pttrf.
- e
-
COMPLEX 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
-
COMPLEX array of size ldbby nrhs.
On entry, the right hand side matrix B.
- ldb
-
INTEGER.
The leading dimension of the array b.
ldb ≥ max(1, n).
Output Parameters
- b
-
On exit, the solution matrix X.
- info
-
INTEGER.
= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.