Visible to Intel only — GUID: GUID-E881BC80-5BDD-4CFD-88E2-9B57F89E737D
Visible to Intel only — GUID: GUID-E881BC80-5BDD-4CFD-88E2-9B57F89E737D
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
stat = mkl_sparse_syrk (operation, A, C)
Include Files
- mkl_spblas.f90
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
-
SPARSE_MATRIX_T.
Handle which contains the sparse matrix A.
Output Parameters
- C
-
SPARSE_MATRIX_T.
Handle which contains the resulting sparse matrix. Only the upper-triangular part of the matrix is computed.
- stat
-
INTEGER
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.