|
|
◆ ZSsrCsr()
| Sub ZSsrCsr |
( |
Uplo As |
String, |
|
|
N As |
Long, |
|
|
Val() As |
Complex, |
|
|
Rowptr() As |
Long, |
|
|
Colind() As |
Long, |
|
|
Val2() As |
Complex, |
|
|
Rowptr2() As |
Long, |
|
|
Colind2() As |
Long, |
|
|
Optional Info As |
Long, |
|
|
Optional Base As |
Long = -1, |
|
|
Optional Base2 As |
Long = 0 |
|
) |
| |
SSR (CSR 対称行列形式) -> CSR (対称なフル行列) (複素行列)
- 目的
- 上または下三角要素のみを格納する対称なCSR形式疎行列を全要素を格納する一般のCSR形式対称疎行列に変換する.
出力行列の行内の要素の並び順は入力行列のままになる(並べ替えは行わない). 入力行列において Uplo で指定された以外の三角部分(対角成分を含まない)があれば無視される.
- 引数
-
| [in] | Uplo | 入力行列が上三角部分あるいは下三角部分のどちらを格納しているか指定する.
= "U": 上三角部分.
= "L": 下三角部分.
指定された以外の三角部分(対角成分を含まない)は無視される. |
| [in] | N | 行列の行および列数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る) |
| [in] | Val() | 配列 Val(LVal - 1) (LVal >= Nnz)
入力行列の非ゼロ要素の値. (Nnz は非ゼロ要素数) |
| [in] | Rowptr() | 配列 Rowptr(LRowptr - 1) (LRowptr >= N + 1)
入力行列の行ポインタ. |
| [in] | Colind() | 配列 Colind(LColind - 1) (LColind >= Nnz)
入力行列の列インデクス. (Nnz は非ゼロ要素数) |
| [out] | Val2() | 配列 Val2(LVal2 - 1) (LVal2 >= Nnz2) (Nnz2 >= 全要素を格納する出力疎行列の非ゼロ要素数)
出力行列の非ゼロ要素の値. |
| [out] | Rowptr2() | 配列 Rowptr2(LRowptr2 - 1) (LRowptr2 >= N + 1)
出力行列の行ポインタ. |
| [out] | Colind2() | 配列 Colind2(LColind2 - 1) (LColind2 >= Nnz2)
出力行列の列インデクス. |
| [out] | Info | (省略可)
= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り. |
| [in] | Base | (省略可)
Rowptr() および Colind() のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
(省略時: Rowptr(0) = 1 であれば 1, そうでなければ 0 とみなす) |
| [in] | Base2 | (省略可)
Rowptr2() および Colind2() のインデクス形式. (省略時 = 0)
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1. |
|