VisIt で視覚化したレイリー・テイラー不安定性のイメージ | |
| 開発者 | ローレンス・リバモア国立研究所 |
|---|---|
| 安定版リリース | 3.2.2 [1]
/ 2022年1月[2] |
| 書かれた | C、C++ |
| オペレーティング·システム | Unix / Linux、Mac OS X、Microsoft Windows |
| タイプ | 科学的視覚化、インタラクティブ視覚化 |
| ライセンス | BSDA の |
| Webサイト | [1] |
VisIt は、科学的データを表示するために設計された、オープンソースのインタラクティブな並列視覚化およびグラフィカル分析ツールです。2Dおよび3Dの構造化メッシュと非構造化メッシュ 上のスカラー フィールドとベクトル フィールドを視覚化できます。
歴史
VisIt は、テラスケール シミュレーションの結果を視覚化して分析するために、米国エネルギー省(DOE)の高度シミュレーションおよびコンピューティング イニシアティブ(ASCI)によって開発されました。VisIt は、カスタム機能を追加し、新しい視覚化テクノロジを迅速に導入するためのフレームワークとして考案されました。最初のプロトタイプ作業の後、VisIt の作業は 2000 年の夏に開始され、最初のバージョンは 2002 年の秋にリリースされました。
VisItは、DOEのSciDAC(高度なコンピューティングによる科学的発見)[3]プログラムによってサポートされており、オープンな科学計算によって生成された大規模なデータセットの分析と視覚化を支援します。オークリッジ国立研究所、ローレンスバークレー国立研究所、カリフォルニア大学デービス校など、複数の組織と共同で開発されています。オープンソースでありBSDライセンスの下でリリースされているVisItは、さまざまな他の開発者からの貢献を受けています[引用が必要]。
まとめ
VisIt は、大規模なシミュレーションおよび実験データ セット用のオープン ソース アプリケーションです。このアプリケーションは、非常に大規模なデータ セットの並列化された一般的な後処理のインフラストラクチャとして機能します。主な使用例には、データ探索、比較分析、ビジュアル デバッグ、定量分析、プレゼンテーションなどがあります。
VisIt は、ユーザー インターフェイス用のQtウィジェット ライブラリ、コマンド ライン インタープリタ用の Python プログラミング言語[引用が必要]、データ モデルと多くの視覚化アルゴリズム用のVisualization ToolKit (VTK)ライブラリなど、いくつかのサード パーティ ライブラリを活用しています。VisIt 固有の作業は、主に大規模なデータ セットの並列化、ユーザー インターフェイス、カスタム データ分析ルーチンの実装、非標準データ モデル (アダプティブ メッシュ リファインメント(AMR) や混合材料ゾーンなど) への対応、および堅牢な製品全体の作成に重点が置かれています。VisIt は、 Windows、Mac、およびAIX、 IRIX、Solaris、Tru64、Linux などの多くのUnix バリアントに移植されており、 SGI のAltix、Cray のXT4、および多くのコモディティクラスタへの移植も行われています。
基本的な設計は、サーバーが並列化されたクライアント サーバー モデルです。サーバーの最も一般的な形式は、ファイルからデータを読み込むスタンドアロン プロセスです。ただし、シミュレーション コードが「lib-VisIt」にリンクされ、それ自体がサーバーとなり、その場での視覚化と分析を可能にする別の形式も存在します。
VisIt は、相互運用可能なモジュールを接続してカスタム分析を実行するデータ フロー ネットワークパラダイムに従います。モジュールは、VisIt の 5 つの主要なユーザー インターフェイス抽象化から得られます。21 の「プロット」(データをレンダリングする方法)、42 の「演算子」(データを操作する方法)、85 のファイル形式リーダー、50 を超える「クエリ」(定量的情報を抽出する方法)、および 100 を超える「式」(派生量を作成する方法) があります。さらに、プラグイン機能により、新しいプロット、演算子、およびデータベース モジュールを動的に組み込むことができます。これらのプラグインは、 QtおよびPythonユーザー インターフェイスの自動生成を含め、部分的にコード生成できます。
VisIt プロジェクトは、米国エネルギー省 (DOE) の国家核安全保障局の高度シミュレーションおよびコンピューティング (ASC)プログラムの一環としてローレンス リバモア国立研究所で始まりましたが、複数のグループによって開発される分散プロジェクトになりました。プロジェクトの主なハブは次の組織です。
- VACET [4]は、 DOEの科学局のSciDAC(高度なコンピューティングによる科学的発見)プログラムから生まれた技術を実現するセンターであり、
- ASCから、そして
- GNEP(米国エネルギー省原子力エネルギー局の世界原子力エネルギーパートナーシップ)より。
このプロジェクトには、5 つの DOE 研究所を含む多くの組織や大学から 20 人の開発者が参加しています。
特徴
- スカラー、ベクトル、テンソル フィールドの視覚化のための機能セットを備えています。VisIt は 2D および 3D データを処理します。また、VisIt にはデータをアニメーション化する機能もあり、ユーザーはデータの時間的変化を確認できます。
- 定性的および定量的な視覚化と分析を提供します。VisIt は派生フィールドをサポートしており、既存のフィールドを使用して新しいフィールドを計算できます。たとえば、データセットに速度フィールドが含まれている場合、速度の大きさを表す新しいフィールドを定義できます。また、一般化されたクエリ インターフェイスもサポートしており、体積や表面積などの派生量をクエリできます。
- 複数のメッシュ タイプをサポートします。VisIt は、2 次元および 3 次元のポイント、直線、曲線、非構造化メッシュなど、幅広い計算メッシュをサポートします。さらに、VisIt は構造化 AMRメッシュとCSGメッシュもサポートします。
- 強力でフル機能のグラフィカル ユーザー インターフェイス。VisIt のグラフィカル ユーザー インターフェイスを使用すると、初心者でもすぐにデータの視覚化を開始でき、熟練ユーザーは高度な機能にアクセスできます。複数の時間ステップを含むデータ セットから時間ベースのアニメーションを自動的に作成します。また、キーフレームアニメーション機能も備えており、ユーザーは高度なアニメーションを作成できます。VisIt では、マウスを使用してオブジェクトをインタラクティブにパン、ズーム、回転できます。また、平面や球などの幾何学的オブジェクトのサイズと位置をインタラクティブに変更することもできます。
- 並列および分散アーキテクチャ。VisIt は、非常に大きなデータ セットをインタラクティブに処理するために、分散および並列アーキテクチャを採用しています。VisIt のレンダリングおよびデータ処理機能は、複数のマシンに分散できるビューア コンポーネントとエンジンコンポーネントに分割されています。
- Viewerはレンダリングを担当し、通常は非常に強力なグラフィック カードを活用できるようにローカル デスクトップまたは視覚化サーバー上で実行されます。
- エンジンは、データ処理と入出力の大部分を担当し 、通常はデータが配置されているリモート マシンで実行されます。これにより、データを移動する必要がなくなり、ハイエンドのコンピューティング リソースと I/O リソースを利用できるようになります。エンジンは、単一のプロセッサでシリアルに実行することも、数千のプロセッサで並列に実行することもできます。
- C++、Python、Javaとのインターフェース。C++ および Java インターフェースにより、VisIt の代替ユーザー インターフェースを提供したり、既存の C++ または Java アプリケーションに視覚化サポートを追加したりすることが可能になります。Python スクリプト インターフェースにより、ユーザーはスクリプト言語を使用してデータをバッチ処理できます。この機能を使用すると、非常に洗練されたアニメーションを作成したり、回帰スイートを実装したりできます。
- 動的にロードされるプラグインで拡張可能。VisIt は、動的にロードされるプラグインを使用することで拡張性を実現します。VisIt のプロット、演算子、データベース リーダーはすべてプラグインとして実装され、実行時にプラグイン ディレクトリからロードされます。新しいプラグインは、このディレクトリにインストールするだけで追加できます。VisIt にはグラフィカルなプラグイン作成ツールが付属しており、新しいプラグインの作成プロセスが大幅に簡素化されます。
- 今後のリリースの計画をご覧いただけます。
参照
参考文献
- ^ 「VisIt 3.2.0 のリリース ノート」。
- ^ 「VisItリリース」。
- ^ 「SciDACプログラム」。
- ^ 「可視化および分析センター(VACET)」。
