Variable block row format triangular solve

SVBRSM/DVBRSM/CVBRSM/ZVBRSM

 

SUBROUTINE

ZVBRSM

 

INTEGER*8

transa, mb, n, unitd, blda, ldb, ldc, lwork

 

INTEGER*8

descra(*), indx(*), bindx(*), rpntr(*), cpntr(*),

 

 

bpntrb(*), bpntre(*)

 

COMPLEX*16

alpha, beta

 

COMPLEX*16

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL ZVBRSM (transa, mb, n, unitd, dv, alpha, descra, val, indx, bindx,

 

rpntr, cpntr, bpntrb, bpntre, b, ldb, beta, c, ldc, work, lwork)

Input

transa

Indicates how to operate with the sparse matrix.

 

 

0: Operate with matrix

 

 

1: Operate with transpose matrix

 

 

2: Operate with conjugate-transpose matrix

 

mb

Number of block rows in matrix A.

 

n

Number of columns in matrix C.

 

unitd

Type of scaling.

 

 

1. Identity matrix (argument dv( ) is ignored)

 

 

2. Scale on left (row scaling)

 

 

3. Scale on right (column scaling)

 

dv( )

Diagonal scaling array of length lb*lb*mb.

 

alpha

Scalar parameter.

 

descra( )

 

 

 

Descriptor argument. Five element integer array.

 

descra(1)

Matrix structure.

 

 

0: General

 

 

1: Symmetric

 

 

2: Hermitian

 

 

3: Triangular

 

 

4: Skew (Anti)-Symmetric

 

 

5: Diagonal

 

descra(2)

Upper/Lower triangular indicator.

 

 

1: Lower

 

 

2: Upper

Chapter 4 Sparse BLAS Operations 535