(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025155164
(43)【公開日】2025-10-14
(54)【発明の名称】シミュレーション装置及びプログラム
(51)【国際特許分類】
G06Q 99/00 20060101AFI20251006BHJP
G06F 30/28 20200101ALI20251006BHJP
G06F 30/23 20200101ALI20251006BHJP
【FI】
G06Q99/00
G06F30/28
G06F30/23
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2024058757
(22)【出願日】2024-04-01
(71)【出願人】
【識別番号】000002107
【氏名又は名称】住友重機械工業株式会社
(74)【代理人】
【識別番号】100105887
【弁理士】
【氏名又は名称】来山 幹雄
(72)【発明者】
【氏名】小林 義崇
【テーマコード(参考)】
5B146
5L050
【Fターム(参考)】
5B146AA10
5B146DJ03
5B146DJ08
5B146DJ11
5L050DD02
(57)【要約】
【課題】物体の表面が曲面である場合でも、シミュレーションの精度の低下を抑制することができるシミュレーション装置を提供する。
【解決手段】解析空間に配置された物体の形状及び位置、解析空間を流れる流体を表す情報、初期条件、及び境界条件を含むシミュレーション条件が入力部に入力される。処理部が、物体の表面を再現する複数の二次曲面要素を定義し、解析空間内に、流体を表す複数の流体粒子を配置し、複数の流体粒子のそれぞれから、二次曲面要素までの最短距離を計算する。さらに、複数の流体粒子のそれぞれについて、最短距離の計算値に基づいて物体の表面から受ける力を計算し、計算された力に基づいて複数の流体粒子の挙動を求める。複数の流体粒子の挙動を反映した情報を出力部に出力する。
【選択図】
図7
【特許請求の範囲】
【請求項1】
シミュレーション条件が入力される入力部と、
前記シミュレーション条件に基づいてシミュレーションを行う処理部と、
前記処理部によるシミュレーション結果を出力する出力部と
を備え、
前記シミュレーション条件は、解析空間に配置された物体の形状及び位置、前記解析空間を流れる流体を表す情報、初期条件、及び境界条件を含み、
前記処理部は、
前記物体の表面を再現する複数の二次曲面要素を定義し、
前記解析空間内に、前記流体を表す複数の流体粒子を配置し、
前記複数の流体粒子のそれぞれから、前記二次曲面要素までの最短距離を計算し、
前記複数の流体粒子のそれぞれについて、前記最短距離の計算値に基づいて前記物体の表面から受ける力を計算し、
計算された力に基づいて前記複数の流体粒子の挙動を求め、
前記複数の流体粒子の挙動を反映した情報を前記出力部に出力するシミュレーション装置。
【請求項2】
前記最短距離の計算において、ラグランジュ未定乗数法を用いる請求項1に記載のシミュレーション装置。
【請求項3】
前記シミュレーション条件は、前記物体の弾性情報を含み、
前記処理部は、
前記物体を再現する複数の物体粒子を配置し、
前記二次曲面要素のそれぞれについて、前記複数の流体粒子から受ける力を計算し、
前記二次曲面要素が受ける力に基づいて、前記複数の物体粒子のそれぞれが受ける力を計算し、
前記複数の物体粒子が受ける力に基づいて、前記物体に発生する応力または歪を求め、
前記物体に発生する応力または歪を表す情報を前記出力部に出力する請求項1または2に記載のシミュレーション装置。
【請求項4】
前記最短距離の計算において、ラグランジュ乗数に関する5次方程式を解き、その解に基づいて、前記最短距離を計算する請求項1または2に記載のシミュレーション装置。
【請求項5】
与えられたシミュレーション条件に基づいてシミュレーションの機能をコンピューターに実現させるプログラムであって、
解析空間内の物体の表面を再現する複数の二次曲面要素を定義する機能と、
前記解析空間内に、流体を表す複数の流体粒子を配置する機能と、
前記複数の流体粒子のそれぞれから、前記二次曲面要素までの最短距離を計算する機能と、
前記複数の流体粒子のそれぞれについて、前記最短距離に基づいて前記物体の表面から受ける力を計算する機能と、
計算された力に基づいて前記複数の流体粒子の挙動を求める機能と、
前記複数の流体粒子の挙動を反映した情報を出力部に出力する機能と
をコンピューターに実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、シミュレーション装置及びプログラムに関する。
【背景技術】
【0002】
分子動力学法(MD法)やくりこみ群分子動力学法(RMD法)による解析に、物体を四面体要素(テトラメッシュ)に区分する方法が用いられる(特許文献1)。物体をテトラメッシュに区分すると、物体の表面に三角形の複数の平面要素が現れる。物体に流体が接する場合、流体を表す流体粒子が物体の表面から力を受ける。この力は、流体粒子から三角形の平面要素までの最短距離に基づいて計算される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
物体の表面が曲面である場合、表面を三角形の複数の平面要素で表すと、平面要素のそれぞれの範囲内で、物体の表面の曲面情報が失われる。曲面である実際の表面と、それを近似した平面要素との間の位置ずれによって、シミュレーションの精度が低下する。
【0005】
本発明の目的は、物体の表面が曲面である場合でも、シミュレーションの精度の低下を抑制することができるシミュレーション装置及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
本発明の一観点によると、
シミュレーション条件が入力される入力部と、
前記シミュレーション条件に基づいてシミュレーションを行う処理部と、
前記処理部によるシミュレーション結果を出力する出力部と
を備え、
前記シミュレーション条件は、解析空間に配置された物体の形状及び位置、前記解析空間を流れる流体を表す情報、初期条件、及び境界条件を含み、
前記処理部は、
前記物体の表面を再現する複数の二次曲面要素を定義し、
前記解析空間内に、前記流体を表す複数の流体粒子を配置し、
前記複数の流体粒子のそれぞれから、前記二次曲面要素までの最短距離を計算し、
前記複数の流体粒子のそれぞれについて、前記最短距離の計算値に基づいて前記物体の表面から受ける力を計算し、
計算された力に基づいて前記複数の流体粒子の挙動を求め、
前記複数の流体粒子の挙動を反映した情報を前記出力部に出力するシミュレーション装置が提供される。
【0007】
本発明の他の観点によると、
与えられたシミュレーション条件に基づいてシミュレーションの機能をコンピューターに実現させるプログラムであって、
解析空間内の物体の表面を再現する複数の二次曲面要素を定義する機能と、
前記解析空間内に、流体を表す複数の流体粒子を配置する機能と、
前記複数の流体粒子のそれぞれから、前記二次曲面要素までの最短距離を計算する機能と、
前記複数の流体粒子のそれぞれについて、前記最短距離に基づいて前記物体の表面から受ける力を計算する機能と、
計算された力に基づいて前記複数の流体粒子の挙動を求める機能と、
前記複数の流体粒子の挙動を反映した情報を出力部に出力する機能と
をコンピューターに実現させるプログラムが提供される。
【発明の効果】
【0008】
物体を表面を複数の二次曲面要素で表すことにより、平面要素で表す場合と比べて、シミュレーション精度の低下を抑制することができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、シミュレーションの対象となる解析モデルの一例を示す模式図である。
【
図2】
図2A及び
図2Bは、物体10の表面に露出している四面体要素の1つの表面である平面要素15、及び物体10の実際の表面10Sを示す模式図である。
【
図3】
図3Aは、流体粒子20と1つの二次曲面要素12との位置関係を示す概略斜視図であり、
図3Bは、物体10の表面に起因して発生するポテンシャルの一例を示すグラフである。
【
図4】
図4は、関数f(λ)の一例を示すグラフである。
【
図5】
図5Aは、解析モデルの概略斜視図であり、
図5Bは、解析結果を示すグラフである。
【
図6】
図6は、一実施例によるシミュレーション装置のブロック図である。
【
図7】
図7は、本実施例によるシミュレーション装置の処理部51が実行するシミュレーションの手順を示すフローチャートである。
【
図8】
図8は、出力部52に表示された画像の一例を示す図である。
【
図9】
図9Aは、四面体分割した物体10の物体モデルの一部分を示す模式図であり、
図9Bは、シミュレーション結果を示すグラフである。
【発明を実施するための形態】
【0010】
図1から
図9Bまでの図面を参照して、一実施例によるシミュレーション装置について説明する。
【0011】
図1は、シミュレーションの対象となる解析モデルの一例を示す模式図である。解析空間内に、弾性体である物体10及び流体を表す複数の流体粒子20が配置されている。物体10は、複数の四面体要素に分割され、四面体要素のそれぞれの頂点に、物体粒子11が配置される。物体10の表面に露出する四面体要素の表面のそれぞれが二次曲面要素12で近似される。一例として、物体10は、円管状であり、円管の内部空間に複数の流体粒子20が配置される。シミュレーションにおいては、物体10の内部空間での流体の流れ、及び弾性体である物体10に加わる応力や変形等の解析を行う。
【0012】
次に、
図2A及び
図2Bを参照して、物体10の表面を複数の二次曲面要素12で近似する方法について説明する。
図2A及び
図2Bは、物体10の表面に露出している四面体要素の1つの表面である平面要素15、及び物体10の実際の表面10Sを示す模式図である。平面要素15は三角形であり、物体10の表面10Sは曲面であるが、
図2A及び
図2Bでは次元を削減し、平面要素15を直線で表し、表面10Sを曲線で表している。平面要素15の両端に、物体粒子11が配置される。なお、
図2A及び
図2Bでは、平面要素15と実際の表面10Sとの相違を誇張して表している。
【0013】
図2Aに示すように、平面要素15の頂点(
図2Aでは両端)が、物体10の表面10S上に位置する。表面10S上に複数の点16を生成する。
図2Bに示すように、複数の点16が並ぶ曲面(
図2Bでは曲線)を二次曲面要素12(
図2Bでは二次曲線)で近似する。この近似は、例えば最小二乗法等を適用して行うことができる。
【0014】
図3Aは、流体粒子20と1つの二次曲面要素12との位置関係を示す概略斜視図である。二次曲面要素12の近傍に流体粒子20が配置されている。
図3Bは、物体10の表面に起因して発生するポテンシャルの一例を示すグラフである。横軸は物体10の表面からの距離rを表し、縦軸はポテンシャルUを表す。距離rが正の値から0に近づくにしたがってポテンシャルUが高くなり、距離r=0で無限大になる。また、距離rが大きくなるにしたがって、ポテンシャルUは0に漸近する。流体粒子20と物体10の表面との相互作用を計算するためには、流体粒子20と二次曲面要素12との最短距離r
min(
図3A)を求める必要がある。
【0015】
次に、流体粒子20(
図3A)と二次曲面要素12(
図3A)との最短距離r
minを求める方法について説明する。xyz直交座標系内の二次曲面要素12は、以下の式で表すことができる。
【数1】
ここで、a、b、c、d、e、fは定数である。流体粒子20の位置に点Q(s,t,u)を定義する。
【0016】
二次曲面要素12上に拘束される任意の点P(x,y,z)と点Q(s,t,u)とを両端とする線分の長さは、以下の式で表される。
【数2】
【0017】
線分PQの長さが最小となる点P(x,y,z)の位置を、ラグランジュ未定乗数法を用いて求める。まず、以下の関数S(x,y,z)を定義する。
【数3】
S(x,y,z)=0を束縛条件とし、ラグランジュ乗数をλと標記すると、ラグランジュ未定乗数法において極値を求めるべき関数L(x,y,z,λ)が以下のように定義される。
【数4】
【0018】
関数L(x,y,z,λ)を、変数x,y,z,λで偏微分し、その結果が0となるときのλを求める。すなわち、以下の連立方程式を解いて、極値を与えるラグランジュ乗数λの値を求める。
【数5】
【0019】
式(5a)から式(5d)までの4つの式から、ラグランジュ乗数λを変数とする下記の5次式f(λ)が得られる。
【数6】
【0020】
5次方程式は、代数的に解くことができない。次に、
図4を参照して、式(6)の解を求める方法について説明する。
図4は、関数f(λ)の一例を示すグラフである。まず、関数f(λ)の1次導関数f’(λ)を0にする4次方程式を解いて、関数f(λ)の極値を求める。4次方程式の解を求める方法として、例えばフェラーリの解法等を用いることができる。
図4に、変数λの小さい方から順番に、4つの極値E
1、E
2、E
3、E
4を示している。
【0021】
次に、関数f(λ)の2次導関数f’’(λ)を0にする3次方程式を解いて、関数f(λ)の変曲点を求める。
図4に、変数λの小さい方から順番に、3つの変曲点F
1、F
2、F
3を示している。
【0022】
次に、変数λが隣り合う2つの極値を比較する。2つの極値の符号が反対であれば、その間に解があることになる。
図4に示した例では、極値E
1とE
2との間に解S
2が存在し、極値E
2とE
3との間に解S
3が存在する。極値E
3とE
4との間には、解が存在しない。
【0023】
次に、変数λが、1番目の極値E
1を与えるλ、及び4番目の極値E
4を与えるλの外側の範囲について、解の有無を判定する方法について説明する。1番目の極値E
1の符号と、その極値E
1を与えるλの外側の範囲における1次導関数f’(λ)の符号とを比較する。両者の符号が同一である場合、1番目の極値E
1を与えるλより外側に解が存在し、両者の符号が異なる場合、1番目の極値E
1を与えるλより外側に解が存在しない。4番目の極値E
4を与えるλの外側においても同様である。
図4に示した例では、1番目の極値E
1を与えるλの外側に解S
1が存在し、4番目の極値E
4を与えるλの外側には解が存在しない。
【0024】
変数λが隣り合う2つの極値の間に解が存在する場合、ニュートン法を用いて解を求める。ニュートン法を適用する際に、変曲点を与えるλを初期値として使用するとよい。例えば、
図4に示した例では、極値E
1とE
2との間の解を求める際には、変曲点F
1を与えるλを初期値として使用する。1番目の極値E
1及び4番目の極値E
4を与えるλの外側の解を求める際には、極値を与えるλより外側にややずれたλの値を、ニュートン法の初期値として使用する。
【0025】
得られた複数の解のそれぞれについて、式(5a)~式(5c)を用いて、点Pの座標(x,y,z)を求める。さらに、式(2)を用いて線分PQの長さを計算する。長さが最も短い値を、点Qから二次曲面要素12までの最短距離の解として採用する。
【0026】
次に、
図5A及び
図5Bを参照して、流体粒子20から二次曲面要素12(
図3A)までの最短距離r
minを求める上述の方法の適格性を評価する解析を行った結果について説明する。
【0027】
図5Aは、解析モデルの概略斜視図である。解析空間30に、直方体状の容器25が配置されている。容器25内に球形の物体10及び複数の流体粒子20が収容されている。
図5Aでは、容器25について、その高さ方向の下半分のみを示している。物体10の位置は固定されている。
【0028】
流体粒子20の間の相互作用ポテンシャルとして、レナードジョーンズポテンシャルを用いた。また、流体粒子20と物体10の表面との間の相互作用ポテンシャルとして、
図3Bに示した形状のポテンシャルに代えて、距離rがある値より小さい範囲で、rが減少するにしたがってポテンシャルUが線形に上昇するものを用いた。物体10の表面に起因する流体粒子20のポテンシャルエネルギー、流体粒子20の間のポテンシャルエネルギー、流体粒子20の運動エネルギーを計算した。
【0029】
図5Bは、解析結果を示すグラフである。横軸は時間を単位[s]で表し、縦軸はエネルギーを任意単位で表す。グラフ中の実線SF、Fp、Fk、及びTは、それぞれ物体10の表面に起因する流体粒子20のポテンシャルエネルギー、流体粒子20の間のポテンシャルエネルギー、流体粒子20の運動エネルギー、及び流体粒子20の全エネルギーを示す。
【0030】
物体10が固定されているため、流体粒子20の温度は物体10に伝わらず、平衡状態になると流体の温度は一定になる。
図5Bに示すように、時間が経過すると系が平衡状態になり、流体粒子20の全エネルギーが一定になっている。
【0031】
物体10の表面に起因するポテンシャルが空間的に連続でなければ、系の平衡状態が保てない。この評価結果では、
図5Bに示すように、系の平衡状態が保たれている。この評価結果により、流体粒子20と物体10の表面を近似した二次曲面要素12との最短距離r
minの算出方法を用いて求まるポテンシャルの連続性が保たれていることが確認された。
【0032】
図6は、本実施例によるシミュレーション装置のブロック図である。本実施例によるシミュレーション装置は、入力部50、処理部51、出力部52、及び記憶部53を含む。入力部50から、シミュレーション条件が入力される。さらに、オペレータから入力部50に各種指令(コマンド)等が入力される。入力部50は、例えば通信装置、リムーバブルメディア読取装置、キーボード等で構成される。
【0033】
処理部51は、入力されたシミュレーション条件に基づいてシミュレーションを実施し、処理結果を出力部52に出力する。処理部51は、例えばコンピューターを含み、シミュレーションの各手順をコンピューターに実行させるためのプログラムが記憶部53に記憶されている。出力部52は、通信装置、リムーバブルメディア書込み装置、ディスプレイ等を含む。
【0034】
図7は、本実施例によるシミュレーション装置の処理部51が実行するシミュレーションの手順を示すフローチャートである。
【0035】
まず、処理部51が、入力部50に入力されたシミュレーション条件を取得する(ステップSA1)。シミュレーション条件には、解析空間に配置される物体を定義する情報、解析空間に配置される流体を定義する情報、物体の表面が流体粒子に与えるポテンシャル(例えば、
図3Bに示したポテンシャル)を定義する情報、解析空間の境界条件、及びシミュレーションの初期条件、終了条件等が含まれる。物体を定義する情報には、例えば物体の形状、物体の弾性情報等が含まれる。物体の弾性情報には、例えば物体粒子間の相互作用ポテンシャルを定義する情報が含まれる。流体を定義する情報には、流体粒子間の相互作用ポテンシャルを定義する情報が含まれる。
【0036】
流体粒子20(
図1)の間に作用する相互作用ポテンシャルとして、例えばレナードジョーンズポテンシャルが用いられる。物体粒子11(
図1)の間に作用する相互作用ポテンシャルは、例えば、相互に近接する2つの物体粒子11をバネで連結したときのバネ定数によって定義される。
【0037】
処理部51は、シミュレーション条件を取得すると、解析空間に、流体を表す複数の流体粒子20を配置し、流体粒子20のそれぞれに速度の初期値を付与する(ステップSA2)。さらに、処理部51は、解析空間に配置される物体10(
図1)を複数の物体粒子11(
図1)で表し、物体10の表面を表す複数の二次曲面要素12(
図1、
図3)を定義する(ステップSA3)。
【0038】
次に、処理部51は、複数の流体粒子20のそれぞれについて、流体粒子間の相互作用ポテンシャルに基づいて流体粒子20に作用する力を計算する(ステップSA4)。さらに、処理部51は、複数の物体粒子11のそれぞれについて、物体粒子間の相互作用ポテンシャルに基づいて物体粒子11に作用する力を計算する(ステップSA5)。
【0039】
次に、処理部51は、複数の流体粒子20のそれぞれについて、流体粒子20が物体10の表面から受けるポテンシャル、及び流体粒子20から二次曲面要素12までの最短距離r
min(
図3A)の計算値に基づいて、流体粒子20に作用する力を計算する(ステップSA6)。二次曲面要素12は、流体粒子20からの反作用による力を受ける。
【0040】
次に、処理部51は、二次曲面要素12が流体粒子20から受ける力を、二次曲面要素12の頂点に配置された物体粒子11に配分し、物体粒子11に作用する力を計算する(ステップSA7)。
【0041】
次に、処理部51は、流体粒子20のそれぞれについて、流体粒子20に作用する力に基づいて運動方程式を解き、流体粒子20の位置及び速度を更新する(ステップSA8)。さらに、処理部51は、物体粒子11のそれぞれについて、物体粒子11に作用する力に基づいて運動方程式を解き、物体粒子11の位置及び速度を更新するとともに、物体10の二次曲面要素12を再定義する(ステップSA9)。
【0042】
処理部51は、解析の終了条件が満たされるまで、ステップSA4からステップSA9までの手順を繰り返す(ステップSA10)。解析の終了条件が満たされたら、処理部51は、シミュレーション結果を出力部52(
図6)に出力し(ステップSA11)、解析処理を終了する。出力部52は、例えば画像表示装置であり、シミュレーション結果が画像で表示される。
【0043】
図8は、出力部52に表示された画像の一例を示す図である。処理部51は、物体粒子11に作用する力に基づいて、物体10内の応力の分布を画像で表示する。例えば、物体10の斜視図をグレーの濃淡で表し、グレーの濃淡によって応力の大小を表現する。
【0044】
また、物体10に加わる応力の分布の他に、流体の流れの様子を画像で表示してもよい。例えば、複数の流体粒子20のそれぞれの位置、その流体粒子20が持つ速度ベクトルを含む情報を、出力部52に表示するようにしてもよい。
【0045】
次に、
図9A、
図9Bを参照して、上記実施例によるシミュレーション装置を用いて実際にシミュレーションを行った結果について説明する。このシミュレーションでは、円管状の物体10(
図1)内に満たした高分子流体の流動解析を行った。高分子流体の円管内の流速の分布は、理論的に計算することが可能である。
【0046】
図9Aは、四面体分割した物体10の物体モデルの一部分を示す模式図である。物体10の内径を50mmとし、約10mm程度の寸法の四面体に分割した。物体10の内側の表面10Sは円筒形状である。円筒面は二次曲面であるため、表面10Sを近似する二次曲面要素12は、円筒状の表面10Sに一致する。表面10Sを、三角形の平面要素15に区分すると、実際の表面10Sとの間に誤差Dが生じる。この誤差Dの最大値は、1mm程度になる。
【0047】
シミュレーションにおいては、流体粒子20の直径を2μmとし、流体粒子数を3万個にした。円筒形状の中心軸方向に関しては周期境界条件を適用した。流体に、中心軸方向の体積力を作用させた。
【0048】
図9Bは、シミュレーション結果を示すグラフである。横軸は、円筒中心からの距離を単位[mm]で表し、縦軸は、流速を単位[m/s]で表す。
図9Bに示したグラフ中の白丸記号は、上記実施例による方法で物体10の表面を二次曲面要素12(
図1)で近似した場合の解析結果を示す。中実丸記号は、物体10の表面を三角形の平面要素で近似した場合の解析結果を示す。破線は、理論解を示す。
【0049】
物体10の表面を二次曲面要素12で近似した場合は、三角形の平面要素で近似した場合と比べて、理論解に近い解析結果が得られている。物体10の表面を三角形の平面要素で近似した場合には、特に、物体10の表面に近い範囲で、理論解からの相違が大きい。物体10の表面を三角形の平面要素で近似した場合は、実際の表面10Sと平面要素15との間に最大値が1mm程度の誤差D(
図9A)が生じるためである。上記実施例による方法では、この誤差が小さくなるため、高い解析精度が得られている。
【0050】
次に、上記実施例の優れた効果について説明する。
上記実施例では、物体10の表面を二次曲面要素12(
図1)で近似するため、三角形の平面要素で近似する場合と比べて、物体表面の近似精度を高めることができる。その結果、解析精度を高めることが可能である。
【0051】
さらに、
図8に示したように、物体10に加わる応力の分布が画像で表示されるため、ユーザーは、応力の分布を容易に認識することができる。
【0052】
次に、上記実施例の変形例について説明する。
上記実施例では、物体10が円管状である例について説明したが、上記実施例は、その他の形状の物体についても高精度のシミュレーションを行うことができる。上記実施例では、物体10が弾性体である例について説明したが、物体10が剛体である場合でも、上記実施例による解析を行うことが可能である。
【0053】
上述の実施例は例示であり、本発明は上述の実施例に制限されるものではない。例えば、種々の変更、改良、組み合わせ等が可能なことは当業者に自明であろう。
【符号の説明】
【0054】
10 物体
10S 物体表面
11 物体粒子
12 二次曲面要素
15 平面要素
16 物体の表面上の点
20 流体粒子
25 容器
30 解析空間
50 入力部
51 処理部
52 出力部
53 記憶部