(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-10
(45)【発行日】2022-06-20
(54)【発明の名称】シミュレーション方法、シミュレーション装置及びプログラム
(51)【国際特許分類】
G01M 9/00 20060101AFI20220613BHJP
G16Z 99/00 20190101ALI20220613BHJP
【FI】
G01M9/00
G16Z99/00
(21)【出願番号】P 2018238196
(22)【出願日】2018-12-20
【審査請求日】2021-07-14
(73)【特許権者】
【識別番号】000002107
【氏名又は名称】住友重機械工業株式会社
(74)【代理人】
【識別番号】100105887
【氏名又は名称】来山 幹雄
(72)【発明者】
【氏名】松村 裕也
【審査官】岡村 典子
(56)【参考文献】
【文献】特開2017-224197(JP,A)
【文献】特開2006-190234(JP,A)
【文献】特開2011-059740(JP,A)
【文献】特表2016-534436(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01M 9/00-9/08
G16Z 99/00
G06F 30/28
(57)【特許請求の範囲】
【請求項1】
流出入界面を持つ流れ場を解析領域とし、流れ場内の流体を複数の粒子の集合体として分子動力学法を用いてシミュレーションする方法であって、
前記流出入界面に、境界領域を介して熱浴を接続し、前記熱浴と前記境界領域との間、及び前記境界領域と前記解析領域との間で粒子の移動を許容した解析モデルにおいて、
前記流出入界面における圧力目標値を取得し、
粒子の状態が時間発展したときに前記境界領域内の圧力が前記圧力目標値に維持されるように、前記熱浴内の圧力を制御するシミュレーション方法。
【請求項2】
前記熱浴内の圧力の制御は、前記熱浴内へ粒子を追加するか、または前記熱浴内から粒子を除去することにより行う請求項1に記載のシミュレーション方法。
【請求項3】
さらに、
前記流出入界面における温度目標値を取得し、
粒子の状態が時間発展したときに前記熱浴内の温度が前記温度目標値に維持されるように、前記熱浴内の温度を制御する請求項1または2に記載のシミュレーション方法。
【請求項4】
流出入界面を持つ流れ場を解析領域とし、流れ場内の流体を複数の粒子の集合体として分子動力学法を用いてシミュレーションするシミュレーション装置であって、
前記流出入界面における圧力目標値が入力される入力部と、
前記流出入界面に、境界領域を介して熱浴を接続し、前記熱浴と前記境界領域との間、及び前記境界領域と前記解析領域との間で粒子の移動を許容した解析モデルにおいて、粒子の状態が時間発展させるとともに、粒子の状態が時間発展したときに前記境界領域内の圧力が前記圧力目標値に維持されるように、前記熱浴内の圧力を制御する処理部と
を有するシミュレーション装置。
【請求項5】
前記熱浴内の圧力の制御は、前記熱浴内へ粒子を追加するか、または前記熱浴内から粒子を除去することにより行う請求項4に記載のシミュレーション装置。
【請求項6】
前記入力部に、さらに、前記流出入界面における温度目標値が入力され、
前記処理部は、さらに、粒子の状態が時間発展したときに前記熱浴内の温度が前記温度目標値に維持されるように、前記熱浴内の温度を制御する請求項4または5に記載のシミュレーション装置。
【請求項7】
流出入界面を持つ流れ場を解析領域とし、流れ場内の流体を複数の粒子の集合体として分子動力学法を用いてシミュレーションする機能と、
前記流出入界面における圧力目標値を取得する機能と、
前記流出入界面に、境界領域を介して熱浴を接続し、前記熱浴と前記境界領域との間、及び前記境界領域と前記解析領域との間で粒子の移動を許容した解析モデルにおいて、粒子の状態が時間発展したときに前記境界領域内の圧力が前記圧力目標値に維持されるように、前記熱浴内の圧力を制御する機能と
をコンピュータに実行させるプログラム。
【請求項8】
前記熱浴内の圧力の制御は、前記熱浴内へ粒子を追加するか、または前記熱浴内から粒子を除去することにより行う請求項7に記載のプログラム。
【請求項9】
さらに、
前記流出入界面における温度目標値を取得する機能と、
粒子の状態が時間発展したときに前記熱浴内の温度が前記温度目標値に維持されるように、前記熱浴内の温度を制御する機能と
をコンピュータに実行させる請求項7または8に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分子動力学法またはくりこみ群分子動力学法を用いたシミュレーション方法、シミュレーション装置及びプログラムに関する。
【背景技術】
【0002】
蒸気タービンの低圧段で蒸気の温度が低下すると凝縮が起こり、水滴が形成される。この水滴が動翼に衝突して、動翼にエロージョンが生じる。このエロージョンを抑制するために、蒸気タービン内の蒸気及び水滴の挙動を知ることが重要である。従来、蒸気等の流体の流れ場のシミュレーション解析では、流体を連続体として扱っていた(例えば、特許文献1)。このようなシミュレーション解析では、気体から液体への相変化を伴う流れ場の詳細な挙動を把握することは困難である。
【0003】
分子動力学法またはくりこみ群分子動力学によるシミュレーション解析を行うことにより、流体の挙動を解析する手法が提案されている(特許文献2)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2017-004103号公報
【文献】特開2016-218767号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
分子動力学法を用いた従来のシミュレーション解析では、流体の流入及び流出を伴うような系を取り扱うことが困難であった。本発明の目的は、流体の流入及び流出を伴う系を、分子動力学法を用いて解析するシミュレーション方法、シミュレーション装置及びプログラムを提供することである。本明細書において、くりこみ群分子動力学法は、広義の意味で分子動力学法ということもできる。本明細書において、分子動力学法及びくりこみ群分子動力学法を単に「分子動力学法」という。
【課題を解決するための手段】
【0006】
本発明の一観点によると、
流出入界面を持つ流れ場を解析領域とし、流れ場内の流体を複数の粒子の集合体として分子動力学法を用いてシミュレーションする方法であって、
前記流出入界面に、境界領域を介して熱浴を接続し、前記熱浴と前記境界領域との間、及び前記境界領域と前記解析領域との間で粒子の移動を許容した解析モデルにおいて、
前記流出入界面における圧力目標値を取得し、
粒子の状態が時間発展したときに前記境界領域内の圧力が前記圧力目標値に維持されるように、前記熱浴内の圧力を制御するシミュレーション方法が提供される。
【0007】
本発明の他の観点によると、さらに、上記シミュレーション方法を実行するシミュレーション装置及びプログラムが提供される。
【発明の効果】
【0008】
熱浴内の圧力を制御することにより、解析領域内の流出入界面における圧力を圧力目標値に維持することができる。さらに、解析領域と熱浴との間に圧力制御の対象とならない境界領域を配置することにより、解析領域の流出入界面における圧力を圧力目標値に維持する精度を高めることができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施例によるシミュレーション装置のブロック図である。
【
図2】
図2は、実施例によるシミュレーション方法で解析する対象となる解析モデルの一例を示す概略図である。
【
図3】
図3は、実施例によるシミュレーション装置の処理部が実行する処理手順のフローチャートである。
【
図4】
図4は、流出入界面における圧力制御の手順を示すフローチャートである。
【
図5】
図5Aは、第1熱浴内の圧力制御(
図4のステップS45)の手順を示すフローチャートであり、
図5Bは、個数dNが正の場合の粒子の追加の様子を示す第1熱浴の模式図であり、
図5Cは、個数dNが負の場合の粒子の除去の様子を示す第2熱浴の模式図である。
【
図6】
図6Aは、実施例及び比較例による方法でシミュレーションを行って求めた圧力のノズル軸方向に関する分布を示すグラフであり、
図6Bは、
図6Aの一部を拡大したグラフである。
【
図7】
図7は、他の実施例によるシミュレーション方法で取り扱う解析モデルの斜視図である。
【発明を実施するための形態】
【0010】
図1~
図6Bを参照して、実施例によるシミュレーション装置、及びシミュレーション方法について説明する。
【0011】
図1は、実施例によるシミュレーション装置のブロック図である。実施例によるシミュレーション装置は、入力部10、処理部11、出力部12、及び記憶部13を含む。入力部10から処理部11にシミュレーション条件等が入力される。さらに、オペレータから入力部10に各種指令(コマンド)等が入力される。入力部10は、例えば通信装置、リムーバブルメディア読取装置、キーボード等で構成される。
【0012】
処理部11は、入力されたシミュレーション条件及び指令に基づいて分子動力学法またはくりこみ群分子動力学法(以下、単に分子動力学法という。)を用いたシミュレーションを行う。さらに、シミュレーション結果を出力部12に出力する。シミュレーション結果には、シミュレーション対象物である粒子系の物理量の時間的変化を表す情報が含まれる。処理部11は、例えばコンピュータを含み、分子動力学法によるシミュレーションをコンピュータに実行させるためのプログラムが記憶部13に記憶されている。出力部12は、通信装置、リムーバブルメディア書込み装置、ディスプレイ等を含む。
【0013】
図2は、実施例によるシミュレーション方法で解析する対象となる解析モデルの一例を示す概略図である。例えば壁面23、及び一対の流出入界面21、22を持つ四角柱状の解析領域20が定義される。一方の流出入界面21から解析領域20内に流体、例えば水蒸気が流入し、他方の流出入界面22から外部に流出する流れ場が解析領域20内に形成される。この流体を複数の粒子の集合体で表し、分子動力学法を用いて粒子の挙動を解析することにより、解析領域20内の流れ場の解析を行う。境界条件として、一方の流出入界面21における温度、圧力の目標値(温度目標値T1o、圧力目標値P1o)、及び他方の流出入界面22における温度、圧力の目標値(温度目標値T2o、圧力目標値P2o)が与えられる。
【0014】
流出入界面21に、境界領域30を介して第1熱浴31が接続されている。第1熱浴31と境界領域30との間、及び境界領域30と解析領域20との間で、粒子50の移動が許容されている。もう一方の流出入界面22に第2熱浴40が接続されている。第2熱浴40と解析領域20との間で粒子50の移動が許容されている。
【0015】
流出入界面21、22に接する面を通って解析領域20に粒子50が流入し、または解析領域20から粒子50が流出する。第1熱浴31の表面のうち境界領域30との界面以外の表面、境界領域30の表面のうち、第1熱浴31との境界及び流出入界面21以外の表面、第2熱浴40の表面のうち流出入界面22以外の表面には、反射境界条件を適用する。反射境界に接触した粒子50は、接触時とは反対の面法線方向の速度成分をもって反射される。解析領域20の壁面23には、例えば周期境界条件または反射境界条件を適用する。第1熱浴31及び境界領域30内の圧力を第2熱浴40内の圧力より高く設定すると、解析領域20内に流出入界面21から22に向かう流れ場が形成される。
【0016】
図2に示した解析モデルを通常の分子動力学法により解析すると、流れ場の上流側の流出入界面21に接続された境界領域30及び第1熱浴31内の粒子50は、解析領域20内に流出することにより、時間の経過とともに減少する。逆に、流れ場の下流側の流出入界面22に接続された第2熱浴40内の粒子50は、解析領域20から流入することにより、時間の経過とともに増加する。粒子50の増減により、境界領域30及び第1熱浴31内の圧力は時間の経過とともに低下し、第2熱浴40内の圧力は時間の経過とともに上昇する。このため、流出入界面21及び流出入界面22における圧力を一定に維持することはできない。以下に説明する実施例では、流出入界面21及び流出入界面22における圧力を一定の圧力目標値P1o、P2oに維持する処理を実行する。
【0017】
図3は、実施例によるシミュレーション装置の処理部11(
図1)が実行する処理手順のフローチャートである。
【0018】
まず、処理部11は、入力部10に入力されたシミュレーションの初期条件、境界条件等のシミュレーション条件を取得する(ステップS1)。境界条件には、解析領域20、境界領域30、第1熱浴31、及び第2熱浴40の形状及び大きさ、流出入界面21、22における圧力目標値P1o、P2o、及び温度目標値T1o、T2oが含まれる。初期条件には、粒子50の位置及び速度を示す情報が含まれる。さらに、シミュレーション条件として、粒子50の質量と大きさ、粒子間の相互作用ポテンシャルを規定する情報、時間発展させる時間刻み幅等の情報が含まれる。粒子間の相互作用ポテンシャルとして、例えばレナードジョーンズポテンシャルを適用することができる。相互作用ポテンシャルを規定する情報には、例えばレナードジョーンズポテンシャルのフィッティングパラメータが含まれる。
【0019】
シミュレーション条件を取得すると、処理部11は初期条件に基づいて複数の粒子50を第1熱浴31、境界領域30、解析領域20、及び第2熱浴40内に配置する。粒子50の間の相互作用ポテンシャルに基づいて運動方程式を解くことにより、粒子50の次状態を算出する(ステップS3)。具体的には、1タイムステップ後における粒子50の位置及び速度を算出する。
【0020】
粒子50の次状態が求まると、流出入界面21、22における圧力P1、P2を圧力目標値に維持するための圧力制御を行う(ステップS4)。以下、圧力制御について簡単に説明する。なお、圧力制御の詳細については、後に、
図4及び
図5A~
図5Cを参照して説明する。
【0021】
まず、流出入界面21における圧力制御について説明する。粒子50の最新の状態(すなわちステップS3で求められた粒子50の次状態)における境界領域30(
図2)内の圧力P1b、及び第1熱浴31内の圧力P1hを計算する。境界領域30内の圧力P1bと圧力目標値P1oとを比較し、この比較結果、及び第1熱浴31内の最新の状態における圧力P1hに基づいて、第1熱浴31の圧力目標値P1hoを決定する。第1熱浴31内の圧力が圧力目標値P1hoになるように、第1熱浴31内に粒子50を追加、または第1熱浴31内から粒子50を除去する。
【0022】
次に、流出入界面22における圧力制御について説明する。ステップS3で求められた粒子50の最新の状態における第2熱浴40(
図2)内の圧力P2hを計算する。第2熱浴40の圧力P2hと圧力目標値P2oとを比較し、この比較結果に基づいて、第2熱浴40内の圧力が圧力目標値P2oになるように、第2熱浴40内に粒子50を追加、または第2熱浴40内から粒子50を除去する。
【0023】
圧力制御を行った後、流出入界面21、22における温度T1、T2を、温度目標値に維持するための温度制御を行う(ステップS5)。具体的には、境界領域30及び第1熱浴31内の粒子50の温度を流出入界面21における目標温度に維持し、第2熱浴40内の粒子50の温度を流出入界面22における目標温度に維持する制御を行う。温度制御には、例えば速度スケーリング法を用いることができる。
【0024】
圧力制御及び温度制御を行った後、タイムステップを更新する(ステップS6)。具体的には、ステップS3で算出された粒子50の次状態に対して圧力制御及び温度制御を行った後の粒子50の状態を、現在の状態として設定する。
【0025】
解析を終了するまで、ステップS3からステップS6までの処理を繰り返す(ステップS7)。解析を終了する場合には、シミュレーショ結果を出力部12(
図1)に出力する(ステップS8)。出力部12に出力する情報には、流出入界面21、22における圧力の時間変化、解析領域20内の粒子の状態の時間変化に関する情報を含めるとよい。
【0026】
次に、
図4~
図5Cを参照して、流出入界面21(
図2)における圧力制御(
図3のステップS4)について説明する。
図4は、流出入界面21(
図2)における圧力制御の手順を示すフローチャートである。まず、境界領域30内の圧力を計算する(ステップS41)。境界領域30内の圧力は、例えばビリアル定理を用いて計算することができる。
【0027】
次に、現時点のタイムステップにおいて圧力制御を実行するか否かを判定する(ステップS42)。例えば、圧力制御は、数百タイムステップごとに1回行う。圧力制御を実行しない場合は、圧力制御の処理を終了して、
図3に示したフローチャートに戻る。圧力制御を実行する場合は、第1熱浴31の圧力目標値P1hoを更新するか否かを判定する(ステップS43)。圧力目標値P1hoの更新は、例えば、圧力制御を10~100回行うごとに1回行う。
【0028】
圧力目標値P1hoを更新しない場合には、第1熱浴31の現時点の圧力目標値P1hoに基づいて第1熱浴31の圧力を制御する(ステップS45)。圧力目標値P1hoの初期値として、流出入界面21における圧力目標値P1oを採用する。圧力目標値P1hoを更新する場合には、境界領域30の圧力P1bの平均値に基づいて、第1熱浴31の圧力目標値P1hoを更新する(ステップS44)。境界領域30の圧力P1bの平均値は、ステップS41で求められた過去の複数のタイムステップにおける圧力P1bを平均することにより求められる。第1熱浴31の圧力目標値P1hoは、境界領域30の圧力P1bの平均値、流出入界面21における圧力目標値P1o、及び第1熱浴31の現時点の圧力目標値P1hoに基づいて決定する。例えば、圧力目標値P1hoは以下の式に基づいて更新する。
【数1】
式(1)において左辺のP1hoは更新後の圧力目標値であり、右辺のP1hoは現時点(更新前)の圧力目標値である。
【0029】
圧力目標値P1hoを更新した後、第1熱浴31の更新後の圧力目標値P1hoに基づいて第1熱浴31の圧力を制御する(ステップS45)。例えば、境界領域30の圧力P1bが圧力目標値P1oより低ければ、その程度に応じて、第1熱浴31の圧力目標値P1hoを、最新の状態における第1熱浴31の圧力P1hより高くする。逆に、境界領域30の圧力P1bが圧力目標値P1oより高ければ、その程度に応じて、第1熱浴31の圧力目標値P1hoを、最新の状態における第1熱浴31の圧力P1hより低くする。このように、第1熱浴31の圧力目標値P1hoを一定間隔で修正する。
【0030】
次に、流出入界面22(
図2)における圧力制御(
図3のステップS4)について説明する。流出入界面22においては、第2熱浴40内の圧力目標値として流出入界面22における圧力目標値P2oを用い、第2熱浴40内の圧力を制御する。
【0031】
次に、
図5A~
図5Cを参照して、第1熱浴31内の圧力制御について説明する。
図5Aは、第1熱浴31内の圧力制御(
図4のステップS45)の手順を示すフローチャートである。ステップSA4で算出された圧力(粒子50の次状態における圧力)と圧力の目標値との比較結果に基づいて、第1熱浴31及び第2熱浴40に対して追加または除去する粒子50の数を算出する(ステップS451)。
【0032】
ステップS3で算出した最新の状態における第1熱浴31内の粒子50の総数をNとしたとき、追加すべき粒子の個数dNを、以下の式で算出する。
【数2】
ここで、floor関数は、小数点以下を切り捨てて整数にする関数である。なお、小数点以下を切り捨てる代わりに切り上げてもよいし、小数点第1位を四捨五入して整数にしてもよい。
【0033】
算出された個数dNに相当する数の粒子を、第1熱浴31に対して追加または除去する(ステップS452)。具体的には、個数dNが正のとき粒子50を追加し、個数dNが負のとき粒子50を除去し、個数dNが0のとき粒子50の追加も除去も行わない。第2熱浴40に対しても、第1熱浴31と同様に粒子50の追加または除去を行う。
【0034】
図5Bは、個数dNが正の場合の粒子50の追加の様子を示す第1熱浴31の模式図である。
図5Bにおいて、直近の粒子50の位置を破線で表し、最新の状態(ステップS3で求められた次状態)の粒子50の位置を実線で表している。直近の状態から最新の状態に遷移するときに、2個の粒子50cが第1熱浴31から流出している。最新の状態では、第1熱浴31内の粒子数が減少するため、圧力が低下する。このため、P1ho>P1hが成立し、個数dNが正になる。一例として、dN=2の場合、
図5Bの下図に示すように、第1熱浴31内に2つの粒子50aを追加する。
【0035】
新たに追加された粒子50aと、既に存在する粒子50との距離が短すぎると、レナードジョーンズポテンシャルによる大きな斥力が両者に作用する。その結果、次のタイムステップで粒子が急激に加速され、計算が破綻する可能性が生じる。新たに追加した粒子50aと、既に存在する粒子50との間に作用する斥力が所定の許容上限値を超える場合には、新たに追加した粒子50aを再配置する。
【0036】
図5Cは、個数dNが負の場合の粒子50の除去の様子を示す第2熱浴40の模式図である。
図5Cにおいて、直近の状態における粒子50の位置を破線で表し、最新の状態の粒子50の位置を実線で表している。直近の状態から最新の状態に遷移するときに、2個の粒子50dが第2熱浴40に流入している。最新の状態では、第2熱浴40内の粒子数が増加するため、圧力が上昇する。このため、P2ho<P2hが成立し、個数dNが負になる。一例として、dN=-2の場合、
図5Cの下図に示すように、第2熱浴40内から2つの粒子50bを除去する。
【0037】
次に、上記実施例の優れた効果について説明する。
本願発明者による種々のシミュレーション実験によると、圧力を調整するために粒子50の追加を行っている第1熱浴31と、解析領域20とを直接接続すると、両者の界面において圧力が不連続に変化する現象が発生し得ることがわかった。両者の界面で圧力が不連続に変化すると、第1熱浴31内の圧力が圧力目標値P1oに維持されていても、流出入界面21から見て解析領域20側の微小な領域内の圧力が圧力目標値P1oからずれてしまう。
【0038】
上記実施例では、境界領域30に対しては粒子50の追加及び除去を行わない。このため、境界領域30と解析領域20との間の流出入界面21において圧力の不連続な変化は生じない。境界領域30内の圧力P1bは、流出入界面21における圧力目標値P1oに維持される。このため、粒子50の追加を行っている第1熱浴31と、粒子の追加を行わない境界領域30との界面において圧力が不連続に変化したとしても、流出入界面21から見て解析領域20側の微小な領域内の圧力を圧力目標値P1oに維持することができる。
【0039】
上述のように、上記実施例は、圧力境界条件を伴う非平衡分子動力学によるシミュレーションに適用することにより、圧力境界条件をシミュレーションに高精度に反映させることができる。
【0040】
次に、
図6A及び
図6Bを参照して、実施例の優れた効果を確認するために行ったシミュレーション及びその結果について説明する。
【0041】
実施例による方法及び比較例による方法で、ラバルノズル(収束拡大ノズル)内を流れる流体の圧力分布をシミュレーションにより求めた。実施例による方法では、ラバルノズルの入口に、
図2に示した第1熱浴31と解析領域20を接続した。比較例による方法では、ラバルノズルの入口に第1熱浴31を直接接続した。ラバルノズルの出口は開放した。
【0042】
図6Aは、実施例及び比較例による方法でシミュレーションを行って求めた圧力のノズル軸方向に関する分布を示すグラフである。
図6Bは、
図6Aの一部を拡大したグラフである。横軸は、第1熱浴31の端面からラバルノズルの出口までの長さで正規化した距離を表し、縦軸は入口における圧力目標値P1oで正規化した圧力を表す。横軸の左端が第1熱浴31の端面に対応し、右端がラバルノズルの出口に対応する。中空の丸記号及び中実の丸記号が、それぞれ実施例及び比較例によるシミュレーション結果を示す。
【0043】
図6Aに示したように、入口から出口に向かって圧力が低下している。
図6Bに示した左端から3個目までの3個の中空の丸記号及び中実の丸記号が、第1熱浴31内の圧力を示し、左から4個目の中空の丸記号が、境界領域30内の圧力を示している。左端から5個及びそれよりも右側の中空の丸記号、及び左端から4個目、及びそれよりも右側の中実の丸記号が、解析領域20内の圧力を示している。
【0044】
比較例においては、解析領域20の左端における正規化圧力が1より低くなっている。すなわち、解析領域20の左端における圧力が圧力目標値P1oに維持されていない。これに対し実施例においては、境界領域30内の正規化圧力が1になるように第1熱浴31内の圧力が制御されているため、境界領域30内の正規化圧力がほぼ1に維持されている。境界領域30と解析領域20との境界における圧力の変化は緩やかであるため、解析領域20の左端における正規化圧力もほぼ1に維持されている。すなわち、解析領域20の左端における圧力が、圧力目標値P1oに維持されている。
【0045】
上記シミュレーション実験により、解析領域20の圧力境界条件が規定されている面の圧力を、圧力目標値に維持することが可能であることが確認された。
【0046】
次に、上記実施例の変形例について説明する。
上記実施例では、四角柱状の解析領域20の両端の流出入界面21、22(
図2)に圧力境界条件を適用しているが、その他の面にも圧力境界条件を適用することが可能である。また、上記実施例では、流れ場の上流側の流出入界面21に境界領域30を接続したが、下流側の流出入界面22に境界領域30を接続してもよい。
【0047】
上記実施例では、解析領域20の形状を四角柱状としているが、その他の任意の形状にすることも可能である。また、流体と相互作用して姿勢を変えたり移動したりする剛体を配置してもよい。
【0048】
また、上記実施例では、粒子間の相互作用ポテンシャルとして、レナードジョーンズポテンシャルを適用しているが、その他のポテンシャル、例えばモースポテンシャル等を適用してもよい。
【0049】
圧力目標値P1hoを更新する処理(
図4のステップS44)を実行する周期、及び第1熱浴31の圧力制御(
図4のステップS45)を実行する周期は、任意に設定することができる。これらの処理を実行する周期を短くしすぎると計算負荷が増大する。逆に、これらの処理を実行する周期を長くしすぎると、解析領域20の圧力境界条件が設定されている流出入界面21(
図2)における圧力と、圧力目標値P1oとのずれが大きくなる。圧力境界条件が設定されている流出入界面21における圧力と、圧力目標値P1oとのずれが許容範囲内に納まるように、これらの処理を実行する周期を設定することが好ましい。
【0050】
次に、
図7を参照して他の実施例によるシミュレーション方法について説明する。以下、
図1~
図5に示した実施例によるシミュレーション方法と共通の構成については説明を省略する。
図1~
図5に示した実施例では、解析領域20の流出入界面21における圧力目標値P1oが面内に一定であるが、本実施例では、圧力目標値P1oが面内の場所によって異なっている。
【0051】
図7は、本実施例によるシミュレーション方法で取り扱う解析モデルの斜視図である。本実施例においても、
図1~
図5に示した実施例と同様に、解析領域20に流出入界面21、22が画定されている。流出入界面21が、境界領域30を介して第1熱浴31に接続されている。本実施例では、流出入界面21が複数の区画21aに区分されている。流出入界面21の複数の区画21aに対応して、境界領域30が複数の境界領域セル30aに区分され、第1熱浴31が複数の第1熱浴セル31aに区分されている。複数の第1熱浴セル31aは、それぞれ対応する境界領域セル30aを介して解析領域20に接続される。
【0052】
流出入界面21における圧力目標値P1oの面内分布を反映するように、複数の区画21aの各々に圧力目標値P1oが設定される。区画21aごとに、当該区画21aの圧力目標値P1oが異なっている。隣接する2つの境界領域セル30aの界面、隣接する2つの第1熱浴セル31aの界面、相互に対応する境界領域セル30aと第1熱浴セル31aとの界面は、粒子の通過を許容しており、これらの界面を横切って粒子が自由に移動する。
【0053】
図4のステップS41では、複数の境界領域セル30aごとに圧力を計算する。ステップS44では、複数の境界領域セル30aのそれぞれについて圧力の平均値を計算する。さらに、第1熱浴セル31aのそれぞれについて、対応する境界領域セル30aの圧力の平均値、及び対応する区画21aにおける圧力目標値P1oに基づいて圧力目標値P1hoを更新する。ステップS45では、第1熱浴セル31aごとに圧力制御を行う。すなわち、
図5のステップS451において、第1熱浴セル31aごとに追加または除去する粒子数を算出し、ステップS452において、第1熱浴セル31aごとに粒子の追加または除去を行う。
【0054】
流出入界面21を複数の区画21aに区分する条件は、シミュレーション条件の一つとして入力部10(
図1)に入力される。入力部10に入力された条件は、ステップS1(
図3)で処理部11(
図1)が取得する。処理部11は、入力されたシミュレーション条件に基づいて、境界領域30を複数の境界領域セル30aに区分し、さらに、第1熱浴31を複数の第1熱浴セル31aに区分する。
【0055】
次に、第2実施例の優れた効果について説明する。
第2実施例では、圧力境界条件が適用されている流出入界面21における圧力目標値P1oが面内で一様ではない場合にも、圧力境界条件を満たすようにシミュレーションを行うことができる。
【0056】
上述の各実施例は例示であり、異なる実施例で示した構成の部分的な置換または組み合わせが可能であることは言うまでもない。複数の実施例の同様の構成による同様の作用効果については実施例ごとには逐次言及しない。さらに、本発明は上述の実施例に制限されるものではない。例えば、種々の変更、改良、組み合わせ等が可能なことは当業者に自明であろう。
【符号の説明】
【0057】
10 入力部
11 処理部
12 出力部
13 記憶部
20 解析領域
21 流出入界面
21a 流出入界面の区画
22 流出入界面
23 壁面
30 境界領域
30a 境界領域セル
31 第1熱浴
31a 第1熱浴セル
40 第2熱浴
50、50a、50b、50c、50d 粒子
P1 流出入界面における圧力
P1b 境界領域の圧力
P1h 第1熱浴の圧力
P1ho 第1熱浴の圧力目標値
P1o 流出入界面における圧力目標値
P2 流出入界面における圧力
P2h 第2熱浴の圧力
P2o 流出入界面における圧力目標値