回答:
私はFiPyを使用せず、OpenFOAMのみを使用しましたが、両方のホームページのいくつかのポイントは、シミュレーションしたいものに強く依存することを示唆していると思います。
OpenFOAMにはすでにいくつかのソルバーが実装されています(ほとんどの場合CFD、プロファイルには計算プラズマ物理が記載されているため、mhdFoam
ソルバーは必要なものであるか、少なくとも基本として機能します。ここではそのユーザーグループです)。他のFVM実現可能PDEを解決するために拡張できます。 、とにかくFiPyでは、とにかく最初から方程式を実装する必要があります。後者の場合、はい、PythonはC ++よりもはるかに快適です。少なくとも私にとっては。
OpenFOAMを使いやすくするいくつかのPythonコードがあります。PyFoamはケースのセットアップを支援し、pythonfluはPythonでソルバーを記述するラッパーです(テストされていませんが、どのように機能するかわかりません)。
私の経験から、OpenFOAMのケースを設定することはかなり面倒であると私はFiPyが実際にそれさえもはるかに労力が必要となるかどうかわからないので、あなたが最も可能性の高い、とにかくなどメッシュのセットアップを自動化するスクリプトを記述することになります場合は、あなたが1を使用しますOpenFOAMのすでに実装されているソルバーの。そして、そのスクリプトにPythonを使用することを選択した場合、FiPyとOpenFOAMの決定が100行未満のコードの違いになるように、ほとんどのコードを記述できると思います。特に事前に計画されている場合は、後で考えを変えるのが難しい。
もちろん、より重要な点は、最初のセットアップにかかる時間と、パフォーマンスのパフォーマンスです。どちらの比較も見つからなかったので、自分で比較する必要があります...
個人的には、以前にOpenFOAMを使用したことがなく、OpenFOAMがまだソルバーを提供していないシステムをシミュレートする必要がある場合、C ++よりもPythonを優先するため、最初にFiPyを試す可能性があります。しかし、前述のように、PyFoamと一緒に、2つを比較するためにかなり一般的なフレームワークを考え出すことができます... OpenFOAMのソルバーを使用できたとしても、おそらくそれを使用します。