まとめ
ParaViewは、オープンソースのマルチプラットフォームデータ分析および可視化アプリケーションです。ParaViewは、科学データセットの分析と可視化のために、さまざまなコミュニティで知られ、使用されています。 [ 2 ]定性的および定量的手法を使用してデータを分析するための可視化を構築するために使用できます。データの探索は、3Dでインタラクティブに行うことも、ParaViewのバッチ処理機能を使用してプログラム的に行うこともできます。[ 3 ]
ParaViewは、分散メモリコンピューティングリソースを使用して非常に大規模なデータセットを分析するために開発されました。テラスケールのデータセットを分析するためにスーパーコンピュータで実行することも、より小さなデータのためにラップトップで実行することもできます。 [ 3 ]
ParaViewは、アプリケーションフレームワークであると同時に、すぐに使えるアプリケーションでもあります。ParaViewのコードベースは、すべてのコンポーネントを再利用できるように設計されており、垂直統合型のアプリケーションを迅速に開発できます。この柔軟性により、ParaView開発者は特定の課題領域に特化した機能を持つアプリケーションを迅速に開発することが可能です。
ParaViewは、分散メモリおよび共有メモリの並列処理システムとシングルプロセッサシステムで動作します。Windows 、macOS、Linux、IBM Blue Gene、Cray Xt3、および様々なUnixワークステーション、クラスタ、スーパーコンピュータで正常に動作することが確認されています。内部的には、ParaViewはデータ処理およびレンダリングエンジンとしてVisualization Toolkit(VTK)を使用し、ユーザーインターフェースはQtで記述されています。
ParaViewチームの目標は以下のとおりです。
- オープンソースでマルチプラットフォームに対応した可視化アプリケーションを開発する。
- 大規模データセットを処理するための分散コンピューティングモデルをサポートする。
- オープンで柔軟性があり、直感的に操作できるユーザーインターフェースを作成する。
- オープンスタンダードに基づいた拡張可能なアーキテクチャを開発する。
歴史
ParaViewプロジェクトは、米国エネルギー省ASCI Viewsプログラムからの資金提供を受け、 Kitware社とロスアラモス国立研究所の共同作業として2000年に開始されました[ 4 ] 。最初の一般公開は2002年10月に発表されました。
KitwareはParaViewとは独立して、2001年12月にWebベースの可視化システムを開発しました。このプロジェクトは、米国陸軍研究所のフェーズIおよびII SBIR(中小企業技術革新研究)の資金援助を受け、最終的にParaView Enterprise Edition(PVEE)となりました。PVEEは、ParaViewのクライアント/サーバーアーキテクチャの開発に大きく貢献しました。
2005 年 9 月、Kitware、Sandia National Labs、および CSimSoft (現在の Coreform LLC) は ParaView 3.0 の開発を開始しました。[ 5 ] ParaView 3.0 は 2007 年 5 月にリリースされました。2013 年 6 月、ParaView 4.0 がリリースされました。このバージョンは VTK 6.0 をベースにしています。[ 6 ]バージョン 5.0 は 2016 年 1 月にリリースされ、このバージョンには新しいレンダリング バックエンドが含まれています。[ 7 ]
特徴
視覚化機能
- 構造化データ(均一な直交グリッド、非均一な直交グリッド、曲線グリッド)、非構造化データ、多角形データ、画像データ、マルチブロックデータ、およびAMRデータタイプを扱います。
- すべての処理操作(フィルタ)はデータセットを生成します。これにより、ユーザーは各操作の結果をさらに処理したり、結果をデータファイルとして保存したりすることができます。例えば、ユーザーは切断面を抽出し、マスク処理によってこの面上の点の数を減らし、結果にグリフ(ベクトル矢印など)を適用することができます。
- ベクトル場は、データセット内の点にグリフ(矢印、円錐、直線、球、および様々な2Dグリフ)を適用することで検査できます。グリフは、スカラー、ベクトル成分、またはベクトルの大きさによってスケーリングでき、ベクトル場を使用して方向付けできます。
- 等高線と等値面は、スカラー値またはベクトル値を用いて、あらゆるデータタイプから抽出できます。抽出結果は、他の変数で色付けしたり、さらに処理したりすることも可能です。構造化データの場合、効率的なデータレイアウトを活用する高速かつ効率的なアルゴリズムを用いて、等高線/等値面を抽出します。
- データセットのサブ領域は、任意の平面で切り取りまたはクリッピング(すべてのデータタイプ)、セルを除外するための閾値基準の指定(すべてのデータタイプ)、および/またはVOI(関心領域 - 構造化データタイプのみ)の指定によって抽出できます。
- 流線は、一定ステップ積分器または適応積分器を使用して生成できます。結果は、点、線、チューブ、リボンなどとして表示でき、多数のフィルタで処理できます。粒子の軌跡は、時間データセットから抽出できます。
- データセット内の点は、スカラー値(ユーザー定義の変位ベクトルが与えられた場合)またはベクトル値(非線形直交グリッドでは使用不可)によって変形(変位)させることができます。
- 配列計算機を使用すると、既存の点配列またはセル配列を用いて新しい変数を計算できます。多数のスカラー演算とベクトル演算がサポートされています。
- 高度なデータ処理は、VTK、 NumPy、SciPyなどのPythonモジュールと組み合わせたPythonプログラマブルフィルタを使用して行うことができます。
- データは、特定の点または線に沿って調査できます。結果はグラフまたはテキストで表示され、さらに分析するためにエクスポートできます。また、データの時系列データ(最小値、最大値、標準偏差などの統計情報を含む)を抽出することも可能です。
- 強力な選択メカニズムとスプレッドシートビューを使用して、データを定量的に検査できます。選択メカニズムを使用すると、ポイントを選択するか、矩形領域を選択する対話型選択、または定量的な選択メカニズムを使用して、データセットの重要なサブセットに焦点を当てることができます。
- スプレッドシートビューでは、データセット全体または選択したサブセットを、生の数値として確認できます。
- ParaViewは、デフォルトで多くのデータソースとフィルタを提供しています。VTKソースまたはフィルタは、簡単なXML記述を提供することで追加できます。
- VTK (新旧、パラレル、ASCII、バイナリを含むすべてのタイプ)など、さまざまなファイル形式をサポートし、読み書きが可能です。
- EnSight 6 および EnSight Gold (パラレル、ASCII、バイナリを含むすべてのタイプ。複数のパートがサポートされています。各パートは個別にロードされ、個別に処理できます) (読み取り専用)。
- CGNS ( HDF5低レベルフォーマットに基づき、複数ブロック、非定常解、メッシュ変形をサポート)(読み取り専用)。
- STLやBYUを含む様々なポリゴンファイル形式(デフォルトでは読み取り専用、XML記述を書き込むことで他のVTKライターを追加可能)。
- その他多くのファイル形式にも対応しています。
- VTKのソースやフィルターは、簡単なXML記述を提供することで追加できます(VTKには多くのリーダーが用意されています)。
- ParaViewはオープンソースであるため、ユーザーは独自のリーダーとライターを提供することができます。
ユーザーインタラクション
- Qtアプリケーションフレームワークに基づいた、直感的で柔軟なインターフェース。
- 3Dウィジェット(マニピュレータ)を使用して3Dビューを直接操作することで、多くのフィルタのパラメータを変更できます。例えば、ユーザーは制御点をクリックして線を新しい位置にドラッグすることで、ストリームラインフィルタのシードラインを操作できます。
- コンパクトなユーザーインターフェース設計。デフォルトでは、重要なツールはすべてメインウィンドウに配置されています。これにより、デスクトップが散らかっていて探しにくい多数のウィンドウが不要になります。また、インスペクタをメインウィンドウから切り離すことも可能です。
- 詳細度レベル(LOD)モデルを使用することで、大容量データを扱う場合でもインタラクティブなフレームレートを維持します。ユーザーは、インタラクション中に縮小版モデルを表示するしきい値(ポイント数)を設定できます(モデルのサイズも調整可能です)。インタラクションが終了すると、元の大きなモデルが表示されます。
ビッグデータと分散コンピューティング
- MPIを使用して、分散メモリおよび共有メモリシステム上で並列処理を実行します。これには、ワークステーションクラスタ、可視化システム、大規模サーバー、スーパーコンピュータなどが含まれます。
- ユーザーインターフェースは、クライアント/サーバーモードを使用して別のコンピュータ上で実行されます。
- ParaViewは、データを複数のプロセスで処理するために分割するデータ並列モデルを採用しています。ほとんどの可視化アルゴリズムは、並列実行時に変更されることなく動作します。ParaViewは、分割されたデータに対して不変な結果を生成するために使用されるゴーストレベルもサポートしています。ゴーストレベルとは、プロセス間で共有される点/セルであり、近傍情報を必要とするアルゴリズムで使用されます。
- 分散レンダリング(各ノードでレンダリングされた結果を深度バッファを使用して後で合成する方式)、ローカルレンダリング(生成されたポリゴンを1つのノードに集約してローカルでレンダリングする方式)、および両者の組み合わせ(例えば、詳細レベルモデルはローカルでレンダリングし、フルモデルは分散方式でレンダリングする方式)の両方をサポートします。これにより、小規模データを扱う際のパフォーマンスを損なうことなく、大規模データに対してもスケーラブルなレンダリングを実現します。
- 分散レンダリングとタイル表示は、サンディア国立研究所のIce-Tライブラリを使用して行われます。
スクリプト作成と拡張性
- ParaViewは、シンプルながら強力なPython言語を用いて完全にスクリプト化できます。ParaViewのデータエンジン(サーバーマネージャと呼ばれる)は、Pythonインターフェースから完全にアクセス可能です。Pythonを介してエンジンに加えられた変更はすべて、ユーザーインターフェースに自動的に反映されます。
- ParaViewはPythonインターフェースを使用してバッチアプリケーションとして実行できます。IBM Blue GeneやCray Xt3などのスーパーコンピュータでバッチモードを使用して正常に実行されています。[ 8 ]
- 分散データ処理は、Pythonプログラマブルフィルタを使用することでPython上で実行できます。このフィルタはNumPyおよびSciPyとシームレスに連携します。
- インターフェースの XML 記述を作成するか、C++クラスを作成することで、追加モジュールを追加できます。XML インターフェースを使用すると、ユーザー/開発者は特別なコードを記述したり再コンパイルしたりすることなく、独自の VTK フィルタを ParaView に追加できます。[ 9 ] [ 10 ]
ParaView使用中
地球規模の地震波伝播シミュレーション
渦の可視化
ParaView:世界地図の表示
半空間の上に置かれた単位点力によるx方向の変位
片持ち梁の軸方向応力
参考文献
- 1 2 "タグ · ParaView / ParaView · GitLab" 。2026年1月16日に取得。
- ↑ Niklas Röber (2014年8月6日). Paraview 気候科学チュートリアル(PDF) . DKRZ、ドイツ気候センター。2016年3月10日にオリジナル(PDF)からアーカイブ済み。2016年3月8日に取得。
- 1 2ウトカルシュ アヤチット (2015 年 1 月 22 日)。ParaView ガイド: 並列視覚化アプリケーション(PDF)。キットウェア株式会社ISBN 978-19309343062016年3月8日に取得。
- ↑ Kitware (2000年3月10日) 「Kitware、並列処理ツールの開発契約を締結」 。 2015年6月8日にオリジナルからアーカイブ。2016年3月8日に取得。
- ↑ Kitware (2007年3月13日)。「ParaView III Alpha Release」 。 2016年3月8日取得。
- ↑ Kitware (2013年6月17日) 「ParaView 4.0.1がダウンロード可能になりました」 。 2016年10月11日取得。
- ↑ Kitware (2016年1月12日)。「ParaView 5.0.0がダウンロード可能になりました」 。 2016年10月11日取得。
- 1 2オークリッジ国立研究所国立計算科学センター(2016年1月16日)。「Titan上でParaViewを実行する」 。 2016年3月8日取得。
- ↑ Kitware (2015年11月13日)。「ParaView/Plugin HowTo」 。 2016年3月8日取得。
- ↑ Kitware (2012年8月22日)。「ParaView/コンパイル時のParaViewの拡張」。2016年3月8日取得。
- ↑ David Higham (2005年3月17日) 「サンディア国立研究所、NVIDIAテクノロジーを用いた科学的可視化で画期的なパフォーマンスを達成」 。 2016年3月8日取得。
- ↑ OpenCFD Ltd (ESI Group) (2016年1月13日)。「OpenFOAM® v3.0+: 新しい後処理機能」 。 2016年1月29日のオリジナルからアーカイブ。 2016年3月8日取得。
- ↑ Russell Taylor. "Comp/Phys/Mtsc 715、科学における可視化" . 2016年3月8日取得。
- ↑ 「サードパーティ製ソリューションによる後処理 — SimScale ドキュメント」。www.simscale.com。2018年1月15日取得。
- ↑ SimScale GmbH (2016年3月8日)、ウェビナー|SimScaleによるオンライン後処理、 2018年1月15日取得
- ↑ 「Formula Student の ParaView による後処理」 . SimScale . 2018-01-15取得。
- ↑ 「FEATool Multiphysics ParaView Glance Examples Gallery」。www.featool.com。2019年4月24日取得。
- ↑ 「PeriLabの結果はPeriHubで作成されました」。2025年6月10日取得。
外部リンク
- Paraviewのさまざまな分野での利用
- ParaViewギャラリー
- パラビュー出版
- Paraviewによる可視化画像のFlickrページ
- Kitwareの動画はVimeoでご覧いただけます。