cblas_?hpmv
cblas_?hpmv
Computes a matrix-vector product using a Hermitian packed matrix.
Syntax
void
cblas_chpmv
(
const
CBLAS_LAYOUT
Layout
,
const
CBLAS_UPLO
uplo
,
const
MKL_INT
n
,
const
void
*alpha
,
const
void
*ap
,
const
void
*x
,
const
MKL_INT
incx
,
const
void
*beta
,
void
*y
,
const
MKL_INT
incy
);
void
cblas_zhpmv
(
const
CBLAS_LAYOUT
Layout
,
const
CBLAS_UPLO
uplo
,
const
MKL_INT
n
,
const
void
*alpha
,
const
void
*ap
,
const
void
*x
,
const
MKL_INT
incx
,
const
void
*beta
,
void
*y
,
const
MKL_INT
incy
);
Include Files
- mkl.h
Description
The
?hpmv
routines perform a matrix-vector operation defined as y := alpha*A*x + beta*y,
where:
alpha
and beta
are scalars,x
and y
are n
-element vectors,A
is an n
-by-n
Hermitian matrix, supplied in packed form.Input Parameters
- Layout
- Specifies whether two-dimensional array storage is row-major (CblasRowMajor) or column-major (CblasColMajor).
- uplo
- Specifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayap.If, then the upper triangular part of the matrixuplo=CblasUpperAis supplied in the packed arrayap.If, then the low triangular part of the matrixuplo=CblasLowerAis supplied in the packed arrayap.
- n
- Specifies the order of the matrixA. The value ofnmust be at least zero.
- alpha
- Specifies the scalaralpha.
- ap
- Array, size at least((.n*(n+ 1))/2)ForLayout=CblasColMajor:Before entry with, the arrayuplo=CblasUpperapmust contain the upper triangular part of the Hermitian matrix packed sequentially, column-by-column, so thatap[0]containsA1, 1,ap[1]andap[2]containA1, 2andA2, 2respectively, and so on. Before entry with, the arrayuplo=CblasLowerapmust contain the lower triangular part of the Hermitian matrix packed sequentially, column-by-column, so thatap[0]containsA1, 1,ap[1]andap[2]containA2, 1andA3, 1respectively, and so on.ForLayout=CblasRowMajor:Before entry withuplo=CblasUpper, the arrayapmust contain the upper triangular part of the Hermitian matrix packed sequentially, row-by-row,ap[0]containsA1, 1,ap[1]andap[2]containA1, 2andA1, 3respectively, and so on. Before entry withuplo=CblasLower, the arrayapmust contain the lower triangular part of the Hermitian matrix packed sequentially, row-by-row, so thatap[0]containsA1, 1,ap[1]andap[2]containA2, 1andA2, 2respectively, and so on.The imaginary parts of the diagonal elements need not be set and are assumed to be zero.
- x
- Array, size at least(1 +(. Before entry, the incremented arrayn- 1)*abs(incx))xmust contain then-element vectorx.
- incx
- Specifies the increment for the elements ofx.The value ofincxmust not be zero.
- beta
- Specifies the scalarbeta.Whenbetais equal to zero thenyneed not be set on input.
- y
- Array, size at least(1 + (. Before entry, the incremented arrayn- 1)*abs(incy))ymust contain then-element vectory.
- incy
- Specifies the increment for the elements ofy.The value ofincymust not be zero.
Output Parameters
- y
- Overwritten by the updated vectory.