|
|
◆ csr_dzusadd()
| void csr_dzusadd |
( |
int |
m, |
|
|
int |
n, |
|
|
doublecomplex |
alpha, |
|
|
const double |
val_a[], |
|
|
const int |
rowptr_a[], |
|
|
const int |
colind_a[], |
|
|
int |
base_a, |
|
|
double |
beta, |
|
|
const double |
val_b[], |
|
|
const int |
rowptr_b[], |
|
|
const int |
colind_b[], |
|
|
int |
base_b, |
|
|
doublecomplex |
val_c[], |
|
|
int |
rowptr_c[], |
|
|
int |
colind_c[], |
|
|
int |
base_c, |
|
|
int |
nnz_c, |
|
|
int * |
info |
|
) |
| |
C <- αA + βB (α および C が複素数) (CSR)
- 目的
- CSR形式の疎行列 A, B および C について次の行列×行列演算を行う. ここで, αおよびβはスカラー, また, A, B および C は m×n 疎行列である. ただし, α および C は複素数である.
- 引数
-
| [in] | m | 行列の行数. (m >= 0) (m = 0 の場合, 処理を行わずに戻る) |
| [in] | n | 行列の列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る) |
| [in] | alpha | スカラーα. |
| [in] | val_a[] | 配列 val_a[l_val_a] (l_val_a >= nnz_a) (nnz_a は A の非ゼロ要素数)
入力行列 A の非ゼロ要素の値. |
| [in] | rowptr_a[] | 配列 rowptr_a[l_rowptr_a] (l_rowptr_a >= n + 1)
入力行列 A の行ポインタ. |
| [in] | colind_a[] | 配列 colind_a[l_colind_a] (l_colind_a >= nnz_a) (nnz_a は A の非ゼロ要素数)
入力行列 A の列インデクス. |
| [in] | base_a | rowptr_a[] および colind_a[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1. |
| [in] | beta | スカラーβ. |
| [in] | val_b[] | 配列 val_b[l_val_b] (l_val_b >= nnz_b) (nnz_b は B の非ゼロ要素数)
入力行列 B の非ゼロ要素の値. |
| [in] | rowptr_b[] | 配列 rowptr_b[l_rowptr_b] (l_rowptr_b >= n + 1)
入力行列 B の行ポインタ. |
| [in] | colind_b[] | 配列 colind_b[l_colind_b] (l_colind_b >= nnz_b) (nnz_b は B の非ゼロ要素数)
入力行列 B の列インデクス. |
| [in] | base_b | rowptr_b[] および colind_b[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1. |
| [out] | val_c[] | 配列 val_c[l_val_c]
出力行列 C の非ゼロ要素の値. |
| [out] | rowptr_c[] | 配列 rowptr_c[l_rowptr_c] (l_rowptr_c >= n + 1)
出力行列 C の行ポインタ. |
| [out] | colind_c[] | 配列 colind_c[l_colind_c]
出力行列 C の列インデクス. |
| [in] | base_c | rowptr_c[] および colind_c[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1. |
| [in] | nnz_c | min(l_val_c, l_colind_c) を入力する. nnz_c >= (α*A + β*B の非ゼロ要素数) でなければならない. |
| [out] | info | = 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
= j > 0: nnz_c が小さすぎる. j行目の処理中に上限に達した. |
|