Visible to Intel only — GUID: GUID-36BC85AC-0784-45D0-9BDE-2FB2D88D25F8
Visible to Intel only — GUID: GUID-36BC85AC-0784-45D0-9BDE-2FB2D88D25F8
mkl_?csrcsc
Converts a square sparse matrix in the CSR format to the CSC format and vice versa (deprecated).
Syntax
call mkl_scsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
call mkl_dcsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
call mkl_ccsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
call mkl_zcsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
Include Files
- mkl.fi
Description
This routine is deprecated. Use the matrix manipulation routinesfrom the Intel® oneAPI Math Kernel Library (oneMKL) Inspector-executor Sparse BLAS interface instead.
This routine converts a square sparse matrix A stored in the compressed sparse row (CSR) format (3-array variation) to the compressed sparse column (CSC) format and vice versa.
Input Parameters
Parameter descriptions are common for all implemented interfaces with the exception of data types that refer here to the FORTRAN 77 standard types. Data types specific to the different interfaces are described in the section "Interfaces" below.
- job
-
INTEGER
Array, contains the following conversion parameters:
job(1)
If job(1)=0, the matrix in the CSR format is converted to the CSC format;
if job(1)=1, the matrix in the CSC format is converted to the CSR format.
job(2)
If job(2)=0, zero-based indexing for the matrix in CSR format is used;
if job(2)=1, one-based indexing for the matrix in CSR format is used.
job(3)
If job(3)=0, zero-based indexing for the matrix in the CSC format is used;
if job(3)=1, one-based indexing for the matrix in the CSC format is used.
job(6) - job indicator.
For conversion to the CSC format:
If job(6)=0, only arrays ja1, ia1 are filled in for the output storage.
If job(6)≠0, all output arrays acsc, ja1, and ia1 are filled in for the output storage.
For conversion to the CSR format:
If job(6)=0, only arrays ja, ia are filled in for the output storage.
If job(6)≠0, all output arrays acsr, ja, and ia are filled in for the output storage.
- m
-
INTEGER. Dimension of the square matrix A.
- acsr
-
(input/output)
REAL for mkl_scsrcsc.
DOUBLE PRECISION for mkl_dcsrcsc.
COMPLEX for mkl_ccsrcsc.
DOUBLE COMPLEX for mkl_zcsrcsc.
Array containing non-zero elements of the square matrix A. Its length is equal to the number of non-zero elements in the matrix A. Refer to values array description in Sparse Matrix Storage Formats for more details.
- ja
-
(input/output)INTEGER. Array containing the column indices for each non-zero element of the matrix A.
Its length is equal to the length of the array acsr. Refer to columns array description in Sparse Matrix Storage Formats for more details.
- ia
-
(input/output)INTEGER. Array of length m + 1, containing indices of elements in the array acsr, such that ia(i) is the index in the array acsr of the first non-zero element from the row i. The value of the last elementia(m + 1) is equal to the number of non-zeros plus one. Refer to rowIndex array description in Sparse Matrix Storage Formats for more details.
- acsc
-
(input/output)
REAL for mkl_scsrcsc.
DOUBLE PRECISION for mkl_dcsrcsc.
COMPLEX for mkl_ccsrcsc.
DOUBLE COMPLEX for mkl_zcsrcsc.
Array containing non-zero elements of the square matrix A. Its length is equal to the number of non-zero elements in the matrix A. Refer to values array description in Sparse Matrix Storage Formats for more details.
- ja1
-
(input/output)INTEGER. Array containing the row indices for each non-zero element of the matrix A.
Its length is equal to the length of the array acsc. Refer to columns array description in Sparse Matrix Storage Formats for more details.
- ia1
-
(input/output)INTEGER. Array of length m + 1, containing indices of elements in the array acsc, such that ia1(i) is the index in the array acsc of the first non-zero element from the column i. The value of the last element ia1(m + 1) is equal to the number of non-zeros plus one. Refer to rowIndex array description in Sparse Matrix Storage Formats for more details.
Output Parameters
- info
-
INTEGER. This parameter is not used now.
Interfaces
FORTRAN 77:
SUBROUTINE mkl_scsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
INTEGER job(8)
INTEGER m, info
INTEGER ja(*), ia(m+1), ja1(*), ia1(m+1)
REAL acsr(*), acsc(*)
SUBROUTINE mkl_dcsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
INTEGER job(8)
INTEGER m, info
INTEGER ja(*), ia(m+1), ja1(*), ia1(m+1)
DOUBLE PRECISION acsr(*), acsc(*)
SUBROUTINE mkl_ccsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
INTEGER job(8)
INTEGER m, info
INTEGER ja(*), ia(m+1), ja1(*), ia1(m+1)
COMPLEX acsr(*), acsc(*)
SUBROUTINE mkl_zcsrcsc(job, m, acsr, ja, ia, acsc, ja1, ia1, info)
INTEGER job(8)
INTEGER m, info
INTEGER ja(*), ia(m+1), ja1(*), ia1(m+1)
DOUBLE COMPLEX acsr(*), acsc(*)