Paraviewの使い方 備忘録


はじめに

流体シミュレーションをすると、やっぱりまずはどんな風に流体が流れているかを確認したくなります。

そんな時に使いたいのが「ParaView」です。

ParaViewとは、主に流体の可視化に用いられる汎用の可視化ソフトウェアで、HPを見ると気候変動なり、雲の動きなんかも可視化できるみたいです。

久しぶりに使ったのですが、全然使い方を覚えていなかったので、備忘録として基本的な使い方を記録します。

対象

ParaView の簡単な使い方を知りたい人

計算対象

MPS(Moving Particle Simulation)(S.Koshiduka et al. Nuclear Sci. and Engineering 123 3 421-434 (1996))
でいわゆる水柱の崩壊を計算しました。

以下の書籍に同様のシミュレーションがあるので、よければどうぞ
粒子法入門 流体シミュレーションの基礎から並列計算と可視化まで C/C++ソースコード付

インストール

特に何も考えずに公式HPからできたと思います。(公式HP ダウンロードページ)

ちなみに、この記事での実行環境はMacです。

Applicationフォルダに移動させると、LaunchPadから開くことができます。
(一番右のものです。 ちなみに真ん中のVMDも簡単に使えて便利です。)
  

データファイルの準備

今回はVTUファイル.vtuを用意します。

フォーマットはこんな感じです。

data.vtu
<?xml version='1.0' encoding='UTF-8'?>
<VTKFile xmlns='VTK' byte_order='LittleEndian' version='0.1' type='UnstructuredGrid'>
<UnstructuredGrid>
<Piece NumberOfCells='584' NumberOfPoints='584'>
<Points>
<DataArray NumberOfComponents='3' type='Float32' Name='Position' format='ascii'>
-0.075000 -0.075000 0.000000
-0.075000 -0.050000 0.000000
-0.075000 -0.025000 0.000000
-0.075000 0.000000 0.000000
   .          .        .
   .          .        .
1.100000 0.550000 0.000000
1.100000 0.575000 0.000000
1.100000 0.600000 0.000000
</DataArray>
</Points>
<PointData>
<DataArray NumberOfComponents='1' type='Int32' Name='ParticleType' format='ascii'>
3
3
.
.
1
1
1
</DataArray>
</Cells>
</Piece>
</UnstructuredGrid>
</VTKFile>

実際に作りたい人はちゃんと調べてからやってみてください。

起動

アプリを起動するとこんな感じの画面になります。

ファイルのインプット

左上にある  もしくはcommand + o でファイルを選択することができます。

data.vtuのファイルがまとめられているので、こちらを選択しましょう。

粒子の表示

        

読み込んだデータが選択されている状態(緑になっている状態)でApplyを押すと、最初のファイル(t=0の状態をアウトプットしたファイル)での粒子状態が表示されます。

まだ、めっちゃ見にくいですね。
見やすくしていきましょう。

粒子の見た目

○カラーリング

`Display`の部分をいじっていきます。
  • Representation

色々ありますが粒子法のシミュレーションだと`points`が一番使いやすいでしょう `Styling`の`Point size`で粒子の大きさを変えることができます。 `Render Points As Spheres`にチェックマークを入れると、pointのカクカク感がなくなってオススメです。
  • Particle Type
データファイルには、位置座標の他に`ParticleType`、`Velocity`、`pressure`の3つのデータを出力しています。 今回の場合だと`ParticleType`で表示するとわかりやすいです。

右側をいじると色味を変えたり、各カラーの分布(Display data histgram)なんかを見ることもできます。

また、以下のボタンを使うと、カラーバーをリスケールすることができます。
左のボタンは自動でリスケール。
真ん中のボタンは手動で値を指定できます。

背景

なんかちょっと見にくいので、背景を変えましょう

ここの検索窓で`background`と検索します。

ここで、colorを変えましょう。
(多分、私のMacのデフォルトのテーマがダーク系だからですかね。背景が黒は見にくいです)

割と見やすくはなりましたね。

これで最低限のアニメーションができました。

表示する粒子の設定

3Dバージョンの場合、目の前の壁のせいで、中の流体が見えなくなっています。
このような場合は、目の前の壁を表示させないようにしましょう。

左上の`Threshold`フィルターを開きます。 流体のParticleTypeは`0`に設定してあるので、流体だけを表示したいときは、`Maximum`を`0`まで戻しましょう。 `Pipeline`パートで今、設定した`Threshold1`のフィルターをONにしましょう。 (目を開けると、実際に画面に表示されます。)

こうすると、中の流体だけを見ることができます。

元々はこんな感じです。

座標の表示


Ray TracingData Axes Gridにチェックを入れると、以下のように座標軸を表示させることができます。

おまけ

若干見にくいですが、こんな感じのシミュレーションができます。
こちらのサイトでGIFファイルを作成しました。
(めちゃくちゃ粒子が飛んでいってる、、、)