HP MLIB User's Guide Vol. 1 7th Ed.
294 HP MLIB User’s Guide
STBMV/DTBMV/CTBMV/ZTBMV Matrix-vector multiply
Name STBMV/DTBMV/CTBMV/ZTBMV
Matrix-vector multiply
Purpose Given an n-by-n upper- or lower-triangular band matrix A and an n-vector x,
these subprograms compute the matrix-vector products Ax, A
T
x, and A*x,
where A
T
is the transpose of A, and A* is the conjugate transpose. Specifically,
these subprograms compute matrix-vector products of the forms
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, a
ij
≠ 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 a
ij
≠ 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
Storage
Triangular band matrices are stored in a compressed form that takes
advantage of knowing the positions of the only elements that can be nonzero.
The following examples illustrate the storage of triangular band matrices.
xAx← x, A
T
x← and xA*x.←,