Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 12/16/2022
Public

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

Document Table of Contents

?la_gbrcond

Estimates the Skeel condition number for a general banded matrix.

Syntax

call sla_gbrcond( trans, n, kl, ku, ab, ldab, afb, ldafb, ipiv, cmode, c, info, work, iwork )

call dla_gbrcond( trans, n, kl, ku, ab, ldab, afb, ldafb, ipiv, cmode, c, info, work, iwork )

Include Files
  • mkl.fi
Description

The function estimates the Skeel condition number of

op(A) * op2(C)

where

the cmode parameter determines op2 as follows:

cmode Value

op2(C)

1

C

0

I

-1

inv(C)

The Skeel condition number

cond(A) = norminf(|inv(A)||A|)

is computed by computing scaling factors R such that

diag(R)*A*op2(C)

is row equilibrated and by computing the standard infinity-norm condition number.

Input Parameters
trans

CHARACTER*1. Must be 'N' or 'T' or 'C'.

Specifies the form of the system of equations:

If trans = 'N', the system has the form A*X = B.

If trans = 'T', the system has the form AT*X = B.

If trans = 'C', the system has the form AH*X = B.

n

INTEGER. The number of linear equations, that is, the order of the matrix A; n 0.

kl

INTEGER. The number of subdiagonals within the band of A; kl 0.

ku

INTEGER. The number of superdiagonals within the band of A; ku 0.

ab, afb, c, work

REAL for sla_gbrcond

DOUBLE PRECISION for dla_gbrcond

Arrays:

ab(ldab,*) contains the original band matrix A stored in rows from 1 to kl + ku + 1. The j-th column of A is stored in the j-th column of the array ab as follows:

ab(ku+1+i-j,j) = A(i,j)

for

max(1,j-ku) i min(n,j+kl)

afb(ldafb,*) contains details of the LU factorization of the band matrix A, as returned by ?gbtrf. U is stored as an upper triangular band matrix with kl+ku superdiagonals in rows 1 to kl+ku+1, and the multipliers used during the factorization are stored in rows kl+ku+2 to 2*kl+ku+1.

c, DIMENSIONn. The vector C in the formula op(A) * op2(C).

work is a workspace array of DIMENSION (5*n).

The second dimension of ab and afb must be at least max(1, n).

ldab

INTEGER. The leading dimension of the array ab. ldabkl+ku+1.

ldafb

INTEGER. The leading dimension of afb. ldafb2*kl+ku+1.

ipiv

INTEGER.

Array with DIMENSIONn. The pivot indices from the factorization A = P*L*U as computed by ?gbtrf. Row i of the matrix was interchanged with row ipiv(i).

cmode

INTEGER. Determines op2(C) in the formula op(A) * op2(C) as follows:

If cmode = 1, op2(C) = C.

If cmode = 0, op2(C) = I.

If cmode = -1, op2(C) = inv(C).

iwork

INTEGER. Workspace array with DIMENSIONn.

Output Parameters
info

INTEGER.

If info = 0, the execution is successful.

If i > 0, the i-th parameter is invalid.

See Also