Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

cblas_?her2

Performs
a rank-2 update of a Hermitian matrix.

Syntax

void
cblas_cher2
(
const
CBLAS_LAYOUT
Layout
,
const
CBLAS_UPLO
uplo
,
const
MKL_INT
n
,
const
void
*alpha
,
const
void
*x
,
const
MKL_INT
incx
,
const
void
*y
,
const
MKL_INT
incy
,
void
*a
,
const
MKL_INT
lda
);
void
cblas_zher2
(
const
CBLAS_LAYOUT
Layout
,
const
CBLAS_UPLO
uplo
,
const
MKL_INT
n
,
const
void
*alpha
,
const
void
*x
,
const
MKL_INT
incx
,
const
void
*y
,
const
MKL_INT
incy
,
void
*a
,
const
MKL_INT
lda
);
Include Files
  • mkl.h
Description
The
?her2
routines perform a matrix-vector operation defined as
A := alpha *x*conjg(y') + conjg(alpha)*y *conjg(x') + A,
where:
alpha
is scalar,
x
and
y
are
n
-element vectors,
A
is an
n
-by-
n
Hermitian matrix.
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 array
a
is used.
If
uplo
=
CblasUpper
, then the upper triangular of the array
a
is used.
If
uplo
=
CblasLower
, then the low triangular of the array
a
is used.
n
Specifies the order of the matrix
A
. The value of
n
must be at least zero.
alpha
Specifies the scalar
alpha
.
x
Array, size at least
(1 + (
n
- 1)*abs(
incx
))
. Before entry, the incremented array
x
must contain the
n
-element vector
x
.
incx
Specifies the increment for the elements of
x
.
The value of
incx
must not be zero.
y
Array, size at least
(1 + (
n
- 1)*abs(
incy
))
. Before entry, the incremented array
y
must contain the
n
-element vector
y
.
incy
Specifies the increment for the elements of
y
.
The value of
incy
must not be zero.
a
Array, size
lda
*
n
.
Before entry with
uplo
=
CblasUpper
, the leading
n
-by-
n
upper triangular part of the array
a
must contain the upper triangular part of the Hermitian matrix and the strictly lower triangular part of
a
is not referenced.
Before entry with
uplo
=
CblasLower
, the leading
n
-by-
n
lower triangular part of the array
a
must contain the lower triangular part of the Hermitian matrix and the strictly upper triangular part of
a
is not referenced.
The imaginary parts of the diagonal elements need not be set and are assumed to be zero.
lda
Specifies the leading dimension of
a
as declared in the calling (sub)program. The value of
lda
must be at least
max(1,
n
)
.
Output Parameters
a
With
uplo
=
CblasUpper
, the upper triangular part of the array
a
is overwritten by the upper triangular part of the updated matrix.
With
uplo
=
CblasLower
, the lower triangular part of the array
a
is overwritten by the lower triangular part of the updated matrix.
The imaginary parts of the diagonal elements are set to zero.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.