Performs a Hermitian rank-k operation for matrix in RFP format.
FORTRAN 77:
call chfrk(transr, uplo, trans, n, k, alpha, a, lda, beta, c)
call zhfrk(transr, uplo, trans, n, k, alpha, a, lda, beta, c)
C:
lapack_int LAPACKE_chfrk( int matrix_order, char transr, char uplo, char trans, lapack_int n, lapack_int k, float alpha, const lapack_complex_float* a, lapack_int lda, float beta, lapack_complex_float* c );
lapack_int LAPACKE_zhfrk( int matrix_order, char transr, char uplo, char trans, lapack_int n, lapack_int k, double alpha, const lapack_complex_double* a, lapack_int lda, double beta, lapack_complex_double* c );
The FORTRAN 77 interfaces are specified in the mkl_lapack.fi and mkl_lapack.h include files and the C interfaces are specified in the mkl_lapacke.h include file.
The ?hfrk routines perform a matrix-matrix operation using Hermitian matrices. The operation is defined as
C := alpha*A*AH + beta*C,
or
C := alpha*AH*A + beta*C,
where:
alpha and beta are real scalars,
C is an n-by-n Hermitian matrix in RFP format,
A is an n-by-k matrix in the first case and a k-by-n matrix in the second case.
The data types are given for the Fortran interface. 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 defintions.
CHARACTER*1.
if transr = 'N' or 'n', the normal form of RFP C is stored;
if transr = 'C' or 'c', the conjugate-transpose form of RFP C is stored.
CHARACTER*1. Specifies whether the upper or lower triangular part of the array c is used.
If uplo = 'U' or 'u', then the upper triangular part of the array c is used.
If uplo = 'L' or 'l', then the low triangular part of the array c is used.
CHARACTER*1. Specifies the operation:
if trans = 'N' or 'n', then C := alpha*A*AH + beta*C;
if trans = 'C' or 'c', then C := alpha*AH*A + beta*C.
INTEGER. Specifies the order of the matrix C. The value of n must be at least zero.
INTEGER. On entry with trans = 'N' or 'n', k specifies the number of columns of the matrix a, and on entry with trans = 'T' or 't' or 'C' or 'c', k specifies the number of rows of the matrix a.
The value of k must be at least zero.
COMPLEX for chfrk
DOUBLE COMPLEX for zhfrk
Specifies the scalar alpha.
COMPLEX for chfrk
DOUBLE COMPLEX for zhfrk
Array, DIMENSION (lda,ka), where ka is k when trans = 'N' or 'n', and is n otherwise. Before entry with trans = 'N' or 'n', the leading n-by-k part of the array a must contain the matrix A, otherwise the leading k-by-n part of the array a must contain the matrix A.
INTEGER. Specifies the leading dimension of a as declared in the calling (sub)program. When trans = 'N' or 'n', then lda must be at least max(1,n), otherwise lda must be at least max(1, k).
COMPLEX for chfrk
DOUBLE COMPLEX for zhfrk
Specifies the scalar beta.
COMPLEX for chfrk
DOUBLE COMPLEX for zhfrk
Array, DIMENSION (n*(n+1)/2 ). Before entry contains the Hermitian matrix C in in RFP format.
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.