Paraview備忘録

alpha.waterの可視化

foamファイルのinternalMeshを可視化した状態で以下のようにContourをを設定
緑色の更新ボタンを押すことで体積分率0.5辺りに自動設定してくれる
(大体0.49999…になるけど)

いい感じの視点で「File」→「Save Animation…」
任意のディレクトリにpngで保存
(複数のpng画像がバラバラにダウンロードされるので空ディレクトリの作成を推奨)
Fig2

WSLでpng保存したディレクトリに入る
convertコマンドを使う

sudo apt install imagemagick-6.q16

convert -delay [T] -loop [N] *.png anim.gif

-delayオプションで切り替え秒数を設定
単位は$10 \mathrm{[ms]}$ (10倍されるので注意)
等倍速にしたい場合、controlDictwriteIntervalを見て、以下のように計算すればよい

$$ T=100\times \mathrm{[writeInterval]} $$


-loopオプションで繰り返し回数を決める
特に止める理由が無いなら省略でもよい

ffmpeg

-delay=-framerate
-i anim.%04d.pngは「anim.0001.png」, 「anim.0002.png」…と続くときの正規表現
gif

ffmpeg -framerate 10 -i anim.%04d.png -filter_complex "[0:v]split[a][b];[a]palettegen=stats_mode=full[p];[b][p]paletteuse=dither=bayer:bayer_scale=5" -loop 0 out.gif

mp4

ffmpeg  -framerate 10  -i anim.%04d.png   -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2:flags=lanczos"   -c:v libx264 -crf 1 -preset veryslow   -pix_fmt yuv420p  -movflags faststart out.mp4


上のgifはコンタの不透明度を下げ、親を非表示、さらにもう一つ同じfoamファイルをインポートして、物体だけ表示したもの