Visible to Intel only — GUID: GUID-6DC2BFBE-44B4-4B15-BAF6-63D3DB21EE88
Visible to Intel only — GUID: GUID-6DC2BFBE-44B4-4B15-BAF6-63D3DB21EE88
mkl_?cootrsv
Triangular solvers with simplified interface for a sparse matrix in the coordinate format with one-based indexing (deprecated).
Syntax
call mkl_scootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
call mkl_dcootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
call mkl_ccootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
call mkl_zcootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
Include Files
- mkl.fi
Description
This routine is deprecated. Use mkl_sparse_?_trsvfrom the Intel® oneAPI Math Kernel Library (oneMKL) Inspector-executor Sparse BLAS interface instead.
The mkl_?cootrsv routine solves a system of linear equations with matrix-vector operations for a sparse matrix stored in the coordinate format:
A*y = x
or
AT*y = x,
where:
x and y are vectors,
A is a sparse upper or lower triangular matrix with unit or non-unit main diagonal, AT is the transpose of A.
This routine supports only one-based indexing of the input arrays.
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.
- uplo
-
CHARACTER*1. Specifies whether the upper or low triangle of the matrix A is considered.
If uplo = 'U' or 'u', then the upper triangle of the matrix A is used.
If uplo = 'L' or 'l', then the low triangle of the matrix A is used.
- transa
-
CHARACTER*1. Specifies the system of linear equations.
If transa = 'N' or 'n', then A*y = x
If transa = 'T' or 't' or 'C' or 'c', then AT*y = x,
- diag
-
CHARACTER*1. Specifies whether A is unit triangular.
If diag = 'U' or 'u', then A is unit triangular.
If diag = 'N' or 'n', then A is not unit triangular.
- m
-
INTEGER. Number of rows of the matrix A.
- val
-
REAL for mkl_scootrsv.
DOUBLE PRECISION for mkl_dcootrsv.
COMPLEX for mkl_ccootrsv.
DOUBLE COMPLEX for mkl_zcootrsv.
Array of length nnz, contains non-zero elements of the matrix A in the arbitrary order.
Refer to values array description in Coordinate Format for more details.
- rowind
-
INTEGER. Array of length nnz, contains the row indices for each non-zero element of the matrix A.
Refer to rows array description in Coordinate Format for more details.
- colind
-
INTEGER. Array of length nnz, contains the column indices for each non-zero element of the matrix A. Refer to columns array description in Coordinate Format for more details.
- nnz
-
INTEGER. Specifies the number of non-zero element of the matrix A.
Refer to nnz description in Coordinate Format for more details.
- x
-
REAL for mkl_scootrsv.
DOUBLE PRECISION for mkl_dcootrsv.
COMPLEX for mkl_ccootrsv.
DOUBLE COMPLEX for mkl_zcootrsv.
Array, size is m.
On entry, the array x must contain the vector x.
Output Parameters
- y
-
REAL for mkl_scootrsv.
DOUBLE PRECISION for mkl_dcootrsv.
COMPLEX for mkl_ccootrsv.
DOUBLE COMPLEX for mkl_zcootrsv.
Array, size at least m.
Contains the vector y.
Interfaces
FORTRAN 77:
SUBROUTINE mkl_scootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
CHARACTER*1 uplo, transa, diag
INTEGER m, nnz
INTEGER rowind(*), colind(*)
REAL val(*), x(*), y(*)
SUBROUTINE mkl_dcootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
CHARACTER*1 uplo, transa, diag
INTEGER m, nnz
INTEGER rowind(*), colind(*)
DOUBLE PRECISION val(*), x(*), y(*)
SUBROUTINE mkl_ccootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
CHARACTER*1 uplo, transa, diag
INTEGER m, nnz
INTEGER rowind(*), colind(*)
COMPLEX val(*), x(*), y(*)
SUBROUTINE mkl_zcootrsv(uplo, transa, diag, m, val, rowind, colind, nnz, x, y)
CHARACTER*1 uplo, transa, diag
INTEGER m, nnz
INTEGER rowind(*), colind(*)
DOUBLE COMPLEX val(*), x(*), y(*)