【文献】
Xiao F,A simple algebraic interface capturing scheme using hyperbolic tangent function,Int. J. Numer. Meth. Fluids,2005年 4月 7日,No.48,pp.1023-1040
【文献】
伊井 仁志,THINC法を発展させた多次元連続関数を用いる界面捕獲手法の提案,第23回計算力学会講演会CD-ROM論文集,日本機械学会,2010年 9月25日,No.10-2,pp.29-30
【文献】
李 光浩,新たな代数的な気液混相流の境界追跡法の提案,土木学会中部支部研究発表会講演概要集,2012年 3月,pp.137-138
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0024】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0025】
<ハードウェア構成>
図1は、この発明の実施の形態に従うシミュレーション装置を実現するための代表的なハードウェア構成であるコンピュータ100の概略構成図である。
【0026】
図1を参照して、コンピュータ100は、FD(Flexible Disk)駆動装置111およびCD−ROM(Compact Disk-Read Only Memory)駆動装置113を搭載したコンピュータ本体101と、モニタ102と、キーボード103と、マウス104とを含む。
【0027】
コンピュータ本体101は、FD駆動装置111およびCD−ROM駆動装置113に加えて、相互にバスで接続された、演算装置であるCPU(Central Processing Unit)105と、メモリ106と、記憶装置である固定ディスク107と、通信インターフェース109とを含む。
【0028】
本実施の形態に従うシミュレーションは、CPU105がメモリ106などのコンピュータハードウェアを用いて、プログラムを実行することで実現される。一般的に、このようなプログラムは、FD112やCD−ROM114などの記録媒体に格納されて、またはネットワークなどを介して流通する。そして、このようなプログラムは、FD駆動装置111やCD−ROM駆動装置113などにより記録媒体から読取られて、または通信インターフェース109にて受信されて、固定ディスク107に格納される。さらに、このようなプログラムは、固定ディスク107からメモリ106に読出されて、CPU105により実行される。
【0029】
CPU105は、様々な数値論理演算を行なう演算処理部であり、プログラムされた命令を順次実行することで、本実施の形態に従う制御機能を提供する。メモリ106は、CPU105のプログラム実行に応じて各種の情報を記憶する。
【0030】
モニタ102は、CPU105が出力する情報を表示するための表示部であって、一例としてLCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)などから構成される。すなわち、モニタ102には、シミュレーション結果などが表示される。
【0031】
マウス104は、クリックやスライドなどの動作に応じたユーザから指令を受付ける。キーボード103は、入力されるキーに応じたユーザから指令を受付ける。
【0032】
通信インターフェース109は、コンピュータ100と他の装置との間の通信を確立するための装置であり、各種データを外部から受付可能である。
【0033】
なお、上述したようなコンピュータに代えて、その一部または全部を専用のハードウェアによって実現してもよい。
【0034】
また、コンピュータ100を本実施の形態に従うように機能させるプログラムが記録される記録媒体は、上記したFDやCD−ROMに限定されない。記録媒体の他の例としては、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリ、メモリカード、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体が挙げられる。
【0035】
<本実施の形態のシミュレーション方法の概要>
上記したように、自由界面の再構築に関し、従来、THINC法およびTHINC/WLIC法が提案されている。一方、本実施の形態のシミュレーション方法は、THINC法において値を固定されていた定数(β)を、法線ベクトルから各輸送方向に対する勾配として設定する。
【0036】
このことから、本明細書では、まず、本実施の形態のシミュレーション方法の前提となるTHINC法およびTHINC/WLIC法について説明した上で、本実施の形態のシミュレーション方法を説明する。また、本明細書では、参考として、上記定数(β)を本実施の形態とは異なる態様で設定するTHAINC(tangent of hyperbola with adaptive function for interface capturing)法についても説明を行なう。
【0037】
なお、本明細書では、本実施の形態のシミュレーション方法を、適宜「THAINC_M(tangent of hyperbola with adaptive function for interface capturing_modified)法」と呼ぶ。
【0038】
また、本明細書では、シミュレーションにおいて定義される軸として、主にx軸とy軸の2軸を想定して説明がなされる。つまり、2次元でのシミュレーションが主に説明される。ただし、本実施の形態において開示されるシミュレーション方法は、公知の技術に従って3次元に拡張可能である。なお、3次元への拡張の方法については、公知の技術を採用可能であるため、ここでは説明は繰り返さない。
【0039】
<THINC法>
図2は、THINC法による、一次元の占有率の変化を示す図である。THINC法は、
図2に示されるように、平滑化された双曲線正接関数を利用している。なお、
図2の破線は、体積追跡法による変化を示している。
【0040】
THINC法では、特殊関数(characteristic function)として、次の式(2)が使用される。
【0042】
式(2)において、γは次の式(3)で表されるように、n
x,iの値に応じて「1」または「−1」の値をとる。
【0044】
式(3)のn
x,iは、法線ベクトルのx成分であり、計算対象とするセルを3×3の格子状の中心に置いた場合の、残りの9個のセルの占有率αに基づいて算出される。具体的には、
図3に示すように3×3の格子状の9個のセルを想定する。各セルの占有率は、上段では、左から、順に、α
i−1,j+1、α
i,j+1、α
i+1,j+1である。中段では、左から、順に、α
i−1,1、α
i,j、α
i+1,jである。下段では、左から、順に、α
i−1,j−1、α
i,j−1、α
i+1,j−1である。そして、これらの占有率に基づき、次の式(4−1)〜式(4−4)および式(5)から、n
x,iが算出される。なお、これらの式における、「NXRT」「NXLT」「NXRB」「NXLB」は、それぞれ、
図3に示される、中心のセルの4個の頂点における、x軸方向に微小距離移動したときの占有率の変化量を示している。式(4−1)において、「NXRT」は、中心セルの右上部分の占有率の変化量を表している。式(4−2)において、「NXLT」は、中心セルの左上部分の占有率の変化量を表している。式(4−3)において、「NXRB」は、中心セルの右下部分の占有率の変化量を表している。式(4−4)において、「NXLB」は、中心セルの左下部分の占有率の変化量を表している。
【0047】
式(2)に戻って、βは、
図2に示された双曲線正接関数の傾きを定めるパラメータである。一般的には、βとして、3.5という固定された値が採用される。
【0048】
式(2)中の「x
i〜」は、式(2)のχ(x)の平均を用い、次の式(6)に従って算出される。なお、本明細書では、チルダ記号が「〜」で表現される。
【0050】
つまり、上記のように設定されたγ,βを用いて式(2)のχ(x)が構築され、そして、式(6)に基づいて、「x
i〜」が算出される。
【0051】
<THINC/WLIC法>
THINC/WLIC法では、x方向の流束は、式(7)に従って算出される。なお、式(7)中の「RF」はRight Faceを意味する。つまり、右端の面(後述する
図5のuで示された黒丸が位置する縦線が存在する面)を意味し、より具体的にはセル番号「i+1/2」を意味する。
【0053】
式(7)の右辺において、第1項はTHINC法に従った流束であり、第2項はUPWIND法(一次風上法)に従った流束である。
【0054】
式(7)において、ω
x,iは、次の式(8)に従って算出される。
【0056】
式(8)において、n
x,iは、上記のように、式(4−1)〜式(4−4)および式(5)から算出される。また、n
y,iは、
図3のような9個のセルの占有率に基づき、次の式(9−1)〜式(9−4)および式(10)から算出される。
【0059】
つまり、THINC/WLIC法では、
図4に示されるように、n
y,iが0の場合には、式(8)に従ってω
x,iが1になり、これにより、x方向の流束は式(7)の右辺の第1項のみに基づいて算出される。また、n
x,iが0の場合には、式(8)に従ってω
x,iが0になり、これにより、x方向の流束は式(7)の右辺の第2項のみに基づいて算出される。
【0060】
そして、これらの場合の間の状態では、式(8)において、速度ベクトルのx成分とy成分の割合に応じてω
x,iが算出される。これにより、x方向の流束は、算出されたω
x,iの値に基づき、式(7)の右辺の第1項と第2項が式(7)に従って組み合わされて、算出される。なお、式(7)の右辺の第1項は、THINC法による流束の算出に対応し、第2項は、UPWIND法による流束の算出に対応する。
【0061】
<THAINC法>
本実施の形態の比較例のシミュレーション方法であるTHAINC法について説明する。THAINC法は、THINC法において値を固定されていた定数(β)を、軸ごとに設定された定数(後述するβu,βl)を用い、さらに、占有率を考慮する流体の速度ベクトルにおける軸ごとの寄与度(後述するω)に基づいて設定する方法を挙げる。
【0062】
図5は、THAINC法の概略を説明するための図である。
図5を参照して、THAINC法は、式(2)で示されたTHINC法の特殊関数において、変数βの設定方法に特徴を有する。
【0063】
具体的には、変数βを、
図5中の式(11)として示されるように、β
uとβ
lとω
x,iとを用いて算出して、設定する。β
uとβ
lの値は、たとえば固定ディスク107に格納されている。
【0064】
β
uは、従来βとして利用されてきた値3.5よりも界面付近を急激に変化させる値であり、たとえば10とされる。なお、
図5のβ
uは、式(2)においてγ≧0の場合の結果が示されている。β
lは、従来βとして利用されてきた値3.5よりも界面付近の変化を緩くさせる値であり、たとえば0.001とされる。
図5には、β
uとβ
lのそれぞれが式(2)中のβとして利用された場合の、界面付近の占有率の変化が示されている。
【0065】
THAINC法によれば、βは、法線ベクトルの大小関係(2次元シミュレーションであれば、n
x,iとn
y,iの大小関係)に応じて設定される。
【0066】
具体的には、n
x,iがn
y,iに比べて大きいときには、つまり、セルの速度ベクトルのx成分がy成分よりも大きい場合には、当該セルの再構築において、従来よりも、x方向の界面の流体の占有率の変化をより急激にするように、βが設定される。式(11)に従ったβの設定において、β
uの方がβ
lよりも大きい割合で反映されるからである。
【0067】
一方、n
x,iがn
y,iに比べて小さいときには、つまり、セルの速度ベクトルのx成分がy成分よりも小さい場合には、当該セルの再構築において、従来よりも、x方向の界面の流体の占有率の変化がより緩やかになるように、βが設定される。式(11)に従ったβの設定において、β
lの方がβ
uよりも大きい割合で反映されるからである。
【0068】
つまり、本実施の形態に従った界面の再構築では、複数の軸を対象とする場での速度ベクトルにおける、再構築の軸方向の成分の寄与度(本実施の形態では、n
x,iとn
y,iの和に対するn
x,iの寄与度)が、より大きく反映されることになる。
【0069】
THAINC法における計算フローは、
図7を参照して説明された本実施の形態のシミュレーションにおける計算フローと同様とすることができる。
【0070】
つまり、まずステップS10において、各セルの占有率αと速度vの初期値が読み込まれ、ステップS20で、各セルの速度vならびに当該速度のx方向およびy方向の法線ベクトルが算出され、ステップS30で、最新の占有率αについての「∇α」が算出され、ステップS40で、各セルの占有率αと速度vの積についての「∇αv」が算出され、ステップS50で、各セルの占有率αに対してΔt後の占有率αが算出され、そして、ステップS60で、最新の占有率αに基づいて、式(3)に従ってγを算出し、式(11)に従ってβが算出され、式(2)および式(6)に従って「xi〜」が算出されることにより、各セルの界面が再構築される。
【0071】
そして、ステップS70で、シミュレーションの期間(Δtの総和)T
sumが指定された期間Tを超えると、処理が終了する。
【0072】
THAINC法についても、3次元シミュレーションへの拡張は、周知の技術を採用することによって実現可能であるため、ここでは詳細な説明は繰り返さない。たとえば、ω
x,iは、3次元シミュレーションでは、次の式(12)に示されるように、x軸方向の法線ベクトルn
x、y軸方向の法線ベクトルn
y、および、z軸方向の法線ベクトルn
zを用いて表される。
【0074】
<本実施の形態の計算方法>
本実施の形態の計算方法では、基本的には、THAINC法に従った計算方法で、各セルの再構築が行なわれる。
【0075】
図6は、本実施の形態の計算方法の概略を説明するための図である。
図6を参照して、本実施の形態の計算方法は、式(2)で示されたTHINC法の特殊関数において、変数βの設定方法に特徴を有する。具体的には、変数βを、
図6中に式(13)として示されるように算出して、設定する。
【0076】
式(13)には、k軸(シミュレーションにおいて定義される軸の1つ)方向の再構築に利用されるβが示されている。jは、式(13)でのみ、シミュレーションにおいて定義される直行座標軸のk軸以外の軸を意味する。「k」は、式(13)でのみ、軸を表す文字として使用される。
【0077】
次の式(14)〜式(16)に、シミュレーションモデルが、1次元モデルの場合(1D)、2次元モデルの場合(2D)、3次元モデルの場合(3D)のそれぞれについてのβの算出式を示す。
【0079】
まず、シミュレーションモデルが1次元モデルである場合には、j軸が存在しないため、βは、式(14)に示されるように定数(3.5)とされる。
【0080】
シミュレーションモデルが2次元モデルである場合には、式(15)に示されるように、βは、x軸方向の法線ベクトルn
x、および、y軸方向の法線ベクトルn
yを用いて表される。具体的には、2次元シミュレーションにおいてx軸とy軸が定義されている場合、k軸がx軸であればj軸はy軸であり、k軸がy軸であればj軸はx軸である。そして、x軸方向の再構築に利用されるβ(つまり、β
x)は、n
xをn
yで除した値として算出される。また、y軸方向の再構築に利用されるβ(つまり、β
y)は、n
yをn
xで除した値として算出される。
【0081】
シミュレーションモデルが3次元モデルである場合には、式(16)に示されるように、βは、x軸方向の法線ベクトルn
x、y軸方向の法線ベクトルn
y、および、z軸方向の法線ベクトルn
zを用いて表される。具体的には、3次元シミュレーションにおいてx軸とy軸とz軸が定義されている場合、k軸がx軸であればj軸はy軸とz軸であり、k軸がy軸であればj軸はz軸とx軸であり、また、k軸がz軸であればj軸はx軸とy軸である。そして、x軸方向の再構築に利用されるβ(つまり、β
x)は、n
xをn
yとn
zの二乗の和の平方根で除した値として算出される。y軸方向の再構築に利用されるβ(つまり、β
y)は、n
yをn
zとn
xの二乗の和の平方根で除した値として算出される。そして、z軸方向の再構築に利用されるβ(つまり、β
z)は、n
zをn
xとn
yの二乗の和の平方根で除した値として算出される。
【0082】
<本実施の形態における計算フロー>
図7は、本実施の形態のシミュレーションにおける処理のフローチャートである。
【0083】
以下の説明では、シミュレーションの対象として、液体中の気体の移動を例示する。これにより、占有率αとして、各セルにおける気体の占有率が例示される。なお、本実施の形態のシミュレーション対象となる混相流における相の組合せはこれに限定されるものではない。異なる2以上の流体が存在する系であれば、異なる2以上の液体が存在する系であっても良い。
【0084】
図7を参照して、コンピュータ100に対して計算開始の指示が入力されると、CPU105は、まずステップS10において、各セルの占有率αと速度vの初期値を読み込んで、ステップS20へ処理を進める。なお、これらの値は、たとえば固定ディスク107に格納されている。
【0085】
ステップS20では、CPU105は、各セルの速度vならびに当該速度のx方向およびy方向の法線ベクトルを算出して、ステップS30へ処理を進める。
【0086】
ステップS30では、CPU105は、最新の占有率αについての「∇α」を算出して、ステップS40へ処理を進める。
【0087】
ステップS40では、各セルの占有率αと速度vの積についての「∇αv」を算出して、ステップS50へ処理を進める。
【0088】
ステップS50では、各セルの占有率αに対してΔt後の占有率αを算出して、ステップS60へ処理を進める。
【0089】
ステップS60では、最新の占有率αに基づいて、式(3)に従ってγを算出し、式(13)に従ってβを算出し、式(2)および式(6)に従って「x
i〜」を算出することにより、各セルの界面を再構築して、ステップS70へ処理を進める。
【0090】
ステップS70では、CPU105は、シミュレーションの期間(Δtの総和)Tsumが指定された期間Tを超えたか否かを判断し、まだ超えていなければステップS20へ処理が戻され、超えていれば処理を終了させる。
【0091】
以上、
図7を参照して説明した処理により、微小時間Δtごとに、各セルの占有率が更新され、そして、更新後の占有率に従って各セルの界面が、
図6等を参照して説明された本実施の形態の計算方法に従って、再構築される。
【0092】
なお、本実施の形態のシミュレーションでは、シミュレーションの対象の領域として、
図8に示されるようなセルの格子(
図8では100×100のセルの格子)が定義される。そして、ステップS20からステップS60の処理が一回行なわれるごとに、各セルの占有率αの計算結果が更新され、そして、各セルにおける界面の再構築が行なわれる。
【0093】
図9および
図10は、
図8に示された格子状のセルの一部(10×10のセルの格子)についての、各セルの占有率αの計算結果を示す。なお、
図10は、
図9の計算結果に対する、時間ΔT後の計算結果を示すものとする。
【0094】
また、
図11,
図12は、それぞれ、
図9,
図10の計算結果に対応した、界面の再構築の状態を示す図である。つまり、
図12は、
図11に示された結果に対する、時間ΔT後の結果を示す。
【0095】
図9では、3〜6列目および3〜6行目にある16個のセル以外のセルでは、占有率αは「0.0」とされている。一方、これらの16個のセルでは、占有率αとして、0.4,0.8,1.0のいずれかの値が算出されている。そして、各占有率αに対応して、
図11に示されるように界面が再構築されている。
【0096】
図10では、
図9に対して、占有率αが0.0以外の値を有する16個のセルが、それぞれ1列ずつ右方向に移動している。
図12では、これに対応して、再構築される界面が1列ずつ、
図11に示されたものに対して右に移動している。
【0097】
また、
図11および
図12に示されたような各セルの占有率αに基づき、次の式(14)に従って、各セルの密度が算出される。
図11に対応した密度の算出結果を
図13に、
図12に対応した密度の算出結果を
図14に、それぞれ示す。なお、式(14)において、ρ
Gは気体の密度であり、ρ
lは液体の密度である。また、
図13および
図14では、ρ
Gの値の一例として1kg/m
3が、ρ
lの値の一例として1000kg/m
3が、それぞれ採用されている。
【0099】
<3次元への拡張>
本実施の形態のシミュレーション方法(THAINC)では、
図6の式(13)を参照して説明されたように、2次元以上の次元でシミュレーションが行なわれる場合、再構築対象のセルの各軸についての法線ベクトルが利用された。3次元シミュレーションにおける、各セルの法線ベクトルの算出について、説明する。
【0100】
図15は、(x,y,z)座標系において中心座標を(i,j,k)とするセルC
i,j,kの、x軸方向の法線ベクトルn
xの算出を説明するための図である。
【0101】
図15では、C
i,j,kが立方体で示され、そして、当該立方体の8個の頂点近傍における、x軸方向に微小距離移動したときの占有率の変化量が、それぞれ「NXRTF」「NXLTF」「NXRBF」「NXLBF」「NXRTB」「NXLTB」「NXRBB」「NXLBB」で示されている。
【0102】
これらの変化量は、次の式(16−1)〜式(16−8)に従って算出される。
【0104】
式(16−1)〜式(16−8)から理解されるように、上記8個の変化量の算出には、計算対象であるセルと当該セルに隣接するセルの占有率αが利用される。
【0105】
図16に、上記8個の変化量の算出に利用されるセルを示す。
図16では、計算対象のセルC
i,j,kを中心として3軸方向に3個ずつ配列された27個のセルが示されている。27個のセルについて、
図16では、x軸方向に並ぶ3個のセルのそれぞれのx座標が「i−1」「i」「i+1」で示されている。また、y軸方向に並ぶ3個のセルのy座標が「j−1」「j」「j+1」で示されている。また、z軸方向に並ぶ3個のセルのz座標が「k−1」「k」「k+1」で示されている。つまり、27個のセルの3次元座標は、(i-1,j-1,k-1)(i-1,j,k-1)(i-1,j+1,k-1)(i-1,j-1,k)(i-1,j,k)(i-1,j+1,k)(i-1,j-1,k+1)(i-1,j,k+1)(i-1,j+1,k+1)(i,j-1,k-1)(i,j,k-1)(i,j+1,k-1)(i,j-1,k)(i,j,k)(i,j+1,k)(i,j-1,k+1)(i,j,k+1)(i,j+1,k+1)(i+1,j-1,k-1)(i+1,j,k-1)(i+1,j+1,k-1)(i+1,j-1,k)(i+1,j,k)(i+1,j+1,k)(i+1,j-1,k+1)(i+1,j,k+1)(i+1,j+1,k+1)となる。
【0106】
そして、法線ベクトルn
xは、これらの8個の変化量を利用して、次の式(19)に従って算出される。
【0108】
つまり、法線ベクトルn
xは、上記8個の変化量の平均値として算出される。
上記8個の変化量の算出に話を戻して、各変化量は、当該頂点近傍に位置する8個のセルの占有率を利用して算出される。
図16には、セルC
i,j,kの8個の頂点の1つである「NXLTF」が示されている。
【0109】
たとえば、
図17に示されるように、「NXLTF」で示される頂点近傍の、x軸方向の微小領域における占有率の変化量は、計算対象のセルC
i,j,kと、NXLTF近傍に位置する7個のセル(C
i,j+1,k,C
i,j+1,k-1,C
i,j,k-1,C
i-1,j+1,k,C
i-1,j,k-1)の占有率が利用される。Cに対する添え字は、各セルの座標を表す。これらの各セルの占有率は、α
i,j,k,α
i,j+1,k,α
i,j+1,k-1,α
i,j,k-1,α
i-1,j+1,k,α
i-1,j+1,k-1,α
i-1,j,k,α
i-1,j,k-1で表される。
【0110】
図18は、
図17の線L1の断面を模式的に示す。当該断面は、
図17の8個のセルのz=kにおける断面に相当する。また、
図19は、
図17の線L2の断面を模式的に示す。
図18と
図19には、それぞれのセルの占有率が示されている。当該断面は、
図17の8個のセルのz=k−1における断面に相当する。
【0111】
そして、「NXLTF」は、式(16−2)に示されるように、
図17の8個のセルについて、法線ベクトルを求める軸(x軸)の方向に隣接する2つのセルの占有率の差をx軸方向の微小距離(△x)で除した値の平均として算出される。つまり、これらの8個のセルにおいて、x軸方向に隣接するセルの組合せは4通り(C
i,j+1,k-1とC
i-1,j+1,k-1、C
i,j,k-1とC
i-1,j,k-1、C
i,j+1,kとC
i-1,j+1,k、C
i,j,kとC
i-1,j,k)ある。そこで、式(16−2)の分子では、これらの4組の各組における占有率の差がたしあわされているので、式(16−2)の分母では、これらの平均を取るために、微小距離(△x)とともに、「4」が記載されている。
【0112】
式(16−1)〜式(16−8)の他の式でも、同様に、セルC
i,j,kの8個の頂点付近の、x軸の方向に隣接する2つのセルの占有率の差をx軸方向の微小距離(△x)で除した値の平均が、算出される。そして、これらの式によって算出された結果が利用されて、式(19)に従って、x方向の法線ベクトルn
xが算出される。
【0113】
また、y方向の法線ベクトルn
yとz方向の法線ベクトルn
zは、それぞれ、次の式(20)と式(21)に従って算出される。
【0115】
式(20)中の「NYRTF」「NYLTF」「NYRBF」「NYLBF」「NYRTB」「NYLTB」「NYRBB」「NYLBB」の8個の数値、および、式(21)中の「NZRTF」「NZLTF」「NZRBF」「NZLBF」「NZRTB」「NZLTB」「NZRBB」「NZLBB」の8個の数値は、それぞれ、
図15に示したような再構築の対象のセルC
i,j,kの8個の頂点付近における微小領域での占有率の変化率である。なお、式(20)中の8個の数値は、y方向の法線ベクトルn
yを求めるための数値であるため、y軸方向に隣接する4組の2セルの占有率の差をy軸方向の微小距離(△y)で除した値の平均として、算出される。また、式(21)中の8個の数値は、z方向の法線ベクトルn
zを求めるための数値であるため、z軸方向に隣接する4組の2セルの占有率の差をz軸方向の微小距離(△z)で除した値の平均として、算出される。
【0116】
以上説明したように、3次元シミュレーションでは、x方向の法線ベクトルn
xとy方向の法線ベクトルn
yとz方向の法線ベクトルn
zとが算出される。そして、これらが式(16)に利用されて、x方向、y方向、z方向の各方向についてのβが算出されることにより、3次元シミュレーションに基づく各セルの再構築が実現される。
【0117】
3次元シミュレーションでは、シミュレーションの対象の領域として、3次元方向に配列されたセルの格子(
図20では100×100×100のセルの格子)が定義される。そして、
図7のステップS20からステップS60の処理が一回行なわれるごとに、
図21に示されるように各セルの占有率αの計算結果が更新され、更新後の各セルの占有率αが利用されて、各セルにおける界面の再構築が行なわれる。
【0118】
また、
図21に示されたような各セルの占有率αに基づき、上記の式(17)に従って各セルの密度が算出される。
図22は、
図21に対応した密度の算出結果を示す図である。
図22では、ρ
Gの値の一例として1kg/m
3が、ρ
lの値の一例として1000kg/m
3が、それぞれ採用されている。
【0119】
<計算結果の比較>
次に、本実施の形態による界面の再構築の結果を、これまでの種々の方法による再構築の結果と比較する。
【0120】
図23〜
図25は、異なったシミュレーション内容についての、THINC/WLIC法、THAINC法、および、THAINC_M法のそれぞれによるシミュレーションの結果を示す図である。各図では、シミュレーションの結果がプロットされたグラフ、当該結果の数値を示すテーブル、および、シミュレーションの内容の説明図が、上から順に示されている。
【0121】
グラフでは、各方法の、気泡についての、初期形状に対する誤差(ERR)が、クーラン数(CO)に対してプロットされている。誤差は、百分率で示されている。THINC/WLIC法の結果はひし形で、THAINC法の結果は四角で、そして、THAINC_M法の結果は三角で、それぞれプロットされている。この誤差は、次の式(22)に従って、誤差(E
SP)として算出される。
【0123】
テーブルでは、クーラン数(CO)と、COに対応する誤差の百分率の値とが、示されている。
【0124】
(5回回転)
図23は、液相中の気泡を5回回転移動させるシミュレーションをした際の界面の再構築の結果を示す図である。このシミュレーションは、説明図に示されるように、気泡BUで示される初期状態の気泡を液体LQ内を矢印R1で示される回転方向に5回転させて元の位置に戻すというものである。
【0125】
図23のグラフおよびテーブルから理解されるように、THAINC_M法は、示されたクーラン数のほぼ全域に渡って、THINC/WLIC法に対して誤差が1%程度低く、また、THAINC法に対しても誤差が低くなっている。
【0126】
(2次元シミュレーションでの移動)
図24は、2次元シミュレーションにおいて、液相中の気泡を移動させた際の界面の再構築の結果を示す図である。このシミュレーションは、説明図に示されるように、気泡BUで示される初期状態の気泡を液体LQ内を矢印R2に従って移動させるものである。
【0127】
図24のグラフおよびテーブルから理解されるように、THAINC_M法は、示されたクーラン数のほぼ全域に渡って、THINC/WLIC法およびTHAINC法に対して誤差が低くなっている。特に、THAINC法に対し、THAINC_M法は、COが0.5の場合には1.5%程度、COが0.25の場合には3%近く、そして、COが0.1の場合には3%以上、誤差が低くなっている。
【0128】
(3次元シミュレーションでの移動)
図25は、3次元シミュレーションにおいて、液相中の気泡を移動させた際の界面の再構築の結果を示す図である。このシミュレーションは、説明図に示されるように、気泡BUで示される初期状態の気泡を液体LQ内を矢印R3に従って3次元空間内を移動させるものである。
図25では、移動後の気泡が、気泡BU01で示されている。
【0129】
図25のグラフおよびテーブルから理解されるように、THINC/WLIC法とTHAINC法の間では、COの値によって誤差の大小関係が入れ替わったりしているが、THAINC_M法は、示されたクーラン数のほぼ全域に渡って、3%程度も、THINC/WLIC法およびTHAINC法に対して誤差が低くなっている。
【0130】
<実施の形態のまとめ>
以上説明した本実施の形態のTHAINC_M法は、2以上の軸が定義された場合に、式(2)(
図6参照)に示されたTHINC法の特殊関数のβの算出方法に特徴がある。具体的には、各セルの、各軸についての法線ベクトルを用いて、βが算出される。より具体的には、式(15)および式(16)等に示されるように、第1の軸方向についての再構築に用いるβは、当該第1の軸の法線ベクトルの、それ以外の軸の法線ベクトルの合成されたベクトルに対する比として、算出される。
【0131】
図26には、2次元シミュレーションにおける或るセルについての法線ベクトルのx成分(ベクトルn
x)とy成分(ベクトルn
y)が、界面SBおよび法線ベクトル(ベクトルn)とともに、模式的に示されている。
図26に示された例では、界面SBの左右で注目している流体の占有率αの値が変化している。界面SBより左方ではα=0であり、右方ではα=1である。そして、この場合には、式(15)を参照して説明したように、x軸方向の再構築に利用されるβ(つまり、β
x)は、法線ベクトルnのx軸方向に対する勾配として算出される。また、y軸方向の再構築に利用されるβ(つまり、β
y)は、法線ベクトルnのy軸方向に対する勾配として算出される。
【0132】
図27には、3次元シミュレーションにおける或るセルについての法線ベクトルのx成分(ベクトルn
x)と、法線ベクトル(ベクトルn)と、そのy成分とz成分の合成ベクトル(ベクトルn
yz)とが、模式的に示されている。なお、
図27では、法線ベクトルnのy成分がy軸上に「n
y」で示され、また、法線ベクトルnのz成分がz軸上に「n
z」で示されている。また、当該合成ベクトル(ベクトルn
yz)のスカラー量は、次の式(23)で表される。
【0134】
x軸方向の再構築に利用されるβ(つまり、β
x)は、法線ベクトルnのx軸方向に対する勾配として、つまり、式(16)に示されたように、算出される。
【0135】
以上説明した本実施の形態のTHAINC_M法によれば、2種類以上の流体からなる混相流における自由界面のシミュレーションにおいて、シミュレーションの次元が変わっても、その誤差を、従来の計算方法よりも低く抑えることができる。
【0136】
<その他の変形例等>
以上説明した本実施の形態では、ステップS50を実行するCPU105によって、各セルの占有率を算出するための算出手段が構成されている。そして、ステップS60を実行するCPU105によって、各セルの界面の再構築を行なう再構築手段が構成されている。