SLEPc

SLEPc
安定版リリース
3.24 / 2025年9月30日 ( 2025-09-30 )
リポジトリ
オペレーティング·システムLinuxUnixMac OS XWindows
入手可能なC(メイン言語)、C++、FORTRAN、Python
タイプ科学シミュレーションソフトウェア
ライセンスBSD 2条項ライセンス
Webサイトslepc .upv .es

SLEPc [ 1 ]は、大規模な疎行列の固有値と固有ベクトルを並列計算するためのソフトウェアライブラリです。PETScのモジュールとして、線形(標準および一般化)および非線形(二次、多項式、一般)、さらにSVDを含む様々なタイプの固有値問題のソルバーを提供します。最新バージョンでは行列関数もサポートされています。並列化にはMPI標準を使用します。実数および複素数の演算が、単精度、倍精度、および四倍精度でサポートされています。

SLEPcを使用する場合、アプリケーションプログラマはPETScのデータ構造とソルバーを自由に使用できます。コマンドラインオプション設定、自動プロファイリング、エラーチェック、ほぼすべてのコンピューティングプラットフォームへの移植性など、PETScのその他の機能もSLEPcに組み込まれています。

コンポーネント

EPS は線形固有値問題のための反復アルゴリズムを提供します。

  • クリロフ法、クリロフ・シュール法、アーノルディ法ランチョス法など。
  • 一般化デイビッドソン法やヤコビ・デイビッドソン法などのデイビッドソン法。
  • LOBPCG などの共役勾配法。
  • 輪郭積分ソルバー (CISS)。
  • ARPACKBLOPEXなどの外部固有値解析ツールへのインターフェース。
  • カスタマイズ オプションには、必要な固有値の数、許容値、使用するサブスペースのサイズ、関心のあるスペクトルの部分が含まれます。

ST は、固有値問題のスペクトル変換やその他の前処理をカプセル化します。

  • シフト・アンド・インバートとケイリースペクトル変換。
  • PETSc が提供する前処理を使用して、前処理付き固有値ソルバー (Jacobi-Davidson など) をサポートします。
  • 内部固有値のための多項式フィルター。

SVD には、特異値分解一般化特異値分解のソルバーが含まれています。

  • EPS ソルバーに依存する、クロス積行列または巡回行列に基づくソルバー。
  • Golub-Kahan-Lanczos や thick-restarted バリアントなどの二重対角化に基づく特定のソルバー。

PEP は、二次固有値問題を含む多項式固有値問題を対象としています。

  • EPS ソルバーに依存する、明示的な線形化に基づくソルバー。
  • TOAR など、メモリ効率の高い方法で暗黙的に線形化を実行するソルバー。
  • PEP 用の Jacobi-Davidson ソルバー。

NEP は非線形固有値問題を解く機能を提供します。

  • 残差逆反復法や逐次線形問題などの基本的なソルバー。
  • PEP ソルバーに依存する多項式補間に基づくソルバー。
  • 有理補間 (NLEIGS) に基づくソルバー。

MFN は、ベクトルに対する 行列関数の作用を計算するために使用できます。

  • 再起動された Krylov ソルバー。

参照

参考文献

  1. ^ V. Hernandez; JE Roman & V. Vidal (2005). 「SLEPc: 固有値問題の解法のためのスケーラブルで柔軟なツールキット」 . ACM Transactions on Mathematical Software . 31 (3): 351– 362. doi : 10.1145/1089014.1089019 . S2CID  14305707 .