17.3K Views
August 31, 21
スライド概要
オープンCAE勉強会@関西(2021.8.29)での発表資料です.
I am an researcher of fluid dynamics in marine engineering.
OSPRayで可視化してみた yotakagi77 オープンCAE勉強会@関西 2021.8.29
Intel OSPRay https://www.ospray.org
Intel OSPRay • Intel OSPRay is an open source, scalable, and portable ray tracing engine for highperformance. • CPU rendering • Path tracing ( > Ray tracing) • Volume rendering • MPI backends • Intel oneAPI Rendering Toolkit • ParaView 5.x
最近のParaView • Mesa • GPUがなくてもCPUでOpenGLが使える • Catalysit • 計算しながら可視化結果を出⼒する • OSPray
レンダリングのアーキテクチャ1) Scientific Visualization Application (ParaView, VisIt, VMD)+VTK OSPRay API OpenGL API Local device Vender driver GPU Etc. OSPRay core Mesa C++ CPU MPI device Intel TBBs Embree CPU 1) https://www.youtube.com/watch?v=oK35O03RSTwのスライドより
ParaView+OSPRayで可視化 • 必要なもの • ParaView 5.1以降,ダウンロード版 • 解析結果 or VTKデータ • 事前準備 • 通常のParaView操作で可視化できるぐらいに, ParaViewに慣れておく.
参考になるサイト・情報源 • Intel OSPRayのdocumentation • RCCM(計算⼒学研究センター)のMesh Wiki • https://www.rccm.co.jp/icem/pukiwiki/index.php?OSPR ay%20Material • ただし解説はParaView 5.5での操作 • WestGridのYouTube動画 • https://www.youtube.com/watch?v=oK35O03RSTw • デモはParaView 5.7での操作
OSPRay可視化トレーニング • 題材 • WestGridのYouTube動画 • テクスチャ付き平面、ガラス球、teapot.vtk
Step 0: インストール • ParaView最新版ver.5.9.1をダウンロードして インストールする.
Step 1: 有効化 “Enable Ray Tracing”をチェック →”Back End”で”OSPRay pathtracer”を 選択する ※ 最初からRay Tracingしなくてもよい.
Step 2: Planeの追加 メニューから”Sources”→”Geometric Shapes” →”Plane”を選択. Planeの座標値を確認する(変更してもOK).
Step 3: Textureの追加 “Texture”を”None”から”Load ...”に変更し, ”checker.png”を選択して割り当てる.
Step 3: テクスチャの確認 checkerboardのテクスチャになる.
Step 4: Sphereの追加 メニューから“Sources”→”Geometric Shapes” →”Sphere”を選択する. ”Center”を(0 0 0.12),”Radius”を0.12, ”Theta Resolution”を100,”Phi Resolution”を 100に変更する.
Step 5: Materialの追加 メニューから”File”→”Load Path Tracer Materials …” を選択し,ParaViewのインストールディレクトリから “ospray̲mats.json”を開く.
Step 5: Material(ガラス)の割当て ”Ray Tracing”→”Material”に“Glass̲Thick”を 選択して割り当てる.
Step 6: サンプル数の増加 “Samples Per Pixel”を1から10に変更する. ※グリグリ動かす場合は1のままにしておいて, 最終段階で変更する.
Step 7: teapotの追加 “teapot.vtk”2)をダウンロードしてきて, openする. “Transforming”で,”Scale”を全て0.04, “Orientation”を(0 0 90),”Origin”を (0 -0.28 0.05)に変更する. 2) https://github.com/germannp/yalla
Step 8: Materialの変更(銅) “Ray Tracing”の”Material”を,一覧から “Material̲Copper̲brushed”を選択する.
Step 9: 状態の保存 メニューの“File”→”Save State...”を選択し, 状態を保存しておく.
Step 10: Streaming rendering メニュー “ParaView”→”Preferences...”を 選択し, “Settings”パネルを出す. “Enable Streaming”をチェックし, ParaViewを再起動して メニューの”File”→”Load States...” で先程の状態を読み込む. “Progressive Passes”を1から 30に変更する
Step 11: 確認 グリグリ動かしてstreaming renderingの 効果を確かめる
OpenFOAM解析結果の可視化 damBreakWithObstacle (t = 0 s) w/o rendering w/ rendering Material: Metal̲Stainless̲Steel̲brushed, Glass̲water
OpenFOAM解析結果の可視化 damBreakWithObstacle (t = 0.6 s) w/o rendering w/ rendering Material: Metal̲Stainless̲Steel̲brushed, Glass̲water
やりこみ要素 • 標準で用意されているmaterialは金属・固体が 多く,液体は少ない→ ospray̲mats.jsonの中 身を参考にしてオリジナルのmaterialを作る. • Samples Per Pixelの設定値は表面の複雑さに 依存するらしい.砕波だと200にした事例あり. • 大規模可視化?