What you need to know to use these subprograms

The matrix in Table 4-17 could be represented in BSC format as:

Table 4-18 BSC Format Matrix

bindx=

1

2

1

2

bpntrb=

1

2

3

 

bpntre=

2

3

5

 

val(1:2, 1:2, 1)=

11

12

 

 

 

21

22

 

 

val(1:2, 1:2, 2)=

33

0

 

 

 

43

44

 

 

val(1:2, 1:2, 3)=

15

16

 

 

 

25

26

 

 

val(1:2, 1:2, 4)=

35

36

 

 

 

0

46

 

 

BMC - Block modified sparse column. The BMC format is a variation of the BSC format obtained by storing the main diagonal of the matrix in a specific array bdiag:

bdiag( lb, lb, *) - Scalar matrix of dimension lb-by-lb-by-dcontaining the main diagonal of A, where d=min( mb, kb) is the number of blocks forming the main diagonal.

BSR - Block compressed sparse row. Given a sparse block matrix A formed by mb-by-kbsquare blocks of size lb-by-lbeach, the block compressed sparse row format represents the bnnz nonzero block entries using the same variables as in the BSR format. Each nonzero dense block is stored in column major order. Four arrays are required for the BSR representation:

val(lb, lb, *) - Scalar matrix of dimension lb-by-lb-by-maxnnzcontaining the nonzero lb-by-lbblocks, where maxnnz = max(bnnz, bpntre(k)-1).

bindx(*) - Integer array of length maxnnz containing block row indices such that bindx(i) corresponds to the block row index of val(:, :, i).

434HP MLIB User’s Guide