Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?dttrsb

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

Syntax

call sdttrsb( trans, n, nrhs, dl, d, du, b, ldb, info )

call ddttrsb( trans, n, nrhs, dl, d, du, b, ldb, info )

call cdttrsb( trans, n, nrhs, dl, d, du, b, ldb, info )

call zdttrsb( trans, n, nrhs, dl, d, du, b, ldb, info )

call dttrsb( dl, d, du, b [, trans] [, info] )

Include Files

  • mkl.fi, lapack.f90

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

CHARACTER*1. 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

INTEGER. The order of A; n 0.

nrhs

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

dl, d, du, b

REAL for sdttrsb

DOUBLE PRECISION for ddttrsb

COMPLEX for cdttrsb

DOUBLE COMPLEX for zdttrsb.

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

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.

The array b contains the matrix B whose columns are the right-hand sides for the systems of equations.

ldb

INTEGER. The leading dimension of b; ldb max(1, n).

Output Parameters

b

Overwritten by the solution matrix X.

info

INTEGER. If info = 0, the execution is successful.

If info = -i, the i-th parameter had an illegal value.