Incompressible (LBM) は大規模なモデルにおける空力特性や屋外の風流れを非定常で解析するシミュレーションに利用します。マッハ数は0.3未満で、ジオメトリが大規模で複雑な場合に最適です。
図1: Incompressible (LBM)で解析した「江南地区」の非定常風環境解析の結果。カラーコンターは流速分布を表します。
Incompressible (LBM) は、格子ボルツマン法 (Lattice Boltzmann method, LBM) に基づくソルバーを使用しており、GPUを用いた並列計算が可能なため、高速かつ高精度な解析結果が得られます。(Numeric Systems GmbH開発のPacefish®1を使用しています。)このため、従来は数日あるいは1週間以上かかっていた解析を数時間という解析時間に短縮できます。
注意:現在、Incompressible (LBM) はアドオンとして提供されています。Professionalプランのみの契約では利用できません。ご利用を検討されている場合は、営業窓口までお問い合わせください。
SimScaleでの設定手順を示していきます。具体的な設定手順はこちらのチュートリアルも参考にしてください。
Incompressible (LBM)シミュレーションの作成
Create Simulationから解析の種類を選択できます。Incompressible (LBM)は、下図で矢印で表示されています。
図2: Create Simulationの画面
Incompressible (LBM)を選択してCreate Simulationボタンをクリックすると、ワークベンチ左側のパネルにシミュレーションツリーが新たに作成されます。このページでは、それぞれの設定項目の概要を紹介していきます。
図3: Incompressible (LBM)のシミュレーションツリー
Global Settings
シミュレーションツリーの最上位に表示されるシミュレーションの名前(図3でいうとIncompressible (LBM))をクリックすると、グローバル設定の設定パネルが表示されます。Incompressible (LBM))で設定できる項目は以下の通りです。
-
Turbulence model (乱流モデル):以下から選択します。
- LES Smagorinsky
- LES Smagorinsky (direct)
- Laminar
- k-omega SST
- k-omega SST (DDES)
- k-omega SST (IDDES)
詳細は、こちらのページの該当する項目をご確認ください。
Geometry
Geometryでは、解析で使用するジオメトリ(CADモデル)を選択します。
LBMソルバーを利用する解析タイプ(Incompressible LBMとPedestrian wind comfort)では、CADデータをアップロードする際に、Optimize for LBM / PWCをオンにすることが推奨されます。これにより、stlファイルをアップロードする際にLBMソルバー用に最適化されるほか、形状に関する処理がスキップされるため大規模で複雑なモデルを比較的高速にインポートできます。
図4: CADのアップロード画面。矢印で示す項目がptimize for LBM / PWCです。
External Flow Domain
ここでは、仮想的な風洞となる直方体の解析領域を設定します。以下の項目を設定します。
-
Minimum
- 直方体領域を定義するための2点のうち、x, y, z座標が小さい点の座標。
-
Maximum
- 直方体領域を定義するための2点のうち、x, y, z座標が大きい点の座標。
-
Rotation point
- 直方体領域の回転中心の座標。デフォルトではxyz軸に平行な直方体となりますので、斜めに向ける必要がある場合に使用します。プローブポイント機能でビューア内で座標を取得することも可能です。
-
Rotation angles
- 直方体領域の回転角。Rotation pointと同様に、領域の回転が必要な場合に角度を設定します。向きは右手の法則に従います。
- この設定から領域自体を回転させることで、風向を変更にもご利用いただけます。
図5: External flow domainの設定パネル
設定には、以下の寸法も目安としてご利用くただい。
図4: 仮想風洞の設定寸法
- 目安1: 中サイズ
- H, S, I = 3h
- O = 9h
- 目安2: 大サイズ
- H, S, I = 5h
- O = 15h
ここで、H, S, I, Oは図に示す箇所の寸法です。hは、Ground heightを基準に計算された、ジオメトリ内で最も高い建物の高さです。また、図のrは着目したい範囲(RoI)の半径です。
なお、実際の計算では解析領域の大きさは指定値よりも僅かに大きくなる場合があります。これは、ソルバーでx, y, z各方向のセル数が4の倍数であることが要求されており、それを満足するための修正が行われているためです。
Material: Air
Incompressible (LBM)では現状、流体は空気のみ対応しています。ただし、気体であれば物性値を設定して空気以外の気体や、温度が異なる場合を表現できます。
図6: LBMソルバーでの流体(空気)の物性の設定
Boundary Conditions
Boundary conditions (境界条件) では、解析を行う系が周囲の環境からどのような影響を受けているかを、境界面の状態を設定することで定義します。
Incompressible (LBM)では他の解析タイプと異なり、解析領域周囲の6面がA~Fでラベル付けされ、役割が予め設定されています。基本的には、このラベルに従って設定していきます。(変更もできます。)デフォルトで設定されている境界条件は以下の通りです。
-
Velocity inlet (A)
- 流入境界 (Velocity inlet)。(U) Velicityで流速を設定します。テーブル形式で、高さに応じた速度も設定可能です。
-
Pressure outlet (B)
- 流出境界 (Pressure outlet)。設定項目はありません。
-
Side (C)
- スリップ壁境界。(U) VelicityでSlip, No-slip, Moving wallを変更できます。変更した場合は、壁境界の種類に応じた設定を行えます。
-
Side (D)
- Side (C)と同様です。
-
Ground (E)
- ノンスリップ壁境界。(U) Velicityで異なる壁境界に変更して、変更に応じた設定が可能です。
-
Top (F)
- Side (C)と同様です。
設定できる境界条件のタイプについては、下記のリンク先ページをご覧ください。
- Velocity inlet / outlet (速度流入/流出境界)
- Pressure (圧力境界)
- Wall (壁境界)
- Periodic (周期境界)
- Atmospheric boundary layer (大気境界層) (英語)
注意:流体領域周囲の面以外、すなわちインポートしたCADジオメトリの表面については、自動的にノンスリップ境界が設定され、表面での流速がゼロとなります。
Simulation Control
シミュレーションに関する全般的な設定を行います。Incompressible (LBM)では以下の項目を設定できます。
- End time: 非定常解析を行う時間幅を設定します。
- Maximum runtime: クラウドの計算リソースで計算を行う、実時間における最大計算時間を設定します。計算時間がここで設定した値に達すると、自動的に計算が中断されます。意図せずにGPU時間を使いすぎないために設定します。
設定の仕方について、こちらの記事(英語)でより詳細に説明されています。
Advanced Modelling
Advanced modellingでは、以下の機能・項目を設定できます。
- Surface roughness (表面粗さ)
- Porus objects (ポーラスメディア)
- Rotating walls (回転壁)
詳細は、こちらのページの該当する項目をご確認ください。
Result Control
Result controlでは、ユーザーは解析結果の出力について設定できます。Incompressible (LBM)では、モデル自体が大規模なおかつ非定常計算であることから、素の結果データのサイズは膨大です。そのため、データ量節約の観点で他の解析タイプとは異なる設定項目となっています。
データ容量の限度に達してしまった場合、以下のエラーメッセージが表示されます。この場合はこれ以上データの出力ができないため計算をキャンセルし、 Result control の設定を変更して結果データのサイズが小さくなるように変更してください。
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.
詳細は、こちらのページをご確認ください。
Mesh settings
解析領域を数値計算で扱うために空間的な離散化手法として、メッシュ分割が行われます。メッシュはセルとも呼ばれます。Incompressible (LBM)では格子ボルツマン法に基づくソルバーを利用するため、SimScaleで利用できる他の有限体積法に基づくCFDソルバーとはメッシュ分割が異なります。具体的には、直交座標系に沿う形で立方体メッシュ分割が行われます。このメッシュは、建物や地形といった解析対象のジオメトリ形状に沿う必要はありません。
メッシュの特性は、Pedestrian Wind Comfort解析タイプでのメッシュと概ね同じですので、詳細はこちらのページをご確認ください。ただし、Region of interest と Reference lengthが異なるロジックで計算されますので注意してください。
Mesh settingsがAutomaticとManualの場合で、設定パネルの項目が変化します。
図7: AutomaticとManualで異なるMesh settingsの設定パネル
Mesh settings: Automatic の場合
-
Fineness
- メッシュの密度です。Very coarse (非常に粗い) から Very fine (非常に細かい) まで変更できます。Target sizeとした場合は、Minimimcellsize (最小メッシュサイズ)を設定できるようになります。これによって、Region of interest (注目している領域) 内の最小メッシュサイズの上限を定められます。実際に計算に用いられた大きさは、解析Runのパネルで確認できます。
-
Reference length computation
- 解析で注目しているジオメトリの最大サイズです。例えば構造物であれば、高層ビルの高さや、スタジアムの水平方向長さとなります。イメージ図を下図に示します。Automaticとした場合は、アルゴリズムで自動で決定され、Valueとした場合は値を手動で入力します。
図8: Reference lengthのイメージ図
- Region of interest: 解析領域内で注目している領域です。Part(s)とした場合は、面あるいは、ジオメトリからパーツを指定します。Regionとした場合は、Geometry primitivesを使用します。
Mesh setting: Manualの場合
-
Fineness
- Automaticの場合と同様に、メッシュの密度を指定します。ただし、Target sizeは使用できません。
-
Reference length
- Automaticの場合と同様です。
-
Reynolds scaling factor
- SimScaleでは、Reynolds scaling factor (RSF)を用いて、フルスケールのジオメトリに対してスケーリングを適用します。これは、亜音速流を考慮するために縮小した建物モデルを用いる際に必要です。
- 詳細は、こちらのページの該当する項目をご覧ください。
Progressive Refinement
Progressive refinementオプションにより、計算量の消費を抑えながら、結果に大きな影響を与えることなく、シミュレーションを大幅に高速化(通常35~45%)することができます。
シミュレーションの初期段階では、一様流速がゼロに等しいという初期条件があるため、流れ場は領域を通して発達する必要があります。 そのため、粗いメッシュを使用して流れ場を素早く発達させ、最終的にシミュレーション実行の終盤で完全に細分化されたメッシュに移行することで効率よく計算することを意図しています。
図9: Progressive refinementの設定パネル
Progressive refinementを有効にした場合、ユーザーはBase refinement fractionとFull refinement fractionを指定する必要があります。
Progressive refinementを使用する場合、シミュレーションの初期段階では、ユーザがメッシュ設定で最初に指定したものよりも2段階粗いベースメッシュを使用して実行されます。 このベースメッシュは、シミュレーションの初期段階から、ユーザーが定義したBase refinement fractionまで使用されます。 そのため、デフォルト設定の0.4は、シミュレーション実行の最初の40%でベースメッシュが使用されることを示しています。
Full refinement fractionは、完全細分化メッシュで実行されるシミュレーション実行の割合を示します。 デフォルト設定の0.3は、シミュレーションの最後の30%が完全細分化メッシュで実行されることを示します。
ベースメッシュと完全細分化メッシュの間では、メッシュサイズの漸進的な移行が行われます。完全細分化メッシュが使用され始めて少なくとも5%後のデータから、解析結果として用いることを推奨します。
このことを念頭に置いて、Full refinement fractionは、Result controlで定義されたFraction from endよりも少なくとも0.05大きくするようにしてください。
図10: Transient output やStatistical averagingのFraction from endは、Full refinement fractionより少なくとも0.05小さくなるように設定してください。
下の画像は、単純な建物形状を参考に、完全細分化メッシュと、1段階粗いメッシュ、2段階粗いメッシュの比較です。
図11: 完全細分化メッシュ
Progressive refinementの範囲では、完全細分化メッシュの最も細かいメッシュ要素を粗くすることによって、1段階粗いメッシュが生成されます:
図12: 完全細分化メッシュより1段階粗いメッシュ
ベースメッシュ(完全細分化メッシュより2段階粗いメッシュ)も同様に以下のようになります。
図13: Progressive refinement を使用した時のシミュレーション初期に利用されるベースメッシュ(完全細分化メッシュより2段階粗いメッシュ)
Refinements
Region refinement
特定の建物や部品の間、あるいは領域についてメッシュの細分化が必要な場合に使用します。SizingをAutomatic mesh sizingとした場合とManualとした場合で、Mesh settingsと同様に設定項目が異なります。
- Automatic mesh sizingとした場合、Fineness (メッシュ粗さ) を選択します。
- Manualとした場合、Target resolutionで目標とする長さスケールを設定します。
なお、Geometry primitivesの横の+アイコンからはメッシュ細分化の設定を適用するCartesian boxとShpereを設定できます。
図14: Region refinementの設定パネル
Surface refinement
特定の建物やパーツの表面を指定してメッシュの細分化を行いたい場合に使用します。設定した面に対して、メッシュサイズを変更します。数レイヤーは設定したサイズになり、設定した面から離れるに従って、メッシュサイズは徐々にMesh settingで設定した全体のメッシュサイズに近づいていきます。
- SizingをAutomatic mesh sizingとした場合、設定項目はRegion refinementと同様です。ただし、領域ではなくてビューアで面をクリックするか、シーンツリーでジオメトリを指定します。
- SizingをManualとした場合、Region refinementと同様の項目に加えて、メッシュ細分化を適用するレイヤーの数を方向ごとに指定できます。
図15: Surface refinement の設定パネル
文献
関連する記事
Incompressible (LBM) に関連する記事は、解析タイプ: Incompressible (LBM) タグの検索結果からご覧いただけます。