Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?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)
Include Files
mkl_scalapack.h
Description
spttrsv dpttrsv cpttrsv zpttrsv The ?pttrsv routine 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 (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) )
or
A = U^{H}*D*U or A = L*D*L^{H} (computed by cpttrf/zpttrf (Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.) ).
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 uplo = 'L' , 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}*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
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 GUID-C5723D71-924B-49FF-9FD4-9BDE2B3EB682.xml#GUID-C5723D71-924B-49FF-9FD4-9BDE2B3EB682 .
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 GUID-C5723D71-924B-49FF-9FD4-9BDE2B3EB682.xml#GUID-C5723D71-924B-49FF-9FD4-9BDE2B3EB682 . See uplo .
b
COMPLEX array of size ldb by 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.