雷の中の電磁界を流体と一緒に計算したい?
したいか?と言われると。。興味があるだけで、したくないですが(笑)
こんな論文を見つけました。前からこういう物理シミュレーションできないかな?って思っていたんですが。。OpenFOAMは少々かじっているので、ちょっと興味が。。
picFoam:OpenFOAMベースの静電粒子ソルバー
概要を要約すると。。
概要
picFoamは、OpenFOAMのオープンソースフレームワークでの非平衡プラズマ研究のための、Monte Carlo Collisions(MCC)を含む完全に動的な静電Particle-in-Cell(PIC)ソルバーです。 OpenFOAMで使用されているのと同じ原則に基づくソルバーのモジュラー設計により、ユーザーは実行時にさまざまなメソッドを選択できるため、柔軟性が高く、テンプレート化されたモジュラークラスに基づいて拡張できます。 有限体積法を採用したPIC法の実装により、1〜3次元の任意の形状でシミュレーションを行うことができます。 OpenFOAMのバリセントリック粒子追跡は、計算コストの高い粒子検索アルゴリズムを使用せずに、ラグランジュ粒子ベースの記述からオイラーフィールド記述まで、およびその逆方向に電荷とフィールドの重み付けを実行するために効果的に使用されます。 picFoamには、実際のプラズマデバイスを説明するためのオープンおよび一般的な回路境界モデルも含まれています。
どんな計算ができるかというと。。簡単にいうと放電現象などですね。
picFoamの意図は、広範囲の静電問題に適用できることです。 回路境界条件などの境界プラズマのモデルを含めることで、picFoamは実際のプラズマデバイスをシミュレートすることができます。 電子衝撃による励起やイオン化などの非弾性衝突イベントを組み込んだMCCスキームと組み合わせて、電気推進システム内のプラズマの挙動をシミュレートできます。 たとえば、図1aは、環状ギャップ内の内部カソードと外部アノードの間の放電の簡略化されたシミュレーションを示しています。 図1bは、ホールスラスタ形状の放電チャンバー内のイオンと電子の動きを示しています。
Particle-in-cell法は、プラズマシミュレーションでは古くからある方法ですね。
https://ja.wikipedia.org/wiki/Particle-in-Cell%E6%B3%95
どんなことができるかというと。。 粒子の中にレーザ当ててとかですね。こんなのです。
これは、PiconGPUというオープンソースでの実行結果ですが。。物理屋さんは最近こんなことやってるんですねぇ~
https://github.com/ComputationalRadiationPhysics/picongpu
このpicFOAMが使えない場合は、上記のPICのオープンソース類から探してみるといいかもですね。だれかこれで雷の中の放電現象とか研究してないかな?してたら。。教えて~
picFOAMのソースやチュートリアル
picFOAMのリポジトリはこちらですね。
https://github.com/TFDzarm/picFoam
Installみたら。。コンパイルせよって(笑)メンドクサイので、ちょっと何か手掛かりを見てからやろう(笑)
何やらチュートリアルがある。
https://github.com/TFDzarm/picFoam/tree/master/tutorials
Gmshファイルとかディレクトリー構成は、OpenFOAMそのものですね。。
ん。。 メンドクサイけど入れてみるか? Ubuntuだしな。。
続く。。。か?(笑)
あと。。これとは関係ないけど、OpenFOAMをPythonから使うpyFOAMって見つけた。これも後日ためそう。
https://openfoamwiki.net/index.php/Contrib/PyFoam
コメントを残していただけるとありがたいです