mkl_sparse_?_export_csr
mkl_sparse_?_export_csr
Exports CSR matrix from internal representation.
Syntax
sparse_status_t mkl_sparse_s_export_csr
(
const
sparse_matrix_t
source
,
sparse_index_base_t
*indexing
,
MKL_INT
*rows
,
MKL_INT
*cols
,
MKL_INT
**rows_start
,
MKL_INT
**rows_end
,
MKL_INT
**col_indx
,
float
**values
);
sparse_status_t mkl_sparse_d_export_csr
(
const
sparse_matrix_t
source
,
sparse_index_base_t
*indexing
,
MKL_INT
*rows
,
MKL_INT
*cols
,
MKL_INT
**rows_start
,
MKL_INT
**rows_end
,
MKL_INT
**col_indx
,
double
**values
);
sparse_status_t mkl_sparse_c_export_csr
(
const
sparse_matrix_t
source
,
sparse_index_base_t
*indexing
,
MKL_INT
*rows
,
MKL_INT
*cols
,
MKL_INT
**rows_start
,
MKL_INT
**rows_end
,
MKL_INT
**col_indx
,
MKL_Complex8
**values
);
sparse_status_t mkl_sparse_z_export_csr
(
const
sparse_matrix_t
source
,
sparse_index_base_t
*indexing
,
MKL_INT
*rows
,
MKL_INT
*cols
,
MKL_INT
**rows_start
,
MKL_INT
**rows_end
,
MKL_INT
**col_indx
,
MKL_Complex16
**values
);
Include Files
- mkl_spblas.h
Description
If the matrix specified by the
source
handle is in CSR format, the mkl_sparse_?_export_csr
routine exports an m
-by-k
matrix A
in CSR format matrix from the internal representation. The routine returns pointers to the internal representation and does not allocate additional memory. If the matrix is not already in CSR format, the routine returns
SPARSE_STATUS_INVALID_VALUE
.Input Parameters
- source
- Handle containing internal data.
Output Parameters
- indexing
- Indicates how input arrays are indexed.
- SPARSE_INDEX_BASE_ZERO
- Zero-based (C-style) indexing: indices start at 0.
- SPARSE_INDEX_BASE_ONE
- One-based (Fortran-style) indexing: indices start at 1.
- rows
- Number of rows of the matrixsource.
- cols
- Number of columns of the matrixsource.
- rows_start
- Pointer to array of lengthm. This array contains row indices, such thatrows_start[-i]indis the first index of rowiin the arraysvaluesandcol_indx.indtakes 0 for zero-based indexing and 1 for one-based indexing.Refer topointerBarray description in CSR Format for more details.
- rows_end
- Pointer to array of lengthm. This array contains row indices, such thatrows_end[-i]ind- 1 is the last index of rowiin the arraysvaluesandcol_indx.indtakes 0 for zero-based indexing and 1 for one-based indexing.Refer topointerEarray description in CSR Format for more details.
- col_indx
- For one-based indexing, pointer to array containing the column indices plus one for each non-zero element of the matrixsource. For zero-based indexing, pointer to array containing the column indices for each non-zero element of the matrixsource. Its length isrows_end[-rows- 1]ind.indtakes 0 for zero-based indexing and 1 for one-based indexing.
- values
- Pointer to array containing non-zero elements of the matrixA. Its length is equal to length of thecol_indxarray.Refer tovaluesarray description in CSR Format for more details.
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.