(S|D|C|Z)GBMV¶
Single, double, single complex, and double complex GBMV.
BLAS Interface¶
void sgbmv(const char *TRANS, const qml_long *M, const qml_long *N,
const qml_long *KL, const qml_long *KU, const float *ALPHA,
const float *A, const qml_long *LDA, const float *X,
const qml_long *INCX, const float *BETA, float *Y,
const qml_long *INCY);
void dgbmv(const char *TRANS, const qml_long *M, const qml_long *N,
const qml_long *KL, const qml_long *KU, const double *ALPHA,
const double *A, const qml_long *LDA, const double *X,
const qml_long *INCX, const double *BETA, double *Y,
const qml_long *INCY);
void cgbmv(const char *TRANS, const qml_long *M, const qml_long *N,
const qml_long *KL, const qml_long *KU,
const qml_single_complex *ALPHA, const qml_single_complex *A,
const qml_long *LDA, const qml_single_complex *X,
const qml_long *INCX, const qml_single_complex *BETA,
qml_single_complex *Y, const qml_long *INCY);
void zgbmv(const char *TRANS, const qml_long *M, const qml_long *N,
const qml_long *KL, const qml_long *KU,
const qml_double_complex *ALPHA, const qml_double_complex *A,
const qml_long *LDA, const qml_double_complex *X,
const qml_long *INCX, const qml_double_complex *BETA,
qml_double_complex *Y, const qml_long *INCY);
CBLAS Interface¶
void cblas_sgbmv(const CBLAS_ORDER ORDER, const CBLAS_TRANSPOSE TRANS,
const qml_long M, const qml_long N, const qml_long KL,
const qml_long KU, const float ALPHA, const float *A,
const qml_long LDA, const float *X, const qml_long INCX,
const float BETA, float *Y, const qml_long INCY);
void cblas_dgbmv(const CBLAS_ORDER ORDER, const CBLAS_TRANSPOSE TRANS,
const qml_long M, const qml_long N, const qml_long KL,
const qml_long KU, const double ALPHA, const double *A,
const qml_long LDA, const double *X, const qml_long INCX,
const double BETA, double *Y, const qml_long INCY);
void cblas_cgbmv(const CBLAS_ORDER ORDER, const CBLAS_TRANSPOSE TRANS,
const qml_long M, const qml_long N, const qml_long KL,
const qml_long KU, const qml_single_complex *ALPHA,
const qml_single_complex *A, const qml_long LDA,
const qml_single_complex *X, const qml_long INCX,
const qml_single_complex *BETA, qml_single_complex *Y,
const qml_long INCY);
void cblas_zgbmv(const CBLAS_ORDER ORDER, const CBLAS_TRANSPOSE TRANS,
const qml_long M, const qml_long N, const qml_long KL,
const qml_long KU, const qml_double_complex *ALPHA,
const qml_double_complex *A, const qml_long LDA,
const qml_double_complex *X, const qml_long INCX,
const qml_double_complex *BETA, qml_double_complex *Y,
const qml_long INCY);
Arguments¶
| TRANS | Specifies how to read matrix A |
| Possible values: Non-Transpose, Tranpose, Complex Conjugate Transpose | |
| M | Number of rows of matrix A |
| N | Number of columns of matrix A |
| KL | Number of sub-diagonals of A, with ![]() |
| KU | Number of super-diagonals of A, with ![]() |
| ALPHA | Scalar multiplied with the matrix-vector product |
| A | Input matrix A |
| LDA | Leading dimension of matrix A |
| X | First input vector, must be at least: |
When Non-Tranpose: ![]() |
|
When Tranpose: ![]() |
|
| INCX | Distance between individual elements in X |
| BETA | Scalar multiplied with vector Y |
| Y | Second input vector, must be at least: |
When Non-Transpose: ![]() |
|
When Transpose: ![]() |
|
| INCY | Distance between individual elements in Y |






