Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

mkl_cspblas_?cootrsv

Triangular solvers with simplified interface for a sparse matrix in the coordinate format with zero-based indexing (deprecated).

Syntax

void mkl_cspblas_scootrsv (const char *uplo , const char *transa , const char *diag , const MKL_INT *m , const float *val , const MKL_INT *rowind , const MKL_INT *colind , const MKL_INT *nnz , const float *x , float *y );

void mkl_cspblas_dcootrsv (const char *uplo , const char *transa , const char *diag , const MKL_INT *m , const double *val , const MKL_INT *rowind , const MKL_INT *colind , const MKL_INT *nnz , const double *x , double *y );

void mkl_cspblas_ccootrsv (const char *uplo , const char *transa , const char *diag , const MKL_INT *m , const MKL_Complex8 *val , const MKL_INT *rowind , const MKL_INT *colind , const MKL_INT *nnz , const MKL_Complex8 *x , MKL_Complex8 *y );

void mkl_cspblas_zcootrsv (const char *uplo , const char *transa , const char *diag , const MKL_INT *m , const MKL_Complex16 *val , const MKL_INT *rowind , const MKL_INT *colind , const MKL_INT *nnz , const MKL_Complex16 *x , MKL_Complex16 *y );

Include Files

  • mkl.h

Description

This routine is deprecated. Use mkl_sparse_?_trsvfrom the Intel® oneAPI Math Kernel Library (oneMKL) Inspector-executor Sparse BLAS interface instead.

The mkl_cspblas_?cootrsv routine solves a system of linear equations with matrix-vector operations for a sparse matrix stored in the coordinate format with zero-based indexing:

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.

NOTE:

This routine supports only zero-based indexing of the input arrays.

Input Parameters

uplo

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

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

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

Number of rows of the matrix A.

val

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

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

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

Specifies the number of non-zero element of the matrix A.

Refer to nnz description in Coordinate Format for more details.

x

Array, size is m.

On entry, the array x must contain the vector x.

Output Parameters

y

Array, size at least m.

Contains the vector y.