概要
このドキュメントでは、SimScaleの非圧縮LBM(格子ボルツマン法)解析タイプのオプションについて詳しく説明します。
ジオメトリ
Pacefish® \(^1\) LBMソルバーは、多くのCADタイプに対応し、一般的に他のソルバーよりもジオメトリに関してロバスト です。つまり、 問題やエラーが発生した場合でも、ジオメトリを検査して根本的な問題がなければ、通常通り.stlファイルを読み込むことができます。
| Optimize for LBM/PWC (LBM/PWC用に最適化) |
|
このオプションを使用すると、非圧縮LBMおよびWind Comfort解析タイプに最適化された.stlファイルをインポートできます。LBMソルバーが必要としないソーイングやクリーンアップのような複雑なインポートステップを省くことができるため、大規模で複雑なモデルを高速にインポートすることができます。
|
壁面モデリング
Y + Requirements
例えば、FVM実装のk-omega SST(uRANS)モデルは、30 < Y+ < 300がおおよその要件です。SimScaleのLBMでは、下限は必要な要件とはみなされず、ロバスト性を担保するために上限を500未満(多くとも確実に1000を超えない)にすることが推奨されます。ソルバーは、壁近傍ボクセルのY+値が2000を超えると警告を発します。
Y+が予想よりもはるかに高く、結果に影響が出そうな場合は、次のようにインターフェイスに警告が表示されます:
| 警告 |
|
High velocities encountered that might not be handled by the current mesh resolution. Please check your results and consider refining the mesh further. Mesh resolution might not be sufficient for correct turbulence modeling. Please check your results and consider refining the mesh. |
とソルバーログにエラーで表示されます:
| 警告 |
| ERROR @ DomainHealthStatusExporter.cpp:60: simulationTime=748, domainHealthStatus=(maxVelMag=0.323367, minRho=0.697381, maxRho=1.48795, maxNuT=0.000625238, maxWallCellSizeYp=102696) |
上記の警告メッセージは、最大Y+が100kであることを示しています。主な対処方法として、レイノルズ相似則を適用(下のセクションを参照)するか、サーフェスメッシュを精製することがあげられます。サーフェスがすでに妥当なレベルまで細分化されている場合、スケーリングはシミュレーションのコストを過度に増加させない唯一の方法です。
Y+ターゲットに関して、Pacefish®\(^1\) は、壁関数を持つFVMコードよりもはるかに柔軟です。低い下限値に制限はありません。壁近傍のボクセルサイズが500から1000を超えない限り、結果は壁の分解能に影響されません。
Incompressible LBMにおける乱流モデル
k-omega SSTモデル
図2から、境界層のさまざまな領域と、境界層をモデル化する際に対数則領域を避けることが推奨される理由がわかります。しかし、k-omega SSTは、最初のセルまで層をモデル化し、そこから解を求めます。このモデルは、航空宇宙産業を含む多くの産業で非常に正確であることが証明されています。
k-omega SSTモデルは高精度ですが、LES(Large Eddy Simulation)やDES(Detached Eddy Simulation)という、より高精度なモデルも存在します。
LESモデル
LESは、グリッドフィルターよりも小さな渦のみをモデル化し、グリッドフィルターよりも大きな流動を解くため、より正確です。LESの欠点としては、標準的な形式では壁をモデル化できないため、非常に細かいメッシュを必要とすること、または単に壁の相互作用が最も少ない流れを扱うことなどが挙げられます。LES Smagorinskyモデルのような純粋なLESモデルは、同等のFVMモデルと同様のY+要件を必要とします。
しかし、壁モデルを追加すれば、このような細かいメッシュを必要とせずに精度を向上させることができ、これがDESまたはDetached Eddy Simulationの利点となります。
| Smagorinsky(direct)乱流モデル |
| 従来のSmagorinskyモデルの他に、SimScaleはSmagorinsky(direct)乱流モデルも提供しています。 Smagorinskyモデルは、オリジナルの計算式とLESの考え方を厳密に踏襲しています。Smagorinsky (direct)はマイナーな変更が加えられ、計算コストがやや小さくなります。Smagorinsky (direct)では、LBMメッシュのみを時間ステップ中に計算する必要がありますが、Smagorinskyでは、LBMと有限差分メッシュを時間ステップ中に計算する必要があるため、計算コストが大きくなります。 |
DESモデル
DES乱流モデルは、境界層でRANSモデルを使用し、境界から遠い領域でLESモデルを使用するハイブリッドLES-uRANSモデルです。LBMソルバーでは、k-omega SST DDES (Delayed Detached Eddy Simulation)とk-omega SST IDDES (Improved Delayed Detached Eddy Simulation)の2つの剥離渦モデルを利用できます。
DESモデルのk-omega SST DDESとk-omega SST IDDESは、壁モデルが同じモデルに基づいているため、uRANSのk-omega SSTと同様の壁要件を持っていますが、ある時点で壁近傍領域がk-omega SSTからLESに移行します。
DDESとIDDESの違いは、IDDESがおおよそ 5 < Y+ < 30 の間の領域でuRANSからLESに切り替わるのに対し、DDESモデルは 30 < Y+の対数則領域でuRANSからLESに切り替わることです。要するに、IDDESはより壁に近い領域でLESへの切り替えを行い、DDESは壁から離れた領域で切り替えを行うという違いがあります。したがって、メッシュのY+値に応じて適切なDES乱流モデルを選択してください。例えば、Y+が100程度であればDDESモデルが適していますが、Y+が5以下であればDDESよりもIDDESが適しています。
k-omega SSTモデルは、一部の瞬時の効果を十分にとらえられない可能性があり、この解決のために通常のSmagorinskyモデルを使用することができます。ただし、通常のSmagorinskyモデルを使用する場合、壁の解像度 Y+が1前後かそれ以下であることを確認してください'。- (Eugen, 2018)\(^1\) 。ただし、メッシュを精緻化することなく、単にシミュレーションを再実行して結果を改善する場合は、通常のk-omega SSTやSmagorinskyモデルではなく、SimScaleで利用可能なDES乱流モデルの使用をご検討ください。
Reynolds scaling factor
風洞試験のためにモデルを物理的に縮小したり、流れを遅くしたり、他の流れパラメータを変更したりすることはよくあります。このような要求の例としては、亜音速の流れの中で縮尺された建物や飛行機を試験することが挙げられます。SimScaleでは、Reynolds scaling factor (RSF)により、このスケーリングをフルスケールの形状に自動的に適用することができます。
このスケーリングは、風洞で重要なサイジングのためだけでなく、高いレイノルズ数によって薄い境界層が形成されるLBM法でも必要です。LBMではアスペクト比が1、つまり完全な立方体の格子が必要なため、必要なY+値まで細分化するとコストがかかります。その上、スケーリングせずにサーフェスで必要なレベルまで精緻化すると、クーラン数が1より低い値に維持されるため、同じ時間スケールに必要な時間ステップ数が増え、シミュレーションコストがさらに増加します。
歩行者の風快適性に関する検証ケース(AIJ Case E (英語))は、都市の縮尺が1:250の風洞と比較したもので、0.004のScaling factorを使用することができます。あるいは、Reynolds scaling factorが自動的に適用されるオートメッシングを使用することもできます。高レイノルズ数を扱う場合は、適用可能なScaling factorを把握するために文献調査を行うか、比較する風洞実験に一致するScaling factorを選択することをお勧めします。
Reynolds scaling factorの定義
Reynolds scaling factorは、Incompressible LBM (格子ボルツマン法)解析とPedestrian wind comfort (歩行者の風快適性)解析の両方で、 Mesh settingsで変更することができます:
レイノルズ数は\(Re = U L/ \nu\) として定義されます。\(L\) は代表長さ、\(U\) は速度、\(\nu\) は流体の動粘度です。Scaling factorが適用されると、ジオメトリのサイズが小さくなる代わりに、レイノルズ数が正しいスケーリングになるように粘度が増加します。
ほとんどの都市規模の流れでは、正確な結果を得るためにReynolds scaling - Automaticを推奨します。風洞モデルと同様に、ブラフボディ(ブロック状の建物)と高レイノルズ数が存在すると仮定してReynolds scalingを使用します。これにより、高レイノルズ数の相似則が可能になります。この両方の条件を満たす場合、自動スケーリングは有効です。Reynolds scaling - Automaticにより、豊富な専門知識がなくても正確な結果をより小さなコストで得ることができます。
一般的な都市スケールのモデル以外で解析する場合は、手動スケーリングを使用できますが、壁面モデリングへの影響の考慮など専門知識を必要とします。縮尺1はフルスケールを表し、1/250または1/400は典型的な風洞スケールを表します。SimScaleの自動値は通常1/10のオーダーです。
メッシュ作成
最小メッシュは、最大メッシュより最大2レベル低いという単純な経験則を適用しています。メモリ消費量は2次のオーダーで変化し、計算量は3次のオーダーで変化するため、すべてのメッシュを最高の解像度(最小メッシュサイズ)とするよりも大きな節約になります(メモリは93%、計算時間は99%削減)。同時に、壁面での解像度が安定しており、遷移領域での数値的な効果を排除しています。
固体物体周りでのメッシュの遷移(異なるサイズのメッシュが接触する領域)は、計算エラーが発生しない場合でも、結果の品質に大きく影響します。言い換えると、結果の品質を担保するためには、メッシュのサイズを変更せず、すべての領域で最高の解像度(最小メッシュサイズ)とすることが理想的です。メッシュサイズを変更する場合は、品質に注意を払う必要があります。
一方向の押し出しが4ボクセル、下方向の押し出しが16ボクセルのボクセルボリュームを使用した場合、手動で作成したボックスによる細分化領域を適用するよりも、シミュレーションに適した、非常に優れたメッシュが得られます。一般的に、ボックスの細分化領域はNavier-Stokesを適用する場合に有効であり、Pacefishで使用することはできますがボクセルボリュームの方がはるかに優れています。
結果
通常の有限体積法ベースのソルバーは定常解析で、2000万以下のメッシュで実行されることが一般的です。一方、LBMソルバーでは、非定常解析かつ1億以上のメッシュで実行され、結果は時間ステップごとに計算されます。そのためデータ量が多く、現実的に出力結果をすべて保存することが難しい場合があります。
シミュレーションの結果ストレージが不足すると、ログにエラーが表示されます:
| エラー |
| FATAL @ EnSightExport.cpp:3679: EnSight data export to “export/trans_Pedestrian__PACEFISHSPACE__Level__PACEFISHSPACE__SlicePACEFISH” FAILED because of file I/O issue. Please check the access rights and the available disk space at the destination. |
このメッセージが表示され始めたら、直ちにシミュレーションを停止し、書き込みデータのサイズを小さくするようにResult controlを再調整することをお勧めします。
保守的なアプローチ
書き込みデータ量は、メッシュサイズ、エクスポート領域サイズ、非定常結果書き込みの頻度、シミュレーションの実行時間に依存します。そのため、判断が難しいかもしれませんが、シミュレーションの実行前に必要なデータを検討し、保存するデータを絞ることが求められます。
例1
ある都市の歩行者の高さにおける様々な地点のピーク速度が知りたい場合、単純にその範囲の非定常データを出力することもできますが、良好な非定常結果を得るためには、時間ステップごとに多くの書き込みが必要になります。ただし1億メッシュを超えるような緻密な領域では現実的ではありません。代替手段として、高さの小さなスライスを持たせることや、保存する領域を小さくすることで、結果のサイズを小さくすることができます。
その他の方法として、Probe points として設定する注目する位置を把握し、その点の座標をCSVファイルとしてアップロードし、時間ステップごとに出力することもできます。
例2
建物の表面にかかる圧力を単純に把握したい風荷重の場合、都市周辺の流体と表面のデータを出力するか、対象の建物だけに縮小することができます。さらに、体積データ(3次元)を削除して表面データ(2次元)のみを出力し、結果のサイズを縮小することもできます。
上記の2つの例では、どの程度の結果の出力量を必要とするかはケースバイケースでありユーザーにゆだねられます。ユーザーは出力量を限定することで、品質の高いデータを保存することができます。
このため、LBMでは結果の出力に3つの主な方法を用意しています: Transient output (非定常出力) 、Statistical averaging (統計的平均化) 、Snapshot (スナップショット) です。 これら3つのオプションについて説明します:
Transient output (非定常出力)
このResult controlの項目により、流体領域内の任意の領域について、シミュレーション実行の任意の場所、任意の出力間隔で、非定常結果を保存することができます。設定パネルは以下のようになります:
以下のパラメータを指定する必要があります:
- Write control (書き込み制御): 結果出力の頻度を表します。Coarse resolution (8時間ステップごとに出力)、Moderate resolution (4時間ステップごとに出力)、High resolution (2時間ステップごとに出力)から選択できるほか、希望する値を秒単位で指定できるCustom resolutionを選択できます。例えば、Coarse resoltionの場合、出力は8番目のタイムステップ(8、16、24、......)ごとの瞬時結果のスナップショットです。
- Fraction from end (終了からの割合): シミュレーション結果出力の抽出を開始するシミュレーション中のポイントを定義します。例えば、 Fraction from end を1(100%)に設定すると、シミュレーションの開始時点からすべてのデータを解析します。しかし、流れが初期化され、ある程度周期的な一定の流れに安定するまでに時間がかかるため、これは望ましくない場合があります。したがって、0.5(シミュレーション開始50%)やデフォルトの0.2(シミュレーション終了から20%=シミュレーション開始から80%)のような数値が推奨されます。
- Export flow-domain fields (出力する流体領域): オンに切り替えると、割り当てられたジオメトリプリミティブで囲まれた流体領域のシミュレーションデータが出力されます。
- Export surface field (出力する面領域): オンに切り替えると、割り当てられたジオメトリプリミティブで囲まれた面のシミュレーションデータがエクスポートされます。
- Geometry primitives (ジオメトリプリミティブ): シミュレーションデータを出力する領域を指定します。 Export flow region の 他に、 Cartesian box (直方体)または Local slice (スライス)を割り当てることができます。
| 注 |
| 非定常解析結果は、特にアニメーションが必要な場合、小さな領域で保存することをお勧めします。シミュレーションがメモリ不足になった場合、シミュレーションは失敗し、多くの解析時間を浪費する可能性があります。そのため、非定常出力は控えめにし、必要な結果を限定して検討してください。 |
Statistical averaging (統計的平均化)
このResult control項目により、エクスポートされた非定常出力の平均が、 Fraction from end (シミュレーション終了時からの割合)に対して計算されます。例えば、 Fraction from endが 0.2の場合、シミュレーションの終了時から20%以内の各フィールド値の平均が計算されます。
平均を計算するためにすべての時間ステップを取ることはできません。したがって、計算量を制限するために、2 (High)、4 (Moderate)、8番目 (Coarse)の時間ステップ(またはCustom)ごとに結果を保存するSampling interval (サンプリング間隔)をStatistical averaging (平均計算)に使用します。
設定パネルの残りの項目は、前述のTransient output (非定常出力)と同じです。
Snapshot (スナップショット)
このResult control 項目では、非定常結果の最終時間ステップを出力することができます。つまり、最終時間ステップ以外の中間結果は確認できません。
下図のように、設定項目はありません:
Forces and moments (力とモーメント)
このResult control項目は、境界上の圧力と表面摩擦を積分することにより、シミュレーションの過程でForces and moments (力とモーメント)を計算することができます。
以下のパラメータを指定する必要があります:
- Center of rotation (回転中心) : 回転中心は 一般的に構造物の重心と定義されます。シミュレーションによっては、回転中心を重心と異なる座標で定義すると便利な場合があります。
- Write control (書き込み制御), Fraction from end (終了からの割合): 上記と同様です。
-
Export statistical data (統計データの出力): オンに切り替えると、Forces and moments (力とモーメント)の統計データが出力されます。これには以下が含まれます:
- Minimum (最小)、Absolute minimum (絶対最小)
- Maximum (最大)、Absolute maximum (絶対最大)
- Average (平均)
- Standard deviation (標準偏差)
- Root mean square (二乗平均平方根)
- Group assignments (グループ割り当て): トグルをオンにすると、割り当てられたすべての面に作用するForces and moments (力とモーメント)の合計が計算されます。オフに切り替えると、各面に対して個別に計算が行われます。
Probe points (プローブポイント)
Probe points (プローブポイント)は、仮想の速度測定器(ホットワイヤーまたはピトー管)や仮想の圧力測定器(圧力タップ)のを設置するように、ポイントを指定して結果を出力することができます。さらに、これらのポイントに関する統計データをCSV形式で出力することもできます。
Probe points (プローブポイント)を指定するフォーマットは次のとおりです:
ラベル、X座標、Y座標、Z座標
下図はその例です:
これは、メモ帳(.txt)、Excel、または.csv形式でエクスポートできるスプレッドシートソフトウェアで簡単に行うことができます。
| Export frequency (出力の間隔)より大きな時間ステップ |
|
時間ステップがExport frequency (出力の間隔)より大きい場合、データは時間ステップサイズの割合で返され、警告が表示されます。これは、インターフェースでExport frequency (出力の間隔)とは異なる周波数でスペクトル分析を行う場合に注意が必要です。これはすべてのResult control項目に当てはまります。
|