?pttrsv
?pttrsv
Solves a symmetric (Hermitian) positive-definite tridiagonal system of linear equations, using the L*D*L factorization computed by
H
?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
L*X
= B
or
L*X
= B
L
H
*X
= B
U*X
= B
U
H
*X
= B
where
L
(or U
for complex flavors) is the Cholesky factor of a Hermitian positive-definite tridiagonal matrix A
such thatA
= L*D*L
H
spttrf/dpttrf
) or
Input Parameters
- uplo
- Must be'U'or'L'.Specifies whether the superdiagonal or the subdiagonal of the tridiagonal matrixAis stored and the form of the factorization:If,uplo='U'eis the superdiagonal ofU, and;orA=UH*D*UA=L*D*LHif ,eis the subdiagonal ofL, and.A=L*D*LHThe two forms are equivalent, ifAis real.
- trans
- Specifies the form of the system of equations:for real flavors:if:trans='N'(no transpose)L*X=Bif:trans='T'(transpose)LT*X=Bfor complex flavors:if:trans='N'orU*X=B(no transpose)L*X=Bif:trans='C'orUH*X=B(conjugate transpose).LH*X=B
- n
- The order of the tridiagonal matrixA..n≥0
- nrhs
- The number of right hand sides, that is, the number of columns of the matrixB..nrhs≥0
- d
- array of sizen. Thendiagonal elements of the diagonal matrixDfrom the factorization computed by?pttrf.
- e
- array of size(. The (n-1)n-1) off-diagonal elements of the unit bidiagonal factorUorLfrom the factorization computed by?pttrf. Seeuplo.
- b
- array of sizeldb*nrhs.On entry, the right hand side matrixB.
- ldb
- The leading dimension of the arrayb..ldb≥max(1,n)
Output Parameters
- b
- On exit, the solution matrixX.
- info
- = 0: successful exit< 0: if, theinfo= -ii-th argument had an illegal value.