Developer Reference for Intel® oneAPI Math Kernel Library for C
A newer version of this document is available. Customers should click here to go to the newest version.
mkl_sparse_syrk
Computes the product of sparse matrix with its transpose (or conjugate transpose) and stores the result in a newly allocated sparse matrix.
Syntax
sparse_status_t mkl_sparse_syrk (const sparse_operation_t operation, const sparse_matrix_t A, sparse_matrix_t *C);
Include Files
- mkl_spblas.h
 
Description
The mkl_sparse_syrk routine performs a sparse matrix-matrix operation which results in a sparse matrix C that is either Symmetric (real) or Hermitian (complex):
C := A*op(A)where op(*) is the transpose for real matrices and conjugate transpose for complex matrices OR
C := op(A)*Adepending on the matrix modifier op which can be the transpose for real matrices or conjugate transpose for complex matrices.
Here, A and C are sparse matrices.
Input Parameters
- operation
 -  
     
Specifies the operation op() on input matrix .
SPARSE_OPERATION_NON_TRANSPOSE, Non-transpose,C := A*op(A) where op(*) is the transpose for real matrices and conjugate transpose for complex matrices
SPARSE_OPERATION_TRANSPOSE, Transpose,C := (AT)*Afor real matrix A
SPARSE_OPERATION_CONJUGATE_TRANSPOSE, Conjugate transpose, C := (AH)*A for complex matrix A.
 - A
 -  
     
Handle which contains the sparse matrix A.
 
Output Parameters
- C
 -  
     
Handle which contains the resulting sparse matrix. Only the upper-triangular part of the matrix is computed.
 
Return Values
The function returns a value indicating whether the operation was successful or not, and why.
SPARSE_STATUS_SUCCESS  |  
      The operation was successful.  |  
     
SPARSE_STATUS_NOT_INITIALIZED  |  
      The routine encountered an empty handle or matrix array.  |  
     
SPARSE_STATUS_ALLOC_FAILED  |  
      Internal memory allocation failed.  |  
     
SPARSE_STATUS_INVALID_VALUE  |  
      The input parameters contain an invalid value.  |  
     
SPARSE_STATUS_EXECUTION_FAILED  |  
      Execution failed.  |  
     
SPARSE_STATUS_INTERNAL_ERROR  |  
      An error in algorithm implementation occurred.  |  
     
SPARSE_STATUS_NOT_SUPPORTED  |  
      The requested operation is not supported.  |