Developer Reference for Intel® oneAPI Math Kernel Library for C
?laghe
Generates a complex Hermitian matrix .
Syntax
lapack_intLAPACKE_claghe ( intmatrix_layout , lapack_intn , lapack_intk , constfloat*d , lapack_complex_float*a , lapack_intlda , lapack_int*iseed );
lapack_intLAPACKE_zlaghe ( intmatrix_layout , lapack_intn , lapack_intk , constdouble*d , lapack_complex_double*a , lapack_intlda , lapack_int*iseed );
Include Files
mkl.h
Description
claghe zlaghe
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 matrix A ( n≥ 0 ).
k
The number of nonzero subdiagonals within the band of A ( 0 ≤k≤n-1) .
- d
-
COMPLEX for claghe DOUBLE COMPLEX for zlaghe . The array d with the dimension of ( n ) contains the diagonal elements of the diagonal matrix D .
lda
The leading dimension of the array a ( lda≥n ).
iseed
The array iseed with the dimension of 4 contains the seed of the random number generator. The elements must be between 0 and 4095 and iseed(4)[3] must be odd.
Output Parameters
- a
-
COMPLEX for claghe DOUBLE COMPLEX for zlaghe .
The array a of size at least max (1, lda * n ) contains the generated n -by- n Hermitian matrix D .
- iseed
-
The array iseed contains the updated seed on exit.
Return Values
This function returns a value info .
If info = 0 , the execution is successful.
If info < 0 , the i -th parameter had an illegal value.
If info = -1011 , memory allocation error occurred.