STBMV/DTBMV/CTBMV/ZTBMV | Matrix-vector multiply |
Name STBMV/DTBMV/CTBMV/ZTBMV
Matrix-vector multiply
Purpose Given an n-by-nupper- or lower-triangular band matrix A and an n-vector x, these subprograms compute the matrix-vector products Ax, ATx, and A*x,
where AT is the transpose of A, and A* is the conjugate transpose. Specifically, these subprograms compute matrix-vector products of the forms
x ← Ax, x ← AT x, and x ← A*x.
A lower-triangular band matrix is a matrix whose strict upper triangle is zero and whose nonzero lower-triangular elements all are on or fairly near the principal diagonal. Specifically, aij ≠ 0 only if 0 ≤ i−j ≤ kd for some integer kd.
In contrast, an upper-triangular band matrix is a matrix whose strict lower triangle is zero and whose nonzero upper-triangular elements all are on or fairly near the principal diagonal, that is, with aij ≠ 0 only if 0 ≤ j−i ≤ kd.
Refer to “F_STBMV/F_DTBMV/F_CTBMV/F_ZTBMV” on page 397 for a description of the equivalent BLAS Standard subprograms.
Matrix Triangular band matrices are stored in a compressed form that takes
Storage advantage of knowing the positions of the only elements that can be nonzero. The following examples illustrate the storage of triangular band matrices.