|
|
◆ csr_dusmv()
| def csr_dusmv |
( |
trans |
, |
|
|
m |
, |
|
|
n |
, |
|
|
alpha |
, |
|
|
val |
, |
|
|
rowptr |
, |
|
|
colind |
, |
|
|
base |
, |
|
|
x |
, |
|
|
incx |
, |
|
|
beta |
, |
|
|
y |
, |
|
|
incy |
|
|
) |
| |
y <- αAx + βy または y <- αATx + βy (CSR)
- 目的
- CSR形式の疎行列 A について次の行列×ベクトル演算を行う.
y <- αAx + βy または y <- αA^Tx + βy
ここで, αおよびβはスカラー, xおよびyはベクトル, また, A は m×n 疎行列である.
- 戻り値
- info (int)
= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
- 引数
-
| [in] | trans | 操作を指定.
= 'N': y <- αAx + βy.
= 'T' または 'C': y <- αA^Tx + βy. |
| [in] | m | 行列 A の行数. (m >= 0) (m = 0 の場合, 処理を行わずに戻る) |
| [in] | n | 行列 A の列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る) |
| [in] | alpha | スカラー α. |
| [in] | val | Numpy ndarray (1次元配列, float, nnz)
行列 A の非ゼロ要素の値. (nnz は非ゼロ要素数) |
| [in] | rowptr | Numpy ndarray (1次元配列, int32, m + 1)
行列 A の行ポインタ. |
| [in] | colind | Numpy ndarray (1次元配列, int32, nnz)
行列 A の列インデクス. (nnz は非ゼロ要素数) |
| [in] | base | rowptr および colind のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1. |
| [in] | x | Numpy ndarray (1次元配列, float, 1 + (n - 1)*incx (trans = 'N' の場合), 1 + (m - 1)*incx (trans = 'T' または 'C' の場合))
ベクトル x. |
| [in] | incx | x の要素間隔. |
| [in] | beta | スカラー β. |
| [in,out] | y | Numpy ndarray (1次元配列, float, 1 + (m - 1)*incy (trans = 'N' の場合), 1 + (n - 1)*incy (trans = 'T' または 'C' の場合))
[in] 入力ベクトル y (beta の値が 0 の場合, y の入力値は設定不要).
[out] 出力ベクトル. (= αAx + βy) |
| [in] | incy | y の要素間隔. |
|