PLATEAU & Unreal Engine & 流体解析に挑戦してみた結果【第2回:CADモデル、メッシュ作成】
こんにちは、エヌデーデーの富永です。
国土交通省のPLATEAUが提供している3D都市モデルを利用してビル風の流体解析を行い、その結果をUnreal Engine上で表現することに挑戦しました。
第2回の本記事では、第1回においてBlenderで加工した3DモデルをCADソフトに取り込み、流体解析用にモデルを成形してメッシュ生成ソフトでメッシュ分割を行っていきます。
- 【第1回:PLATEAUの3DモデルをBlender経由でUnreal Engineに取り込む】
- 【第2回:CADモデル、メッシュ作成】←この記事
- 【第3回:流体解析ソフトでビル風のシミュレーションをする】
- 【第4回:流体解析結果をUnreal Engineで可視化する】
- 【第5回:風速データをUnreal Engineのシミュレータに反映する】
Blenderから出力してCADソフトに取り込む
第1回においてBlenderで加工した3Dモデルを今回はSTL形式で保存します。ここでTransformのForwardをZ Forward、UpをY Upに変更すると、この後利用するCADソフト上でもBlenderと同じ座標系で表示されます。(今回はここを変更しなかったため、この後利用するCADソフト上ではインポート時に90度倒れた状態で表示されます)。CADソフトではY方向が高さ情報を示すことが多いようです。
今回はAnsysのSpaceClaimと呼ばれるCADソフトを利用します。SpaceClaimを立ち上げてSTLファイルを選択してインポートします。
CADソフト上で流体解析用にモデルを成形する
STLファイルを取り込むと3Dデータはファセットとして表示されます。ファセットとはライン情報だけで面が構成されているデータのことです。このファセットをソリッドに変換します。ソリッドとは頂点、線分、面で構成される、体積を持った立体モデルのことを指します。
ファセットを右クリックして「ソリッドに変換」→「面のマージ」を選択するとソリッド化されます。ソリッド変換によりビルごとにソリッドが作成されます。面のマージを選択することで余分な分割線を削除することができます。
次に底部のエレベーション(高度)を同じ位置にします。実際の地表は傾斜や凹凸がありますが、ここでは簡易化して水平な地表面を想定することにします。今回は4つの建物のうち底部エレベーションが最も高いビル(下図の黄色で表示された構造物)のエレベーションに揃えました。
続いて解析範囲を表現するための空間を用意します。今のモデルではどこから風が吹くかを指定できないので、ビル群を囲うような箱を用意します。この箱が解析領域の境界となり、この境界部分から○○m/sの流速の風を流すことで流体解析を行うことができます。今回は東西方向及び南北方向が250m、高さ方向が200mの範囲を解析空間としました。
今回用意したモデルにはわずかな凹凸が存在するため、この後作成するメッシュに非常に小さな領域が生じる可能性があります。微小な領域が存在すると計算速度が遅くなることや計算が不安定になる場合があります。それを考慮して、解析に与える影響がそれほど大きくないと予想される凹凸に関しては、凹凸が滑らかになるように3Dモデルを修正していきます。
流体解析を行う際にはそれぞれの表面に対して流体が流れ込む場所なのか、或いは単なる壁面なのかなどを指定する必要あります。そのため、CADモデル作成時点で各表面に名称付けを行い、解析時に表面条件が指定できるようにします。
以上でCADソフトによる流体解析用のCADモデル作成は完了です。最後にscdoc形式でデータを出力します。
流体解析用モデルのメッシュ分割
メッシュ作成はAnsys Meshingを利用します。 メッシュ分割とは解析対象を三角錐や直方体の小さい領域に分割することを指します。有限体積法を用いて流体解析を行うために必要な処理になります。
Ansys Meshingを立ち上げて先ほど作成したscdocファイルをインポートします。メッシュ作成の条件設定では、解析分野の選択をCFDに、使用ソルバーをFluentに指定します。今回の流体解析は比較的大まかなCADモデルを用いるため、インフレーション(境界層)の設定を追加する以外はデフォルトの条件としました。境界層とは、流体に接触する固体表面の近傍で、速度や温度が急激に変化する領域のことを指します。境界層の勾配を適切に表現するため、壁面に沿って層状のメッシュを作成しています。
流れが複雑になると想定される箇所、例えばビルとビルの間の領域は流体が入り乱れる様子が確認できるように、他の場所よりもメッシュを細かくしてより詳細な解析になるよう調整しています。
メッシュ分割を行ったらメッシュ品質を確認します。流体解析において、メッシュ品質として確認する指標は主に「歪度」や「アスペクト比」です。「歪度」は、例えば四面体のメッシュであれば、どれだけ正四面体に近いかを示す指標であり、正四面体に近いほど「歪度」は0に近づきます。0に近いほど良いメッシュと判断され、1に近いほど悪いメッシュと判断されます。「アスペクト比」はメッシュの縦と横の比率であり、正三角形や正方形に近いほど「アスペクト比」は1に近づきます。1に近いほど良いメッシュと判断され、極端に大きいと悪いメッシュと判断されます。
これで解析用のメッシュデータが完成しました。最後に流体解析ソフトで読み込めるようにmsh形式でデータを出力します。
次回はいよいよ流体解析ソフトでビル風のシミュレーションを行っていきます。