Developer Reference

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

?hpev

Computes all eigenvalues and, optionally, eigenvectors of a Hermitian matrix in packed storage.

Syntax

lapack_int LAPACKE_chpev
(
int
matrix_layout
,
char
jobz
,
char
uplo
,
lapack_int
n
,
lapack_complex_float*
ap
,
float*
w
,
lapack_complex_float*
z
,
lapack_int
ldz
);
lapack_int LAPACKE_zhpev
(
int
matrix_layout
,
char
jobz
,
char
uplo
,
lapack_int
n
,
lapack_complex_double*
ap
,
double*
w
,
lapack_complex_double*
z
,
lapack_int
ldz
);
Include Files
  • mkl.h
Description
The routine computes all the eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix
A
in packed storage.
Input Parameters
matrix_layout
Specifies whether matrix storage layout is row major (
LAPACK_ROW_MAJOR
) or column major (
LAPACK_COL_MAJOR
).
jobz
Must be
'N'
or
'V'
.
If
job
=
'N'
, then only eigenvalues are computed.
If
job
=
'V'
, then eigenvalues and eigenvectors are computed.
uplo
Must be
'U'
or
'L'
.
If
uplo
=
'U'
,
ap
stores the packed upper triangular part of
A
.
If
uplo
=
'L'
,
ap
stores the packed lower triangular part of
A
.
n
The order of the matrix
A
(
n
0
).
ap
Array
ap
contains the packed upper or lower triangle of Hermitian matrix A, as specified by
uplo
.
The size of
ap
must be at least max(1,
n
*(
n
+1)/2).
ldz
The leading dimension of the output array
z
.
Constraints:
if
jobz
=
'N'
, then
ldz
1
;
if
jobz
=
'V'
, then
ldz
max(1,
n
) .
Output Parameters
w
Array, size at least max(1,
n
).
If
info
= 0
,
w
contains the eigenvalues of the matrix
A
in ascending order.
z
Array
z
(size at least max(1,
ldz
*
n
))
.
If
jobz
=
'V'
, then if
info
= 0
,
z
contains the orthonormal eigenvectors of the matrix
A
, with the
i
-th column of
z
holding the eigenvector associated with
w
[
i
- 1]
.
If
jobz
=
'N'
, then
z
is not referenced.
ap
On exit, this array is overwritten by the values generated during the reduction to tridiagonal form. The elements of the diagonal and the off-diagonal of the tridiagonal matrix overwrite the corresponding elements of A.
Return Values
This function returns a value
info
.
If
info
=0
, the execution is successful.
If
info
=
-i
, the
i
-th parameter had an illegal value.
If
info
=
i
, then the algorithm failed to converge;
i
indicates the number of elements of an intermediate tridiagonal form which did not converge to zero.

Product and Performance Information

1

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