Developer Reference for Intel® oneAPI Math Kernel Library for C
sparse_matrix_checker
Checks the correctness of a sparse matrix.
Syntax
MKL_INT sparse_matrix_checker ( sparse_struct *handle );
Include Files
mkl.h, mkl_sparse_handle.h
Description
The sparse_matrix_checker routine checks a user-defined array used to store a sparse matrix in order to detect issues which could cause problems in routines that require sparse input matrices, such as Intel® oneAPI Math Kernel Library (oneMKL) PARDISO, DSS, or Sparse BLAS.
Input Parameters
- handle
-
sparse_struct*
Pointer to the data structure describing the sparse array to check. See description of handle elements in sparse_matrix_checker_init.
Return Values
The routine returns a value error . Additionally, the check_result parameter returns information about where the error occurred, which can be used when message_level is MKL_NO_PRINT .
error value |
Meaning |
Location |
|---|---|---|
MKL_SPARSE_CHECKER_SUCCESS |
The input array successfully passed all checks. |
|
MKL_SPARSE_CHECKER_NON_MONOTONIC |
The input array is not 0 or 1 based ( ia[0] is not 0 or 1) or elements of ia are not in non-decreasing order as required. |
|
MKL_SPARSE_CHECKER_OUT_OF_RANGE |
The value of the ja array is lower than the number of the first column or greater than the number of the last column. |
|
MKL_SPARSE_CHECKER_NONTRIANGULAR |
The matrix_structure parameter is MKL_UPPER_TRIANGULAR and both ia and ja are not upper triangular, or the matrix_structure parameter is MKL_LOWER_TRIANGULAR and both ia and ja are not lower triangular |
|
MKL_SPARSE_CHECKER_NONORDERED |
The elements of the ja array are not in non-decreasing order in each row as required. |
|