SSBMV/DSBMV/CHBMV/ZHBMV |
Name SSBMV/DSBMV/CHBMV/ZHBMV
Purpose These subprograms compute the
y ← aAx + βy.
The structure of A is indicated by the name of the subprogram used:
SSBMV | or | DSBMV | A is a real symmetric band matrix |
CHBMV | or | ZHBMV | A is a complex Hermitian band matrix |
A symmetric or Hermitian band matrix is a symmetric or Hermitian matrix whose nonzero elements all are on, or fairly near, the principal diagonal. Specifically, aij ≠ 0 only if i−j ≤ kd for some integer kd, called the half
bandwidth.
Refer to “F_SSBMV/F_DSBMV/F_CSBMV/F_ZSBMV” on page 378 and
“F_CHBMV/F_ZHBMV” on page 340 for a description of the equivalent BLAS Standard subprograms.
Matrix Because it is not necessary to store or operate on the zeros outside the band of
Storage A, and because either triangle of A can be obtained from the other, you only need to provide the band within one triangle of A. Compared to storing the entire matrix, this can save memory in two ways: Only the elements within the band are stored and of them only the upper or the lower triangle.
The following examples illustrate the storage of symmetric band matrices. Consider the following matrix A of order n = 7 and half bandwidth kd = 2:
11 | 12 | 13 | 0 | 0 | 0 | 0 |
12 | 22 | 23 | 24 | 0 | 0 | 0 |
13 | 23 | 33 | 34 | 35 | 0 | 0 |
0 | 24 | 34 | 44 | 45 | 46 | 0 |
0 | 0 | 35 | 45 | 55 | 56 | 57 |
0 | 0 | 0 | 46 | 56 | 66 | 67 |
0 | 0 | 0 | 0 | 57 | 67 | 77 |
244HP MLIB User’s Guide