Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

?la_heamv

Computes a matrix-vector product using a Hermitian indefinite matrix to calculate error bounds.

Syntax

call cla_heamv
(
uplo
,
n
,
alpha
,
a
,
lda
,
x
,
incx
,
beta
,
y
,
incy
)
call zla_heamv
(
uplo
,
n
,
alpha
,
a
,
lda
,
x
,
incx
,
beta
,
y
,
incy
)
Include Files
  • mkl.fi
Description
The
?la_heamv
routines perform a matrix-vector operation defined as
y
:=
alpha
*abs(
A
)*abs(
x
) +
beta
*abs(
y
)
,
where:
alpha
and
beta
are scalars,
x
and
y
are vectors,
A
is an
n
-by-
n
Hermitian matrix.
This function is primarily used in calculating error bounds. To protect against underflow during evaluation, the function perturbs components in the resulting vector away from zero by
(
n
+ 1)
times the underflow threshold. To prevent unnecessarily large errors for block structure embedded in general matrices, the function does not perturb
symbolically
zero components. A zero entry is considered
symbolic
if all multiplications involved in computing that entry have at least one zero multiplicand.
Input Parameters
uplo
CHARACTER*1
.
Specifies whether the upper or lower triangular part of the array A is to be referenced:
If
uplo
=
'BLAS_UPPER'
, only the upper triangular part of A is to be referenced,
If
uplo
=
'BLAS_LOWER'
, only the lower triangular part of A is to be referenced.
n
INTEGER
. Specifies the number of rows and columns of the matrix
A
. The value of
n
must be at least zero.
alpha
REAL
for
cla_heamv
DOUBLE PRECISION
for
zla_heamv
Specifies the scalar
alpha
.
a
COMPLEX
for
cla_heamv
DOUBLE COMPLEX
for
zla_heamv
Array,
DIMENSION
(
lda
,
*
)
. Before entry, the leading
m
-by-
n
part of the array
a
must contain the matrix of coefficients. The second dimension of
a
must be at least
max(1,
n
)
.
lda
INTEGER
. Specifies the leading dimension of
a
as declared in the calling (sub)program. The value of
lda
must be at least
max(1,
n
)
.
x
COMPLEX
for
cla_heamv
DOUBLE COMPLEX
for
zla_heamv
Array,
DIMENSION
at least
(1+(
n
-1)*abs(
incx
))
. Before entry, the incremented array
x
must contain the vector
X
.
incx
INTEGER
. Specifies the increment for the elements of
x
.
The value of
incx
must be non-zero.
beta
REAL
for
cla_heamv
DOUBLE PRECISION
for
zla_heamv
Specifies the scalar
beta
. When
beta
is zero, you do not need to set
y
on input.
y
REAL
for
cla_heamv
DOUBLE PRECISION
for
zla_heamv
Array,
DIMENSION
at least
(1 +(
n
- 1)*abs(
incy
))
otherwise. Before entry with non-zero
beta
, the incremented array
y
must contain the vector
Y
.
incy
INTEGER
. Specifies the increment for the elements of
y
.
The value of
incy
must be non-zero.
Output Parameters
y
Updated vector
Y
.