XLPack 7.0
XLPack 数値計算ライブラリ (C API) リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ z_csr_ssr()

void z_csr_ssr ( char  uplo,
int  n,
const doublecomplex  val[],
const int  rowptr[],
const int  colind[],
int  base,
int  maxnnz2,
doublecomplex  val2[],
int  rowptr2[],
int  colind2[],
int  base2,
int *  info 
)

CSR (対称なフル行列) -> SSR (CSR 対称行列形式) (複素行列)

目的
全要素を格納する一般のCSR形式疎行列を上または下三角要素のみを格納するCSR形式対称疎行列に変換する.

現バージョンでは, 入力行列の uplo で指定された以外の三角部分(対角成分を含まない)を単に無視し, 対称性の検査は行わない.
引数
[in]uplo入力行列が上三角部分あるいは下三角部分のどちらを格納しているか指定する.
= 'U': 上三角部分.
= 'L': 下三角部分.
[in]n行列の行および列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る)
[in]val[]配列 val[lval] (lval >= nnz)
入力行列の非ゼロ要素の値. (nnz は非ゼロ要素数)
[in]rowptr[]配列 rowptr[lrowptr] (lrowptr >= n + 1)
入力行列の行ポインタ.
[in]colind[]配列 colind[lcolind] (lcolind >= nnz)
入力行列の列インデクス. (nnz は非ゼロ要素数)
[in]baserowptr[] および colind[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
[in]maxnnz2配列 val2[] および colind2[] の大きさ (入力行列の上または下三角部分の非ゼロ要素数より大きくなければならない). (maxnnz2 > 0)
[out]val2[]配列 val2[lval2] (lval2 >= maxnnz2)
出力行列の非ゼロ要素の値.
[out]rowptr2[]配列 rowptr2[lrowptr2] (lrowptr2 >= n + 1)
出力行列の行ポインタ.
[out]colind2[]配列 colind2[lcolind2] (lcolind2 >= maxnnz2)
出力行列の列インデクス.
[in]base2rowptr2[] および colind2[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
[out]info= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
= j > 0: 入力行列において j 個の要素が無視された.