# Routines and Supported Operations

This section describes operations supported by the Intel Sparse BLAS Level 2 and Level 3 routines. The following notations are used here:

A is a sparse matrix;

B and C are dense matrices;

D is a diagonal scaling matrix;

x and y are dense vectors;

alpha and beta are scalars;

`op(A)` is one of the possible operations:

`op(A) = A`;

`op(A) = A'` - transpose of A;

`op(A) = conj(A')` - conjugated transpose of A.

`inv(op(A))` denotes the inverse of `op(A)`.

Intel MKL Sparse BLAS Level 2 and Level 3 routines support the following operations:

- computing the vector product between a sparse matrix and a dense vector:
  `y := alpha*op(A)*x + beta*y`

- solving a single triangular system:
  `y := alpha*inv(op(A))*x`

- computing a product between sparse matrix and dense matrix:
  `C := alpha*op(A)*B + beta*C`

- solving a sparse triangular system with multiple right-hand sides:
  `C := alpha*inv(op(A))*B`

Intel MKL provides an additional set of Sparse BLAS Level 2 routines with simplified interfaces. Each of these routines operates on a matrix of the fixed type. The following operations are supported:

- computing the vector product between a sparse matrix and a dense vector (for general and symmetric matrices):
  `y := op(A)*x`

- solving a single triangular system (for triangular matrices):
  `y := inv(op(A))*x`

Matrix type is indicated by the field <mtype> in the routine name (see section Naming Conventions in Sparse BLAS Level 2 and Level 3).

### Note

The routines with simplified interfaces support only four sparse matrix storage formats, specifically:

CSR format in the 3-array variation accepted in the direct sparse solvers and in the CXML;

diagonal format accepted in the CXML;

coordinate format;

BSR format in the 3-array variation.

Note that routines with both typical (conventional) and simplified interfaces use the same computational kernels that work with certain internal data structures.

Complete list of all routines is given in the “Sparse BLAS Level 2 and Level 3 Routines”.

Parent topic: Sparse BLAS Level 2 and Level 3 Routines