Developer Reference

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

?dttrsv

Solves a general tridiagonal system of linear equations using the LU factorization computed by
?dttrf
.

Syntax

void
sdttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
float
*dl
,
float
*d
,
float
*du
,
float
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
ddttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
double
*dl
,
double
*d
,
double
*du
,
double
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
cdttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
MKL_Complex8
*dl
,
MKL_Complex8
*d
,
MKL_Complex8
*du
,
MKL_Complex8
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
void
zdttrsv
(
char
*uplo
,
char
*trans
,
MKL_INT
*n
,
MKL_INT
*nrhs
,
MKL_Complex16
*dl
,
MKL_Complex16
*d
,
MKL_Complex16
*du
,
MKL_Complex16
*b
,
MKL_INT
*ldb
,
MKL_INT
*info
);
Include Files
  • mkl_scalapack.h
Description
The
?dttrsv
function
solves one of the following systems of linear equations:
L*X
=
B
,
L
T
*X
=
B
, or
L
H
*X
=
B
,
U*X
=
B
,
U
T
*X
=
B
, or
U
H
*X
=
B
with factors of the tridiagonal matrix
A
from the
LU
factorization computed by
?dttrf
.
Input Parameters
uplo
Specifies whether to solve with
L
or
U
.
trans
Must be
'N'
or
'T'
or
'C'
.
Indicates the form of the equations:
If
trans
=
'N'
, then
A
*
X
=
B
is solved for
X
(no transpose).
If
trans
=
'T'
, then
A
T
*
X
=
B
is solved for
X
(transpose).
If
trans
=
'C'
, then
A
H
*
X
=
B
is solved for
X
(conjugate transpose).
n
The order of the matrix
A
(
n
0)
.
nrhs
The number of right-hand sides, that is, the number of columns in the matrix
B
(
nrhs
0)
.
dl
,
d
,
du
,
b
The array
dl
of size (
n
- 1) contains the (
n
- 1) multipliers that define the matrix
L
from the
LU
factorization of
A
.
The array
d
of size
n
contains
n
diagonal elements of the upper triangular matrix
U
from the
LU
factorization of
A
.
The array
du
of size (
n
- 1) contains the (
n
- 1) elements of the first super-diagonal of
U
.
On entry, the array
b
of size
ldb
*
nrhs
contains the right-hand side of matrix
B
.
ldb
The leading dimension of the array
b
;
ldb
max(1,
n
)
.
Output Parameters
b
Overwritten by the solution matrix
X
.
info
If
info
=0
, the execution is successful.
If
info
=
-i
, the
i
-th parameter 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