Library/ManagedCuda/CudaBlas/CudaBlasHandler.cs
/// <summary>
/// This function performs the Hermitian rank-k update C = alpha * Op(A)*Op(A)^H + beta * C where
/// alpha and beta are scalars, and C is a Hermitian matrix stored in lower or upper mode, and A is a matrix with dimensions op(A) n*k.
/// </summary>
/// <param name="uplo">indicates if matrix A lower or upper part is stored, the other part is not referenced and is inferred from the stored elements.</param>
/// <param name="trans">operation op(A) that is non- or (conj.) transpose.</param>
/// <param name="n">number of columns of matrix op(B) and C.</param>
/// <param name="k">number of columns of op(A) and rows of op(B).</param>
/// <param name="alpha">scalar used for multiplication.</param>
/// <param name="A">array of dimensions lda * k.</param>
/// <param name="lda">leading dimension of two-dimensional array used to store matrix A.</param>
/// <param name="beta">scalar used for multiplication.</param>
/// <param name="C">array of dimensions ldb * n.</param>
/// <param name="ldc">leading dimension of two-dimensional array used to store matrix C.</param>
This function performs the Hermitian rank-k update C = alpha * Op(A)*Op(A)^H + beta * C where
alpha and beta are scalars, and C is a Hermitian matrix stored in lower or upper mode, and A is a matrix with dimensions op(A) n*k.
This function performs the Hermitian rank - k update C = alpha * Op ( A ) * Op ( A ) ^H + beta * C where alpha and beta are scalars and C is a Hermitian matrix stored in lower or upper mode and A is a matrix with dimensions op ( A ) n * k .
public void Herk(FillMode uplo, Operation trans, int n, int k, float alpha, CudaDeviceVariable<cuFloatComplex> A, int lda,
			float beta, CudaDeviceVariable<cuFloatComplex> C, int ldc)
		{
			_status = CudaBlasNativeMethods.cublasCherk_v2(_blasHandle, uplo, trans, n, k, ref alpha, A.DevicePointer, lda, ref beta, C.DevicePointer, ldc);
			Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cublasCherk_v2", _status));
			if (_status != CublasStatus.Success) throw new CudaBlasException(_status);
		}
public void Herk ( FillMode uplo , Operation trans , int n , int k , float alpha , CudaDeviceVariable < cuFloatComplex > A , int lda , float beta , CudaDeviceVariable < cuFloatComplex > C , int ldc ) { _status = CudaBlasNativeMethods . cublasCherk_v2 ( _blasHandle , uplo , trans , n , k , ref alpha , A . DevicePointer , lda , ref beta , C . DevicePointer , ldc ) ; Debug . WriteLine ( String . Format ( " " , DateTime . Now , " " , _status ) ) ; if ( _status != CublasStatus . Success ) throw new CudaBlasException ( _status ) ; }
This function performs the Hermitian rank-k update C = alpha * Op(A)*Op(A)^H + beta * C where
alpha and beta are scalars, and C is a Hermitian matrix stored in lower or upper mode, and A is a matrix with dimensions op(A) n*k.
This function performs the Hermitian rank - k update C = alpha * Op ( A ) * Op ( A ) ^H + beta * C where alpha and beta are scalars and C is a Hermitian matrix stored in lower or upper mode and A is a matrix with dimensions op ( A ) n * k .
uplo
FillMode
indicates if matrix A lower or upper part is stored, the other part is not referenced and is inferred from the stored elements.
indicates if matrix A lower or upper part is stored the other part is not referenced and is inferred from the stored elements .
trans
Operation
operation op(A) that is non- or (conj.) transpose.
operation op ( A ) that is non - or ( conj . ) transpose .
n
int
number of columns of matrix op(B) and C.
number of columns of matrix op ( B ) and C .
k
int
number of columns of op(A) and rows of op(B).
number of columns of op ( A ) and rows of op ( B ) .
alpha
float
scalar used for multiplication.
scalar used for multiplication .
A
CudaDeviceVariable<cuFloatComplex>
array of dimensions lda * k.
array of dimensions lda * k .
lda
int
leading dimension of two-dimensional array used to store matrix A.
leading dimension of two - dimensional array used to store matrix A .
beta
float
scalar used for multiplication.
scalar used for multiplication .
C
CudaDeviceVariable<cuFloatComplex>
array of dimensions ldb * n.
array of dimensions ldb * n .
ldc
int
leading dimension of two-dimensional array used to store matrix C.
leading dimension of two - dimensional array used to store matrix C .