OpenFOAM 3.0.0 リリースノート

OpenFOAM Foundationは、OpenFOAMのオープンソースCFDツールボックスのバージョン3.0.0のリリースを発表しました。 2から3へのメジャーバージョン番号の変更は、2011年以来初めてですし、1つまたは2つのケースファイルにいくつかの変更を必要とする下位互換性の問題が発生したことを示しています。

OpenFOAMの3.0.0は、2014年12月にバージョン2.3.1のリリース後発売され、800以上のコードのコミットが含まれた現在のOpenFOAM-devのリポジトリのスナップショットです。新機能を追加だけでなく、開発の相当数は、コードの持続可能性と使いやすさを向上させるために、このリポジトリで行われました。これらの変更は、次のとおりです。

・コードの構成要素の再設計。例えば乱流ライブラリ。 ・より大きな一貫性。例えばシステムディレクトリにblockMeshDictでのデフォルトの場所を移動します(下位互換性)。 ・よりよいユーザ入力。例えばfvSchemesからfluxRequiredの除去 ・モデルの更新、修正。例えばkkLOmega乱流モデル。

リリースはISO 14882:2014(E) Programming Language C++ (C++14) Standardに沿って、C ++のGCCコンパイラ(4.5+、V5.2まで試験)、Intel ICC(15.0.3+)とClang (3.6+、3.7推奨)間の互換性の向上の利益をもたらします。時間が経つにつれて、我々は可能な高可用性コンピュータの長期サポートされているLinuxオペレーティングシステムで使用されるC ++コンパイラの以前のバージョンの互換性に着目し、OpenFOAMにC ++ 14標準の新機能を導入することを期待しています。 OpenFOAMの3.0.0は、 OpenFOAM Foundation などにより General Public Licenceの下で配布されます。

・Ubuntu Linuxのために作成されたDeb pack。 ・他のLinuxシステム上でコンパイルするためのソースコード。

foamyHexMeshは現在、バージョン4.3以降の計算幾何学アルゴリズムライブラリ(CGAL)のを必要とします。しかし、Ubuntuの14.04 LTSは、現時点ではDebian開発者からCGAL v4.2のみパッケージを提供し、代替パッケージアーカイブで利用可能な新しいバージョンはなく、foamyHexMeshはUbuntuの14.04 LTSのDeb packでは使用できません。しかし、15.10のためのパックには、利用可能です。 バージョン3.0.0は、以下の新しい開発や変更が含まれています。


乱流のモデリング

・新しいテンプレートTurbulenceModelsライブラリのすべての乱流モデルを組み込みました。乱流モデルは、現在、RASPropertiesとLESPropertiesファイルを軽視し、すべてRASおよびLESサブ辞書を含んだturbulencePropertiesファイルから読み込まれます。 ・Speziale, Sarkar and Gatski (SSG) の圧力 - ひずみに基づくレイノルズ応力乱流モデルを追加。 ・壁適合局所渦粘性(WALE)SGS乱流モデルを追加。 ・新しい乱流モデルのフレームワークに、修正&改良したモデル、例えば修正kkLOmegaモデルを組み込み。 ・単一回転の参照フレーム(SRF)の計算に乱流モデルで正しい速度を採用。


多相、反応流

・複数の種と同相の反応を表すことができ、運動量、熱および物質移動の種類を表すことができる相系の2圧縮性流体相の系のための新しいreactingTwoPhaseEulerFoamソルバーを開発。 ・複数相のためのreactingMultiphaseEulerFoamの開発 ・沸騰/結露、乱流分散、熱壁関数などのフェーズのモデリングを実装。 ・twoPhaseEulerFoamに実験的なフェイスベースの運動方程式の定式化を追加。 ・p_rghにソルバーに基準高さの指定を追加しました。例えば、それを使用することp_rghの範囲を減らすためにVOFシミュレーションの自由表面の高さを使う。 ・サーフェースフィルム固化の凝固速度制御を修正、改良。


数値解法

・SIMPLEを使用しているソルバにSIMPLEアルゴリズム(SIMPLEC)のためのコンシステントオプションを組み込みます。 fvSolutionファイルのSIMPLEサブディクショナリでコンシステントキーワードで指定。 ・SIMPLECを使用するpitzDaily例を構成。デモンストレーションで3倍はスピードアップ。 ・ソルバーのPIMPLEファミリーにコンシステントオプションを追加。 ・これまでに各ソルバーで選択可能なオプションとして個別で専用のLTS版を持っていた、 Local Tme Stepping (LTS)を実装。 LTSコントロールはfvSolutionファイルで指定。 ・interFoamソルバとreactingEulerFoamソルバーを含む多相流ソルバのためのMULESフレームワークの中のLTSを改善。 ・wallDistアルゴリズムのセットーー例えばfvSchemesファイルに指定されている乱流モデル使用されるをーー作成しました。 ・fluxRequiredエントリは、もはやfvSchemesファイルで必要とされるように、ソルバに含まれる新しいsetFluxRequired機能を追加。 ・ローカルセルのCo数に基づくブレンドスキームのcellCoBlended補間スキームを追加しました。


ソースと制約(fvOptions)

・6自由度の剛体運動をサポートするためにtabulatedAccelerationSourceなど、新しいfvOptionsを追加。 ・fixedTemperatureConstraintを含むfvOptionsにいくつかの改良を実施。 ・多相系のすべての速度場に正しいアプリケーションを確保するためにfvOptionsフレームワークからMRFを分離。 ・rotorDiskSource fvOptionの制限を削除し、エラーを修正。


メッシュ

・blockMeshにシングルブロックの複数のグレーディングを追加しました。 ・blockMeshでboundaryフェイスの頂点を要求する必要性を削除しました。 ・blockMeshに高速なフェイスマージアルゴリズムを追加しました。 ・blockMeshDictのデフォルトの場所をシステムディレクトリに移動しました。


種々雑多な

ParaViewをバージョン4.4.0へアップグレード ・OpenFOAMのケースが存在しない場合に、paraFoamスクリプトがParaViewを開くことができる。

・dimensionedTypeのワード入力の必要性を削除。 - 例えばtransportPropertiesで動粘度を指定すると、以下のようになります。

nu [0 2 -1 0 0 0 0] 1e-05;

OpenFOAMのエネルギー式で説明したように、ソルバーのエネルギー方程式に浮力項を追加しました。 ・mapFieldsが、元の作業バージョンを復活し、実験的な並列化バージョンの名前をmapFieldsParに変更しました。

原文