HP MLIB User's Guide Vol. 1 7th Ed.
Chapter 4 Sparse BLAS Operations 433
What you need to know to use these subprograms
This matrix could be represented in BCO format using mb=2, kb=3, and lb=2.
Table 4-17 BCO Format Matrix
BSC - Block compressed sparse column. Given a sparse block matrix A
formed by mb-by-kb square blocks of size lb-by-lb each, the block compressed
sparse column format represents the bnnz nonzero block entries using the same
variables as in the CSC format. Each nonzero dense block is stored in column
major order. Four arrays are required for the BSC representation:
• val( lb, lb, *) - Scalar matrix of dimension lb-by-lb-by-maxnnz containing the
nonzero lb-by-lb blocks, where maxnnz = max(bnnz, bpntre(k)-1).
• bindx(*) - Integer array of length maxnnz containing block column indices
such that bindx(i) corresponds to the block column index of val(:, :, i).
• bpntrb(*) - Integer array of length kb such that bpntrb(j) points to location
val(:, :, j) of the first nonzero block in block column j.
• bpntre(*) - Integer array of length kb such that pntre(j)-1 points to location
val(:, :, j) of the last nonzero block in block column j.
bindx= 1122
bjndx= 1323
val(1:2, 1:2, 1)= 11 12
21 22
val(1:2, 1:2, 2)= 15 16
25 26
val(1:2, 1:2, 3)= 33 0
43 44
val(1:2, 1:2, 4)= 35 36
046