?laghe
?laghe
Generates a complex Hermitian matrix
.
Syntax
lapack_int
LAPACKE_claghe
(
int
matrix_layout
,
lapack_int
n
,
lapack_int
k
,
const
float
*
d
,
lapack_complex_float
*
a
,
lapack_int
lda
,
lapack_int
*
iseed
);
lapack_int
LAPACKE_zlaghe
(
int
matrix_layout
,
lapack_int
n
,
lapack_int
k
,
const
double
*
d
,
lapack_complex_double
*
a
,
lapack_int
lda
,
lapack_int
*
iseed
);
Include Files
- mkl.h
Description
The routine generates a complex Hermitian matrix
A
, by pre- and post-
multiplying a real diagonal matrix D
with random unitary matrix:A
:= U
*D
*U
H
The semi-bandwidth may then be
reduced to
k
by additional unitary transformations.
Input Parameters
A
<datatype>
placeholder, if present, is used for the C interface data types in the C interface section above. See
C Interface Conventions
for the C interface principal conventions and type definitions.
- matrix_layout
- Specifies whether matrix storage layout is row major (LAPACK_ROW_MAJOR) or column major (LAPACK_COL_MAJOR).
- n
- The order of the matrixA().n≥0
- k
- The number of nonzero subdiagonals within the band ofA(0.≤k≤n-1)
- d
- The arraydwith the dimension of (n) contains the diagonal elements of the diagonal matrixD.
- lda
- The leading dimension of the arraya().lda≥n
- iseed
- The arrayiseedwith the dimension of 4 contains the seed of the random number generator. The elements must be between 0 and 4095 andiseed[3]must be odd.
Output Parameters
- a
- The arrayaof sizeat least max (1,contains the generatedlda*n)n-by-nHermitian matrixD.
- iseed
- The arrayiseedcontains the updated seed on exit.
Return Values
This function returns a value
info
.If , the execution is successful.
info
= 0If , the
info
< 0i
-th parameter had an illegal value.If , memory allocation error occurred.
info
= -1011