Solves a system of linear equations with a diagonally dominant tridiagonal coefficient matrix using the LU factorization computed by ?dttrfb.

Syntax

void sdttrsb (const char * trans, const MKL_INT * n, const MKL_INT * nrhs, const float * dl, const float * d, const float * du, float * b, const MKL_INT * ldb, MKL_INT * info );

void ddttrsb (const char * trans, const MKL_INT * n, const MKL_INT * nrhs, const double * dl, const double * d, const double * du, double * b, const MKL_INT * ldb, MKL_INT * info );

void cdttrsb (const char * trans, const MKL_INT * n, const MKL_INT * nrhs, const MKL_Complex8 * dl, const MKL_Complex8 * d, const MKL_Complex8 * du, MKL_Complex8 * b, const MKL_INT * ldb, MKL_INT * info );

void zdttrsb (const char * trans, const MKL_INT * n, const MKL_INT * nrhs, const MKL_Complex16 * dl, const MKL_Complex16 * d, const MKL_Complex16 * du, MKL_Complex16 * b, const MKL_INT * ldb, MKL_INT * info );

Include Files

  • mkl.h

Description

The ?dttrsb routine solves the following systems of linear equations with multiple right hand sides for X:

A*X = B

if trans='N',

AT*X = B

if trans='T',

AH*X = B

if trans='C' (for complex matrices only).

Before calling this routine, call ?dttrfb to compute the factorization of A.

Input Parameters

trans

Must be 'N' or 'T' or 'C'.

Indicates the form of the equations solved for X:

If trans = 'N', then A*X = B.

If trans = 'T', then AT*X = B.

If trans = 'C', then AH*X = B.

n

The order of A; n 0.

nrhs

The number of right-hand sides, that is, the number of columns in B; nrhs 0.

dl, d, du

Arrays: dl(n -1), d(n), du(n -1).

The array dl contains the (n - 1) multipliers that define the matrices L1, L2 from the factorization of A.

The array d contains the n diagonal elements of the upper triangular matrix U from the factorization of A.

The array du contains the (n - 1) elements of the superdiagonal of U.

b

Array of size max(1, ldb*nrhs). Contains the matrix B whose columns are the right-hand sides for the systems of equations.

ldb

The leading dimension of 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.

Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.
Selecione a cor do botão adesivo: 
Orange (only for download buttons)