Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

mkl_?diamv

Computes matrix - vector product for a sparse matrix in the diagonal format with one-based indexing (deprecated).

Syntax

call mkl_sdiamv
(
transa
,
m
,
k
,
alpha
,
matdescra
,
val
,
lval
,
idiag
,
ndiag
,
x
,
beta
,
y
)
call mkl_ddiamv
(
transa
,
m
,
k
,
alpha
,
matdescra
,
val
,
lval
,
idiag
,
ndiag
,
x
,
beta
,
y
)
call mkl_cdiamv
(
transa
,
m
,
k
,
alpha
,
matdescra
,
val
,
lval
,
idiag
,
ndiag
,
x
,
beta
,
y
)
call mkl_zdiamv
(
transa
,
m
,
k
,
alpha
,
matdescra
,
val
,
lval
,
idiag
,
ndiag
,
x
,
beta
,
y
)
Include Files
  • mkl.fi
Description
This routine is deprecated. Use mkl_sparse_?_mvfrom the
Intel® MKL
Inspector-executor Sparse BLAS interface instead.
The
mkl_?diamv
routine performs a matrix-vector operation defined as
y
:=
alpha
*
A
*
x
+
beta
*
y
or
y
:=
alpha
*
A
T
*
x
+
beta
*
y
,
where:
alpha
and
beta
are scalars,
x
and
y
are vectors,
A
is an
m
-by-
k
sparse matrix stored in the diagonal format,
A
T
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.
transa
CHARACTER*1
.
Specifies the operation.
If
transa
=
'N'
or
'n'
, then
y
:=
alpha
*
A
*
x
+
beta
*
y
,
If
transa
=
'T'
or
't'
or
'C'
or
'c'
, then
y
:=
alpha
*
A
T
*
x
+
beta
*
y
.
m
INTEGER
.
Number of rows of the matrix
A
.
k
INTEGER
.
Number of columns of the matrix
A
.
alpha
REAL
for
mkl_sdiamv
.
DOUBLE PRECISION
for
mkl_ddiamv
.
COMPLEX
for
mkl_cdiamv
.
DOUBLE COMPLEX
for
mkl_zdiamv
.
Specifies the scalar
alpha
.
matdescra
CHARACTER
.
Array of six elements, specifies properties of the matrix used for operation. Only first four array elements are used, their possible values are given in
Table “Possible Values of the Parameter