無料で使えて手軽な流体シミュレーション・ソフトウェア
画像による2次元・3次元モデル構築
本ページでは2022R3.3以前の古いバージョンのFlowsquqare+による手順を記載しています。最新バージョン(2023R1.0以前)の操作手順は、こちら。
1.はじめに
Flowsquare+で用いる入力ファイルは、各パラメータを指定するコントロールファイル、境界条件(Boundary Condition, BC; 流入境界や壁などの流れ場のモデル形状)を設定するためのビットマップ画像ファイルとCADなどで作成した3次元モデルのSTLファイルから構成されます。ここで、画像ファイルやSTLファイルは必要に応じて片方または両方を用いることもあります。
本ページでは、複数のビットマップ画像から、2次元または3次元モデルを構築するための基本的なルールを説明します。
多くの場合において、ユーザーがゼロから入力ファイルを作成する必要はありません。公開されている数多くの例題から似たケースを探し出し、その入力ファイルに変更を加えることで、誰でも簡単に流体数値シミュレーションを実行することができます。以下では、入力ファイルの基本ルールについて説明します。
2.境界条件の設定ファイル名
壁や流入境界といった境界条件は、ペイントソフトなどで編集できるビットマップ画像を用いて指定できますが、これらのビットマップ画像は、右図の様にXY断面、YZ断面、ZX断面を指定する画像から構成され、それぞれ、bcXY#.bmp、bcYZ#.bmp、bcZX#.bmpというファイル名を持ちます。#には0~9までの数字が入り、異なる数字のファイルを作成することで、断面図を各方向最大10枚まで同時に用いることができます(例:bcXY0.bmp, bcXY1.bmp, ..., bcXY9.bmp)。ただし、2次元シミュレーションでは、XY断面図1枚(bcXY0.bmp)のみの利用です。
3.ペイントカラーの役割
境界条件の種類は、(R, G, B)色コードで指定します。流入境界は、
- 青色(0, 0, 255)
- 赤色(255, 0, 0)
- 緑色(0, 255, 0)
- 黄色(255, 255, 0)
- シアン色(0, 255, 255)
- マゼンタ色(255, 0, 255)
で指定します。これらの色は、各色に関連する解析パラメータの与え方次第で壁条件や流出(吸引)境界とすることも可能です。
物体を構成する(個体)壁境界条件は、
- 黒色(0, 0, 0)
で指定することができます。
- 白色(255, 255, 255)
の領域は、流体領域または自然流入・流出(開放)境界となります。これらの 青、 赤、 緑、 黄色、 シアン色、 マゼンタ色、 黒、 白色 はいずれもプリセット色(既定の色)と呼ばれます。これらのプリセット色以外(非プリセット色)は、全て黒色と同様の壁境界を構成する要素となります。最新のFlowsquare+では、プリセット色及び非プリセット色を合計50色まで指定できます(R2021.2.0以前のバージョンでは19色まで)。
以下の図は、2次元シミュレーションにおける境界を指定した境界条件ファイル(bcXY0.bmp)の例です。上記のルールに基づき、左側の境界から右へ流体が流入し、上下を壁に囲まれた中に、左向き矢印形状の物体が存在する場合の流れ場を指定しています。左に位置する(流入)境界条件をプリセット青色で、上下の壁をプリセット黒色で、真ん中の矢印形状物体を非プリセット色紫色で定義しています。本2次元境界条件ファイルを用いたシミュレーションの例題は、こちらに紹介しています。
4.モデル構築のルール
複雑な3次元形状も、比較的単純な3次元要素形状の合成で構築することが可能です。以下では、この3次元要素形状の構築に用いるいくつかの手法について説明します。これらの手法として、
- (a) 2次元断面を持つ3次元形状
- (b) 3面図において指定される3次元形状
- (c) 左右対称な3次元形状(シンメトリック)
- (d) 滑らかに変化する断面形状を有する3次元形状(ストレッチング)
- (e) 上記で構築される3次元形状の反転処理によるモデル構築(インバース)
- (f) 上記のテクニックで構築される複数の要素形状から構成される3次元モデル
の6つがあります。Flowsquare+では、上記のプリセットカラー及び非プリセットカラーの各色に対して(a)~(f)の手法を適用することで、比較的複雑な3次元モデルを構築することができます。これらの基本テクニックを活用して構築できるモデルに基づく実際のシミュレーション例は、解析例のページをご覧ください。
(a) 2次元断面を持つ3次元形状
最も簡単な例は、一様な2次元断面を持つ3次元物体です。一様な2次元断面を持つ3次元物体とは、円柱や角柱のように、一つの断面形状のみを持つ柱状の物体のことです。このような物体は、柱方向に垂直な断面図(例:柱がZ方向に伸びている物体であれば、XY断面図)1枚のみ準備することで構築できます。以下の画像はそのような手法で構築した典型的な3次元形状を示します。
(b) 3面図において指定される3次元形状
上記のような2次元断面を持つ物体に3面図の要領で制約を加えることで、より3次元的な形状を構築できます。この場合、2つ以上の断面図(例:XY断面図1枚およびYZ断面図1枚)を設定します。各画像のピクセルサイズ・縦横比は、自動的に補間により調整されますので、特に気にする必要はありません。以下の画像はそのような手法で構築した典型的な3次元形状を示します。
[(b) 補足]
ここで、ある色に対応する3次元モデルは、その色が用いられた全ての平面図の共通部分から構築されます。したがって、下の例のように、3次元物体はXY平面とYZ平面とで重なり合う紫色の領域のみに構築され、どちらかの平面のみが紫色である領域は無視されます。3平面に紫色の領域を指定する場合は、その全ての平面で重なり合う紫色の領域のみモデルが構築されます。(c) 左右対称な3次元形状(シンメトリック)
左右対称な形状を構築する場合、シンメトリック機能を用いることで、効率的にモデル構築が行えます。シンメトリック機能では、領域中心を通るXY、YZ又はZX平面のいずれかを選択し、選択した断面に対して対称な形状を構築します。以下の画像は、領域中心を通るXY平面に対称な物体を構築した例です。
(d) 滑らかに変化する断面形状を有する3次元形状(ストレッチング)
Flowsquare+では、上記手法で設定できる比較的単純な形状だけではなく、スムーズに変化する断面形状を持つ複雑な完全3次元物体も指定することができます。それを可能にする機能をストレッチ機能※1と呼びます。ストレッチ機能では、用意したXY、YZ又はZX断面画像のいずれかを選択し、この選択された断面図に描画されている形状を他の断面形状(XY及び/又はZX断面図)のサイズに対応してスムーズに伸張させることで、3次元形状を構築します。以下の画像はYZ断面形状をXY及びYZ断面形状に沿ってストレッチすることで構築できる典型的な3次元形状を示します。
(e) 上記で構築される3次元形状の反転処理によるモデル構築(インバース)
Flowsquare+では、上記手法で構築できる形状の裏表を反転することで実現される形状構築を行うことが可能です。この機能をインバースと呼び、境界条件定義用画像ファイルの読み込み画面で本オプションを各色に対して選択することが可能です。
以下のGIF動画では、bcXY0.bmpとbcZX0.bmpにより構築されたモデル形状に対し、インバース処理の有無によりどのような違いがあるかを比較しています。インバース処理により、モデル形状そのものは不変ですが、反転しているため、流体側(表)と固体側(裏)の領域が反転しています。流体側及び固体側の見分け方として、ツール・メニューの3Dライティング を用いた場合、裏面は、光の反射を計算せずに黒でレンダリングされます。また、ツール・メニューから、ゴースト・固体領域の表示 を選択することで、XY、YZ、ZX断面内の固体側の壁面近傍領域に白または灰色のポインタが表示されます。
(f) 上記のテクニックで構築される複数の要素形状から構成される3次元モデル
Flowsquare+では、上記手法で設定できる比較的単純な形状(要素形状)だけではなく、それらを合成することで実現される3次元形状を構築することができます。この機能をカラーリング機能※1と呼びます。カラーリング機能では、それぞれの要素形状を別の色を用いて、構築することで実現されます。下の図は、このカラーリング機能を用いて、上記の(b)3面図のテクニック(以下bcXY1.bmp、bcYZ1.bmp)及び(d)ストレッチングのテクニック(以下bcXY0.bmp、bcYZ0.bmp、bcZX0.bmp)を用いて構築される要素形状を合成して構築した3次元モデルを示します。
5.各色への構築ルールの適用方法
上記(c)、(d)及び(e)の構築ルールを適用するには、境界条件画像ファイルの読み込み画面において、各色に対してシンメトリック平面、ストレッチング断面画像やインバースを選択します。これらの構築ルールを適用しない場合は、それぞれOFFを選択します(規定値)。これらの選択履歴は、該当プロジェクト・フォルダのinput/bmp.txtに記録され、次回同じプロジェクトの実行時に自動的に選択肢が反映されます。
- 色情報
境界条件ファイルにて用いられている色及びその色のRGB情報。黒、青、赤、緑のプリセットカラーのみ使用されていなくても表示される。 - Strtch
対象の色に対してストレッチング(Strtch)を適用する場合のストレッチング平面を選択。この平面内に描画されている断面形状を、他の平面内の該当色の断面形状に合わせるようにストレッチされる。 - Symmtr
対象の色に対してシンメトリック(Symmtr)を適用する場合のシンメトリック対称平面。領域中央を通るこの平面に対して対称な形状を構築する。 - Invers
対象の色に対してインバース(Invers)を適用するか否か。適用すると、上記(a)~(d)を用いて構築された形状の裏表を反転する(流体側と固体側が入れ替わる)。