(57)【要約】      （修正有）【課題】粒子シミュレーションにおいて、流入口の圧力上昇を回避する粒子シミュレーションプログラム、粒子シミュレーション方法、及び情報処理装置を提供する。【解決手段】器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションプログラムにおいて、前記流入口の近傍に粒子生成面を形成し、前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、粒子シミュレーションを実行し、前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する処理を行う。【選択図】図３
2018018164.tif 000002
【特許請求の範囲】
【請求項１】
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションプログラムにおいて、
前記流入口の近傍に粒子生成面を形成し、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、
粒子シミュレーションを実行し、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する
処理をコンピュータに行わせる粒子シミュレーションプログラム。
【請求項２】
前記コンピュータに、
流入方向とは逆流する速度を示す粒子が前記粒子消失面を超えた場合、該粒子を削除する
処理を行わせることを特徴とする請求項１記載の粒子シミュレーションプログラム。
【請求項３】
前記コンピュータに、
形成した前記粒子消失面の断面の大きさを前記流入口の外側へ広げるマージンを設定し、
前記断面を前記流入口の外側へ設定した前記マージン分拡張させて、前記粒子消失面を前記流入口に配置する
処理を行わせることを特徴とする請求項１記載の粒子シミュレーションプログラム。
【請求項４】
前記コンピュータに、
形成した前記粒子消失面に、前記粒子の削除を抑止する一部領域を設定させる
処理を行わせることを特徴とする請求項１記載の粒子シミュレーションプログラム。
【請求項５】
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーション方法において、
前記流入口の近傍に粒子生成面を形成し、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、
粒子シミュレーションを実行し、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する
処理をコンピュータに行わせる粒子シミュレーション方法。
【請求項６】
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションを行う情報処理装置であって、
前記流入口の近傍に粒子生成面を形成する生成面決定部と、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成する粒子消失面設定部と、
粒子シミュレーションを実行するシミュレーション実行部と、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する粒子削除部と
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、粒子シミュレーションプログラム、粒子シミュレーション方法、及び情報処理装置に関する。
【背景技術】
【０００２】
近年、水や空気などの流体（連続体ともいう）の運動を粒子法を用いて数値的に計算する様々な流体解析法が提案されている。
【０００３】
粒子法において、流入口の圧力変化を表わす境界粒子の壁面ポテンシャルによって粒子に働く反発力の反作用である金型の内圧と、金型に粒子が射出される圧力である外圧とで算出した境界粒子の位置に基づいて、粒子を生成又は削除する技術等が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１７０３２７号公報
【特許文献２】特開２０１４−０８１９００号公報
【特許文献３】特開２００２−２８３００１号公報
【特許文献４】国際公開第２０１０−０３２６５６号パンフレット
【非特許文献】
【０００５】
【非特許文献１】J．J．Monaghan，“Smoothed  Particle  Hydrodynamics”，Annu．Rev．Astron．Astrophys．30：543‐74（1992）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、粒子法においては、流速（流入量）一定で流入させることは容易であるが、流入面の圧力値一定による流入条件を設定することは困難である。そのため、容器を満たした流体が底面の口から下部へ流入する現象を表わす粒子シミュレーションにおいて、逆流してきた粒子により、流入口（流入面）付近の圧力が現実より高くなる、といった問題がある。
【０００７】
したがって、１つの側面では、本発明は、粒子シミュレーションにおいて、流入口の圧力上昇を回避することを目的とする。
【課題を解決するための手段】
【０００８】
一態様によれば、器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションプログラムにおいて、前記流入口の近傍に粒子生成面を形成し、前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、粒子シミュレーションを実行し、前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する処理をコンピュータに行わせる粒子シミュレーションプログラムが提供される。
【０００９】
また、上記課題を解決するための手段として、粒子シミュレーション方法、及び情報処理装置とすることもできる。
【発明の効果】
【００１０】
粒子シミュレーションにおいて、流入口の圧力上昇を回避できる。
【図面の簡単な説明】
【００１１】
【図１】流体が流れ込む計算条件のモデル例を示す図である。
【図２】モデル１での粒子生成面の一例を示す図である。
【図３】本実施例の仕組みを説明するための図である。
【図４】粒子シミュレーション装置のハードウェア構成を示す図である。
【図５】粒子シミュレーション装置の第１機能構成を示す図である。
【図６】粒子消失面設定部の機能構成例を示す図である。
【図７】第１機能構成における粒子シミュレーションのフローチャート図である。
【図８】第１機能構成における入力データ取得処理を説明するためのフローチャート図である。
【図９】粒子シミュレーション装置の第２機能構成を示す図である。
【図１０】第２機能構成における入力データ取得処理を説明するためのフローチャート図である。
【図１１】流入口の形状毎の設定例を示す図である。
【図１２】マージンの設定例を示す図である。
【図１３】逆流粒子を消失させない壁面の設定例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。まず、流体解析手法について説明する。流体解析手法として、連続体を粒子（流体粒子ともいう）として離散化しその分布で表現する、Smoothed  Particle  Hydrodynamics（SPH）法やMoving  Particle  Semi‐implicitもしくはMoving  Particle  Simulation（MPS）法が知られている。
【００１３】
これら、粒子分布を用いて解析対象を表現する手法においては、ある粒子から影響半径と呼ばれる距離ｈ以内にある粒子を近傍粒子としてその粒子の情報を用いる。
【００１４】
例として、ＳＰＨ法における運動方程式の離散化の式を示す。
【００１５】
【数１】
2018018164.tif 000003
・・・・（１）
【００１６】
式（1）において、下付き添え字は、各粒子を表わす。ｒａ、Ｖａ、ρａ、Ｐａ、及びｍａは、それぞれ粒子ａの位置ベクトル、速度ベクトル、密度、圧力、及び質量である。Πabは粘性応力テンソルを密度で除算した量である。Ｗは、カーネル関数で、粒子の分布から連続場を構成するのに用い、以下の３次のスプライン関数等がよく使われる。
【００１７】
【数２】
2018018164.tif 000004
・・・・（２）
【００１８】
液体の流入条件を計算に設定する場合、特定箇所において粒子を生成することにより与える。この時、各粒子には特定の速度、圧力、密度、質量等を与えることにより流入条件を付与する。粒子法では、流速（流入量）一定で流入させることは容易であるが、流入面の圧力値一定による流入条件を設定することは困難である。
【００１９】
例えば、図１に示す特定の場所にある器に溜まった流体を型に流し込む等、容器を満たした流体が底面の口から下部へ流入する現象の粒子シミュレーションを行った場合を考える。図１は、流体が流れ込む計算条件のモデル例を示す図である。
【００２０】
図１に示すモデル１は、粒子シミュレーションで解析する領域として、流体で満たされた器２、湯道４、及び型５で示される。器２は、器２内の流体を型５へ流し込む湯道４の流入口３と略同一の形状の開口部を有し、流入口３に接続されている。
【００２１】
このような、上方に溜まった流体を重力６により自由落下させるモデル１を想定して、流速（流入量）一定で粒子を生成する場合を説明する。図２は、モデル１での粒子生成面の一例を示す図である。
【００２２】
図２のように特定箇所（即ち、粒子生成面７）において、器2から落下を開始した流体の底面下部での速度を使って、流速（流入量）一定で粒子を生成することにより計算コストの低減を行うことができる。
【００２３】
この時の流出条件として、流入面での速度を一定に定義すると、粒子生成面近傍の速度が流入速度と同等の場合には問題なく流入させることができる。しかしながら、図２に示すような条件で流入を進めた場合、湯道４に流体が十分詰まったのちには湯道４から流体を生成する面に向かって逆流が発生する。
【００２４】
このような計算においては、流入する粒子と逆流してきた粒子が密になり流入境界付近における圧力が上昇することとなる。速度の一定条件をたもつために逆流してきた流体粒子を押し返すことになり、流入面付近の圧力が現実より高くなり、必要以上に強く押し込まれる挙動を示し、本来再現すべき流体の挙動をうまく再現できない。
【００２５】
流入面での圧力値による流入条件を用いれば回避することは可能と考えられるが、流入面に対する圧力一定の流入条件を用いるためには粒子法における流入面の圧力計算が複雑となり容易ではない。
【００２６】
本実施例では、流体粒子を一定速度にて流入し、流入面に応じた粒子消失境界を設定させることにより、逆流した流体粒子を消失させ、流入面の圧力上昇を回避する。
【００２７】
図３は、本実施例の仕組みを説明するための図である。図３では、本実施例の仕組みを２次元で簡易的に表している。粒子シミュレーションでは、流入口３から所定位置に流体粒子５１を生成する粒子生成面７が生成され、流入方向６で流入口３へと射出される。粒子生成面７を生成することで、器２内の粒子シミュレーションを省略できる。
【００２８】
流体粒子５１は設定した助走領域８で加速され、略直進して流入口３へと入射する。以下の説明において、粒子シミュレーションにより粒子生成面７で連続して生成された複数の流体粒子５１のまとまりを、連続体粒子５０で示す。連続体粒子５０は、流体をモデル化したものであって、中心座標、速度、影響半径、密度、質量、温度等のデータを有し、流体を表現する。
【００２９】
図３に示す逆流粒子５２は、湯道４から逆流してきた流体粒子５１を表わす。既存の粒子シミュレーションでは、流体粒子５１により、流入口３で形成される流入面付近の圧力が現実より高くなる。
【００３０】
本実施例では、粒子消失面９を逆流粒子５２に対して設定することで、逆流粒子５２による湯道４の流入口３付近の圧力が現実以上に上昇する現象を改善する。
【００３１】
本実施例に係る粒子シミュレーション装置は、図１に示すようなハードウェア構成を有する。図４は、粒子シミュレーション装置のハードウェア構成を示す図である。図４において、粒子シミュレーション装置１００は、コンピュータによって制御される情報処理装置であって、ＣＰＵ（Central  Processing  Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ装置１８とを有し、バスＢに接続される。
【００３２】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従って粒子シミュレーション装置１００を制御するプロセッサに相当する。主記憶装置１２には、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を記憶又は一時保存する。
【００３３】
補助記憶装置１３には、ＨＤＤ（Hard  Disk  Drive）等が用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。記憶部１３０は、主記憶装置１２及び／又は補助記憶装置１３を表わす。
【００３４】
入力装置１４は、マウス、キーボード等を有し、ユーザが粒子シミュレーション装置１００による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。入力装置１４と表示装置１５とは、一体化したタッチパネル等によるユーザインタフェースであってもよい。通信Ｉ／Ｆ１７は、有線又は無線などのネットワークを通じて通信を行う。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。
【００３５】
粒子シミュレーション装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact  Disc  Read-Only  Memory）等の記憶媒体１９によって粒子シミュレーション装置１００に提供される。
【００３６】
ドライブ装置１８は、ドライブ装置１８にセットされた記憶媒体１９（例えば、ＣＤ−ＲＯＭ等）と粒子シミュレーション装置１００とのインターフェースを行う。
【００３７】
また、記憶媒体１９に、後述される本実施の形態に係る種々の処理を実現するプログラムを格納し、この記憶媒体１９に格納されたプログラムは、ドライブ装置１８を介して粒子シミュレーション装置１００にインストールされる。インストールされたプログラムは、粒子シミュレーション装置１００により実行可能となる。
【００３８】
尚、プログラムを格納する記憶媒体１９はＣＤ−ＲＯＭに限定されず、コンピュータが読み取り可能な、構造（structure）を有する１つ以上の非一時的（non-transitory）な、有形（tangible）な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤ（Digital  Versatile  Disk）ディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００３９】
図５は、粒子シミュレーション装置の第１機能構成を示す図である。図５において、粒子シミュレーション装置１００は、主に、入力データ取得部４１と、シミュレーション実行部４５とを有する。入力データ取得部４１と、シミュレーション実行部４５とは、粒子シミュレーション装置１００にインストールされたプログラムが、粒子シミュレーション装置１００のＣＰＵ１１に実行させる処理により実現される。記憶部１３０には、モデル１、粒子生成面情報３１、助走領域情報３２、粒子消失面情報３３、入力データ３５、粒子データ３７等が記憶される。
【００４０】
入力データ取得部４１は、シミュレーション実行部４５に入力するデータを生成する処理部であり、更に、生成面決定部４１ａと、助走領域設定部４１ｂと、粒子消失面設定部４１ｃとを有する。
【００４１】
生成面決定部４１ａは、モデル１で示される流入口３の形状に基づいて、粒子生成面７を決定する。粒子生成面７は、流入口３の真上近傍に、流入口３の流入面に平行して生成される。粒子生成面７を表わす粒子生成面情報３１が記憶部１３０に記憶される。
【００４２】
また、連続体粒子５０の生成判定を行うために仮想粒子が粒子生成面７に設定される。仮想粒子は、連続体粒子５０と同様な粒子データである。粒子データによって、中心座標、流入速度、粒子の流入面等が示される。
【００４３】
助走領域設定部４１ｂは、粒子生成面７に垂直に影響半径程度の長さの助走領域８を設定する。助走領域８は、粒子生成面７と粒子消失面９との間に形成される。助走領域８を表わす助走領域情報３２が記憶部１３０に記憶される。
【００４４】
粒子消失面設定部４１ｃは、モデル１を参照して、流入口３と流入方向６ｆとに基づいて、助走領域８から流入口３までの幅を持つ粒子消失面９を流入口３の形状に沿って形成する。粒子消失面９を表わす２次元又は３次元の粒子消失面情報３３が記憶部１３０に記憶される。
【００４５】
粒子消失面９で囲まれた内側を流体粒子５１が流入口３へと流れる。粒子消失面９の形状は、流入口３の形状に一致させても良いし、流入口３に対して外側にマージンを持たせて広くしてもよい。粒子消失面９で形成される管状の断面のサイズを、流入口３のサイズより広くしてもよい。
【００４６】
入力データ取得部４１は、得られた情報等からシミュレーション実行部４５への入力データ３５を作成する。入力データ３５は、連続体粒子５０、仮想粒子、助走領域８、粒子消失面９等の情報を含む。
【００４７】
シミュレーション実行部４５は、入力データ３５を読み込んで、粒子シミュレーションを実行する処理部であり、更に、粒子生成部４５ａと、流速設定部４５ｂと、運動解析部４５ｃと、物理量取得部４５ｄと、粒子削除部４５ｅとを有する。
【００４８】
粒子生成部４５ａは、型５へ流入する流体粒子５１の生成判定及び生成を行う。流速設定部４５ｂは、流体粒子５１の流速を設定する。運動解析部４５ｃは、連続体粒子５０に設定された物理モデルに従って、連続体粒子５０の運動を解く。物理量取得部４５ｄは、連続体粒子５０の物理量を求める。粒子削除部４５ｅは、粒子データ３７の物理モデル等の情報を参照して、粒粒子消失面９の近傍の逆流粒子５２の消失判定及び削除を行う。
【００４９】
シミュレーション実行部４５による粒子シミュレーションの実行により、粒子データ３７が時間経過毎に更新される。粒子データ３７は、連続体粒子５０における各流体粒子５１の物理モデル、物理量等の情報を示す。
【００５０】
図６は、粒子消失面設定部の機能構成例を示す図である。図６において、粒子消失面設定部４１ｃは、粒子消失面９の設定を行う処理部であり、消失面形成部４２ａと、マージン設定部４２ｂと、消失領域設定部４２ｃと、面配置部４２ｄとを有する。マージン設定部４２ｂと、消失領域設定部４２ｃは、省略してもよい。
【００５１】
消失面形成部４２ａは、モデル１を参照して、流入口３と流入方向６ｆとに基づいて、助走領域８から流入口３までの幅を持つ粒子消失面９を流入口３の形状に沿って粒子消失面９を形成する。
【００５２】
マージン設定部４２ｂは、流入口３から外側へ粒子消失面９による管状の断面を広げるマージンを設定する。マージンの設定は任意であるが、マージンの大きさの一例として、流体粒子５１（逆流粒子５２）の直径以下等が設定されてもよい。又は、ユーザによって適宜設定されてもよい。
【００５３】
消失領域設定部４２ｃは、消失面形成部４２ａが生成した粒子消失面９のうち、一部領域を逆流粒子５２を消失させる領域又は消失させない領域として設定する。粒子消失面９が直方体の４側面で表わされる場合、４側面のうち１以上の側面を指定して消失領域としてもよい。粒子消失面９が円柱の側面で表される場合、円の中心からの方向と幅を指定して消失領域としてもよい。粒子消失面９の一部領域は、ユーザによって適宜設定されてもよい。粒子消失面９における消失領域以外には壁面を設定してもよい。
【００５４】
面配置部４２ｄは、粒子消失面９を流入口３に合わせて配置させる。粒子消失面設定部４１ｃにより、粒子消失面情報３３が出力される。粒子消失面情報３３によって、少なくとも消失面形状及び流入方向６ｆの幅が指定され、必要に応じてマージン値、消失領域又は壁面等を指定する面指定情報が示される。
【００５５】
消失面形状が直方体を表わす場合には、消失領域又は壁面の指定の代わりに、簡潔に、面方向が指定されてもよい。流入口３から流入方向６ｆの上流側に向かって、粒子消失面９の上に助走領域８が設定され、更に助走領域８の上面に粒子生成面７が設定される。
【００５６】
次に、粒子シミュレーション装置１００が行う処理について説明する。図７は、第１機能構成における粒子シミュレーションのフローチャート図である。図７を参照すると、粒子シミュレーション装置１００において、入力データ取得部４１が、シミュレーション実行部４５への入力データ３５を取得すると（ステップＳ７１）、シミュレーション実行部４５が入力データ３５を読み込んで、粒子シミュレーションを開始する。入力データ取得部４１による入力データ取得処理は、図８で説明される。
【００５７】
シミュレーション実行部４５において、粒子生成部４５ａは、流入粒子（粒子生成面７の流体粒子５１）の生成判定を行い、生成判定結果に基づいて流入粒子を生成する（ステップＳ７２）。粒子生成部４５ａは、入力データ３５から仮想粒子の情報を参照して、流入速度、流入面積、及び流体を前回生成してからの経過時間の積が一定値を超えた場合、その仮想粒子上に流入粒子を生成する。即ち、粒子生成面７において、流体粒子５１が生成される。
【００５８】
次に、流速設定部４５ｂが、生成された流体粒子５１の流速を設定する（ステップＳ７３）。流速設定部４５ｂは、生成した流体粒子５１に一定速度を与えてもよいが、粒子法での近傍計算を正確に行うために、影響半径程度の長さで設定された助走領域８内の流体粒子５１を流入速度と同じ速度に設定してもよい。
【００５９】
そして、運動解析部４５ｃが、粒子データ３７の物理モデルに従って、連続体粒子５０の運動を解く（ステップＳ７４）。例えば、流体をモデル化した連続体粒子５０に対しては、ナヴィエ・ストークス方程式を解いて、加速度を求める。
【００６０】
次に、物理量取得部４５ｄは、運動解析部４５ｃによって求められた加速度を含む時間微分項を用いて連続体粒子５０の物理量を時間積分し、時刻を１ステップ分の所定時間幅分進める（ステップＳ７５）。ステップＳ７４及びステップＳ７５での結果を用いて、粒子データ３７が更新される。
【００６１】
そして、粒子削除部４５ｅは、入力データ３５で示される粒子消失面９による粒子消失判定を行い、粒子消失判定結果に基づいて逆流粒子５２を削除する（ステップＳ７６）。粒子消失面９を超えた外側に位置する粒子を逆流粒子５２と判断して削除する。流入方向６ｆ（又は重力６）とは逆流する速度を示すことを、逆流粒子５２と判断することの要件として追加しても良い。
【００６２】
１ステップ分の時間発展計算の終了に応じて、シミュレーション実行部４５は、粒子データ３７に基づく計算結果を出力し（ステップＳ７７）、予め定めたステップ分の処理を終了したか否かを判定する（ステップＳ７８）。
【００６３】
未だ終了していない場合（ステップＳ７８のＮＯ）、シミュレーション実行部４５は、ステップＳ７２へと戻り、上述した同様の処理を繰り返す。一方、終了している場合（ステップＳ７８のＹＥＳ）、シミュレーション実行部４５は、粒子シミュレーションを終了する。
【００６４】
次に、入力データ取得部４１による入力データ取得処理について説明する。図８は、第１機能構成における入力データ取得処理を説明するためのフローチャート図である。図８中、破線で示されるステップＳ８５及びＳ８６いずれか１つまたは両方の処理を省略してもよい。
【００６５】
入力データ取得部４１において、生成面決定部４１ａは、モデル１に基づいて型５の流入口３の位置及び形状を取得し（ステップＳ８１）、流入口３の位置より上流側の近傍に流入口３と同様の形状を持つ粒子生成面７を生成して設定する（ステップＳ８２）。連続体粒子５０の生成判定を行うために仮想粒子が粒子生成面７に設定され、粒子生成面７を表わす粒子生成面情報３１が記憶部１３０に記憶される。
【００６６】
助走領域設定部４１ｂは、粒子生成面７の位置から流入口３に向けて、粒子生成面７に垂直に影響半径程度の長さの助走領域８を設定する（ステップＳ８３）。助走領域８の底面は、粒子生成面７と同一形状を有する。助走領域８を表わす助走領域情報３２が記憶部１３０に記憶される。
【００６７】
ステップＳ８４〜Ｓ８７は、粒子消失面設定部４１ｃによって行われる処理である。先ず、粒子消失面設定部４１ｃにおいて、消失面形成部４２ａは、粒子生成面７の形状に対応させて、流入方向６ｆに沿って助走領域８の底面に垂直な所定幅の粒子消失面９を生成する（ステップＳ８４）。粒子消失面９による管状の断面の形状を示す消失面形状と、粒子消失面９の幅とが粒子消失面情報３３に設定される。
【００６８】
マージン設定部４２ｂは、粒子消失面９による管状の断面のサイズを流入口３より広くするマージンを設定する（ステップＳ８５）。粒子消失面情報３３にマージン値が追加される。
【００６９】
消失領域設定部４２ｃは、粒子消失面９において、逆流粒子５２を削除する消失領域又は逆流粒子５２を削除しない壁面を設定する（ステップＳ８６）。消失領域又は壁面を指定する面指定情報が粒子消失面情報３３に追加される。粒子消失面９の形状によっては、粒子消失面情報３３に、消失領域又は壁面に相当する面方向が指定されてもよい。
【００７０】
そして、面配置部４２ｄは、モデル１に対して、粒子消失面情報３３に基づいて、粒子消失面９を流入口３の位置に配置する（ステップＳ８７）。粒子消失面９は、助走領域８と流入口３との間に配置される。その後、入力データ取得部４１による入力データ取得処理は終了する。
【００７１】
上述した第１機能構成では、流入口３の位置及び形状に対応させて、粒子生成面７、助走領域８、そして粒子消失面９の順に形成している。次に、流入口３から流入面に垂直に粒子消失面９を生成した後、粒子生成面７を設定し、助走領域８を設定する第２機能構成について説明する。
【００７２】
図９は、粒子シミュレーション装置の第２機能構成を示す図である。図９において、粒子シミュレーション装置１００−２は、主に、入力データ取得部４３と、シミュレーション実行部４５とを有する。入力データ取得部４３と、シミュレーション実行部４５とは、粒子シミュレーション装置１００にインストールされたプログラムが、粒子シミュレーション装置１００のＣＰＵ１１に実行させる処理により実現される。シミュレーション実行部４５は、第１機能構成と同様であるためその説明を省略する。
【００７３】
第１機能構成と同様に、記憶部１３０には、モデル１、粒子生成面情報３１、助走領域情報３２、粒子消失面情報３３、入力データ３５、粒子データ３７等が記憶される。
【００７４】
入力データ取得部４３は、第１機能構成と同様に、シミュレーション実行部４５に入力するデータを生成する処理部であるが、後述するフローチャートで示されるように処理の手順が第１機能構成と異なっている。第２機能構成において、入力データ取得部４３は、粒子消失面設定部４３ａと、生成面決定部４３ｂと、助走領域設定部４３ｃとを有する。
【００７５】
粒子消失面設定部４３ａは、モデル１を参照して、流入口３と流入方向６ｆとに基づいて、流入口３から流入面に垂直に所定幅を持つ粒子消失面９を流入口３の形状に沿って、形成する。粒子消失面９を表わす２次元又は３次元の粒子消失面情報３３が記憶部１３０に記憶される。
【００７６】
生成面決定部４３ｂは、モデル１で示される流入口３の形状（流入面）に基づいて、粒子生成面７を決定する。粒子生成面７は、流入口３の真上近傍に、粒子消失面９から助走領域８の高さ位置に流入口３の流入面に平行して生成される。粒子生成面７を表わす粒子生成面情報３１が記憶部１３０に記憶される。助走領域８の高さは、影響半径程度の長さに相当する。仮想粒子の設定は、第２機能構成と同様であり、その説明を省略する。
【００７７】
助走領域設定部４３ｃは、粒子生成面７に垂直に影響半径程度の長さの助走領域８を設定する。助走領域８は、粒子生成面７と粒子消失面９との間に形成される。助走領域８を表わす助走領域情報３２が記憶部１３０に記憶される。
【００７８】
入力データ取得部４３は、粒子消失面設定部４３ａと、生成面決定部４３ｂと、助走領域設定部４３ｃとによって入力データ３５を取得する。シミュレーション実行部４５は、粒子シミュレーションの時に、入力データ３５を読み込む。シミュレーション実行部４５によって行われる粒子シミュレーションの機能構成及び処理フローは、第１実施例と同様であるため、同一の符号を付し、その説明を省略する。
【００７９】
また、粒子消失面設定部４３ａの機能構成は、図６と同様に、消失面形成部４２ａと、マージン設定部４２ｂと、消失領域設定部４２ｃと、面配置部４２ｄとを有するためその説明を省略する。
【００８０】
図９に示す入力データ取得部４３の機能構成による入力データ取得処理を説明する。図１０は、第２機能構成における入力データ取得処理を説明するためのフローチャート図である。図１０中、破線で示されるステップＳ９３及びＳ９４いずれか１つまたは両方の処理を省略してもよい。
【００８１】
図１０において、ステップＳ９１〜Ｓ９５は、粒子消失面設定部４３ａによって行われる処理である。
【００８２】
粒子消失面設定部４３ａは、モデル１に基づいて型５の流入口３の位置及び形状を取得し（ステップＳ９１）、流入口３から流入方向６ｆに平行な所定幅の粒子消失面９を生成する（ステップＳ９２）。粒子消失面９は、粒子生成面７を流入口３の近傍に設定する範囲内で生成される。粒子消失面９による管状の断面の形状を示す消失面形状と、粒子消失面９の幅とが粒子消失面情報３３に設定される。
【００８３】
マージン設定部４２ｂは、粒子消失面９による管状の断面のサイズを流入口３より広くするマージンを設定する（ステップＳ９３）。粒子消失面情報３３にマージン値が追加される。
【００８４】
消失領域設定部４２ｃは、粒子消失面９において、逆流粒子５２を削除する消失領域又は逆流粒子５２を削除しない壁面を設定する（ステップＳ９４）。消失領域又は壁面を指定する面指定情報が粒子消失面情報３３に追加される。粒子消失面９の形状によっては、粒子消失面情報３３に、消失領域又は壁面に相当する面方向が指定されてもよい。
【００８５】
そして、面配置部４２ｄは、モデル１に対して、粒子消失面情報３３に基づいて、粒子消失面９を流入口３の位置に配置する（ステップＳ９５）。
【００８６】
次に、生成面決定部４３ｂは、型５の流入口３の位置及び形状に基づいて、流入口３に設定された粒子消失面９より上流の位置に、流入口３と同様の形状を持つ粒子生成面７を生成して設定する（ステップＳ９６）。流入口３の近傍に粒子生成面７が設定される。連続体粒子５０の生成判定を行うために仮想粒子が粒子生成面７に設定され、粒子生成面７を表わす粒子生成面情報３１が記憶部１３０に記憶される。
【００８７】
更に、助走領域設定部３４ｃは、粒子生成面７の位置から流入口３に向けて、粒子生成面７に垂直に影響半径程度の長さの助走領域８を設定する（ステップＳ８３）。助走領域８の底面は、粒子生成面７と同一形状を有する。助走領域８を表わす助走領域情報３２が記憶部１３０に記憶される。その後、入力データ取得部４３による入力データ取得処理は終了する。
【００８８】
次に、流入口３の形状に応じた粒子生成面７、助走領域８、及び粒子消失面９等の設定例を示す。以下に説明する図１１から図１３の設定例は、第１機能構成及び第２機能構成に共通する。
【００８９】
図１１は、流入口の形状毎の設定例を示す図である。図１１（Ａ）では、流入口３が円形の場合の設定例を示している。
【００９０】
流入口３に対して、流入方向６ｆの上流側に流入口３と同様の円形の粒子生成面７が設定され、粒子生成面７を上面とする円柱状の助走領域８が設定され、助走領域８の底面から入流口３まで粒子消失面９が設定される。
【００９１】
図１１（Ｂ）は、流入口３が四角形の場合の設定例を示している。流入口３に対して、流入方向６ｆの上流側に流入口３と同様の四角形の粒子生成面７が設定され、粒子生成面７を上面とする四角柱状の助走領域８が設定され、助走領域８の底面から入流口３まで粒子消失面９が設定される。
【００９２】
図１２は、マージンの設定例を示す図である。図１２（Ａ）では、円形の流入口３に対して外側にマージン９ｊを設定した例を示している。図１２（Ｂ）は、四角形の流入口３に対して外側にマージン９ｊを設定した例を示している。粒子消失面９による管状の断面は、粒子生成面７、助走領域８、及び流入口３の形状より外側にマージン９ｊ分広げた断面を有する。
【００９３】
図１３は、逆流粒子を消失させない壁面の設定例を示す図である。図１３（Ａ）では、円形の流入口３の場合の設定例を示している。円形の流入面の中心に対して角度θを指定した例を示している。角度θは、９０°単位で、９０°、１８０°、２７０°等の幅を簡易的に設定できるようにしてもよい。また、９０°〜１８０°の幅で壁面９ｗの領域を設定してもよい。
【００９４】
図１３（Ｂ）では、四角形の流入口３の場合の設定例を示している。この設定は、粒子消失面９の４面のうち逆流粒子５２を消失させない１面を指定した例である。２面又は３面を指定してもよい。
【００９５】
上述したように、本実施例により、流入口３の近傍で、粒子生成面７で生成した粒子（流体粒子５１）と、逆流したきた逆流粒子５２とが密集するこで、流入口３の圧力が現実より高くなる現象を改善することができる。
【００９６】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、主々の変形や変更が可能である。
【００９７】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションプログラムにおいて、
前記流入口の近傍に粒子生成面を形成し、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、
粒子シミュレーションを実行し、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する
処理をコンピュータに行わせる粒子シミュレーションプログラム。
（付記２）
前記コンピュータに、
流入方向とは逆流する速度を示す粒子が前記粒子消失面を超えた場合、該粒子を削除する
処理を行わせることを特徴とする付記１記載の粒子シミュレーションプログラム。
（付記３）
前記コンピュータに、
形成した前記粒子消失面の断面の大きさを前記流入口の外側へ広げるマージンを設定し、
前記断面を前記流入口の外側へ設定した前記マージン分拡張させて、前記粒子消失面を前記流入口に配置する
処理を行わせることを特徴とする付記１記載の粒子シミュレーションプログラム。
（付記４）
前記コンピュータに、
形成した前記粒子消失面に、前記粒子の削除を抑止する一部領域を設定させる
処理を行わせることを特徴とする付記１記載の粒子シミュレーションプログラム。
（付記５）
前記コンピュータに、
前記粒子生成面と前記粒子消失面の間に該粒子生成面で生成された前記粒子を加速させる助走領域を形成する
処理を行わせることを特徴とする付記１乃至４のいずれか一項記載の粒子シミュレーションプログラム。
（付記６）
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーション方法において、
前記流入口の近傍に粒子生成面を形成し、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成し、
粒子シミュレーションを実行し、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する
処理をコンピュータに行わせる粒子シミュレーション方法。
（付記７）
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションを行う情報処理装置であって、
前記流入口の近傍に粒子生成面を形成する生成面決定部と、
前記粒子生成面に応じて、前記粒子を削除する境界を表わす粒子消失面を形成する粒子消失面設定部と、
粒子シミュレーションを実行するシミュレーション実行部と、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する粒子削除部と
を有する情報処理装置。
（付記８）
器に溜めた流体の粒子を該器の流入口から流出させる粒子シミュレーションプログラムにおいて、
前記流入口に前記粒子を削除する境界を表わす粒子消失面を形成し、
前記粒子の流入方向に対して、前記粒子消失面より上流側に、粒子生成面を形成し、
粒子シミュレーションを実行し、
前記粒子生成面から定期的に前記粒子を生成し、前記粒子消失面から外部へ出た粒子を消去する
処理をコンピュータに行わせる粒子シミュレーションプログラム。
【符号の説明】
【００９８】
１          モデル
２          器、                      ３          流入口
４          湯道、                    ５          型
６          重力、                    ６ｆ        流入方向
７          粒子生成面、              ８          助走領域
９          粒子消失面
１１        ＣＰＵ、                  １２        主記憶装置
１３        補助記憶装置、            １４        入力装置
１５        表示装置、                １７        通信Ｉ／Ｆ
１８        ドライブ装置、            １９        記憶媒体
３１        粒子生成面情報、          ３２        助走領域情報
３３        粒子消失面情報、          ３５        入力データ
３７        粒子データ
４１、４３  入力データ取得部、        ４１ａ、４３ｂ  生成面決定部
４１ｂ、４３ｃ  助走領域設定部、      ４１ｃ、４３ａ  粒子消失面設定部
４２ａ      消失面形成部、            ４２ｂ      マージン設定部
４２ｃ      消失領域設定部、          ４２ｄ      面配置部
５０        連続体粒子、              ５１        流体粒子
５２        逆流粒子
【図１】
2018018164.tif 000005
【図２】
2018018164.tif 000006
【図３】
2018018164.tif 000007
【図４】
2018018164.tif 000008
【図５】
2018018164.tif 000009
【図６】
2018018164.tif 000010
【図７】
2018018164.tif 000011
【図８】
2018018164.tif 000012
【図９】
2018018164.tif 000013
【図１０】
2018018164.tif 000014
【図１１】
2018018164.tif 000015
【図１２】
2018018164.tif 000016
【図１３】
2018018164.tif 000017