以下に図面を参照して、本発明にかかる解析モデル表示処理プログラム、解析モデル表示処理方法および情報処理装置の実施の形態を詳細に説明する。
(実施の形態)
図1は、実施の形態にかかる解析モデル表示処理方法の一実施例を示す説明図である。図1において、情報処理装置101は、解析モデルを表示するコンピュータである。ここで、解析モデルは、有限要素法(FEM:Finite Element Method)による解析に用いるモデルであり、ソリッド要素の集合である。
有限要素法とは、解析対象である物体の変形・振動などを数値的に解析する手法の一つである。有限要素法による解析では、例えば、解析対象を細かい要素に分割し、要素間に境界条件を与え、偏微分方程式や連立方程式を解くことで全体のふるまいを解析する。解析対象は、例えば、自動車や構造物(建築物、橋等)などである。
ソリッド要素は、複数の要素からなる三次元要素である。要素は、面、節点(頂点)、エッジ(線分)などである。ソリッド要素としては、例えば、ヘキサ要素(六面体)やテトラ要素(四面体)などがある。解析モデルは、例えば、解析対象のCAD(Computer−Aided Design)モデルをもとに作成される。
ここで、HPCや計算ソルバー技術の進展にともなって、大規模シミュレーションが可能となり、解析モデル自体の規模も大きくなってきている。一方、解析モデルが大規模化すると、PC(Personal Computer)等の汎用コンピュータでは、たとえ解析モデルの情報を読み込めたとしても、画面操作にともなう動作が重たいものとなることがある。
例えば、構造物の解析モデルを表示して解析結果を確認するにあたり、解析モデルの回転、移動、ズームなどの操作にともなう動作が重たいものとなると、ユーザのストレスを招いてしまう。大規模シミュレーションの解析結果の可視化手法として、クラスタ環境における分散並列技術を利用することも考えられるが、個人や中小企業ではクラスタ環境を持たないことが多い。
また、他の可視化手法として、例えば、解析対象のうちの特定の部分だけを切り出して表示する、すなわち、見たい部分以外にマスキングをかけることも考えられる。しかしながら、この手法では、切り出した部分しか表示されないため、解析対象の全体像を把握することができなくなる。
また、この手法では、別の部分を見たいときは、一旦マスキングを解除し、解析対象全体を表示させた後に、別の部位を指定することになる。このため、ユーザの操作数が増えて手間がかかるとともに、コンピュータの処理量も増加する。なお、各要素のサイズを大きくすることで、解析モデルのデータ量を抑えることも考えられるが、解析対象の細かい部分を再現することができなくなる。
そこで、本実施の形態では、解析モデルを表示する際に、解析モデルの表面ではない要素を非表示とすることで、解析モデルの表示にかかる処理量を低減する解析モデル表示処理方法について説明する。以下、情報処理装置101の処理例について説明する。
(1)情報処理装置101は、複数の要素からなるソリッド要素の集合である解析モデルのモデル情報に基づいて、解析モデルの表面の要素を特定する。ここで、解析モデルのモデル情報は、解析モデルに含まれる節点の情報と、解析モデルに含まれるソリッド要素の情報とを含む。節点の情報は、例えば、シミュレーション空間(三次元空間)における節点の位置(X,Y,Z)を示す。
また、ソリッド要素の情報は、ソリッド要素を構成する要素、すなわち、ソリッド要素を構成する面、および、各面を構成する節点を示す。例えば、ソリッド要素を「ヘキサ要素」とすると、ソリッド要素の情報は、ソリッド要素を構成する6個の面(四角形)と8個の節点を示すとともに、ソリッド要素を構成する6個の面それぞれが、どの節点によって構成されるのかを示す。また、ソリッド要素を「テトラ要素」とすると、ソリッド要素の情報は、ソリッド要素を構成する4個の面(三角形)と4個の節点を示すとともに、ソリッド要素を構成する4個の面それぞれが、どの節点によって構成されるのかを示す。
また、解析モデルのモデル情報は、例えば、解析モデルに含まれる各節点について、当該各節点が解析モデルの表面の節点であるか否かを示す情報を含むことにしてもよい。なお、解析モデルのモデル情報の具体例については、図4および図5を用いて後述する。
図1の例では、モデル情報110は、解析モデルM1のモデル情報である。解析モデルM1は、ヘキサ要素であるソリッド要素の集合である。モデル情報110は、解析モデルM1に含まれる節点(例えば、節点111〜118)の情報と、解析モデルM1に含まれるソリッド要素(例えば、ソリッド要素120)の情報とを含む。
また、モデル情報110は、解析モデルM1に含まれる各節点について、当該各節点が解析モデルM1の表面の節点であるか否かを示す情報を含む。一例として、ソリッド要素120を例に挙げると、モデル情報110は、各節点111〜117について、各節点111〜117が解析モデルM1の表面の節点であることを示す情報を含む。また、モデル情報110は、節点118について、節点118が解析モデルM1の表面の節点ではないことを示す情報を含む。
この場合、まず、情報処理装置101は、モデル情報110に基づいて、解析モデルM1の表面の節点を特定する。そして、情報処理装置101は、特定した表面の節点のみからなる面を、解析モデルM1の表面の要素(面要素)として特定する。
(2)情報処理装置101は、解析モデルを表示する際に、解析モデルのうち、特定した表面の要素とは異なる要素を非表示とする制御を行う。すなわち、情報処理装置101は、解析モデルの表面ではない内部の要素を非表示とする制御を行う。
具体的には、例えば、情報処理装置101は、モデル情報110から、特定した表面の要素に関する情報を抽出する。そして、情報処理装置101は、抽出した表面の要素に関する情報に基づいて、解析モデルM1のうち、特定した表面の要素のみを表示することにしてもよい。すなわち、解析モデルM1の表示に先立って、モデル情報110から表面の要素に関する情報のみを抽出し、抽出した表面の要素に関する情報に基づいて、解析モデルM1の表面を形成する要素(面要素)のみを表示する。
他の表示制御例としては、情報処理装置101は、モデル情報110に基づいて、解析モデルM1に含まれる全ての要素を表示した後に、解析モデルM1のうち、特定した表面の要素とは異なる要素を非表示とすることにしてもよい。すなわち、解析モデルM1の全ての要素を、内部の要素を含めて一旦表示してから、解析モデルM1の内部の要素を非表示とする。
図1の例では、解析モデルM1の表面の要素とは異なる要素を非表示とする制御が行われて、解析モデルM1の表面を形成する要素(面要素)のみが、表示装置130に表示されている。なお、表示装置130は、情報処理装置101が有していてもよく、また、情報処理装置101に接続された他のコンピュータが有していてもよい。
このように、情報処理装置101によれば、複数の要素からなるソリッド要素の集合である解析モデルを表示するにあたり、解析モデルの内部の要素を非表示としてデータ量を削減することで、解析モデルの表示にかかる処理量を低減することができる。これにより、解析モデルの全体像を把握可能に表示しつつ、解析モデルの回転、移動、ズームなどの操作にともなう動作が重たいものとなるのを防いで、ユーザのストレスを削減することができる。
(システム200のシステム構成例)
つぎに、実施の形態にかかるシステム200のシステム構成例について説明する。ここでは、図1に示した情報処理装置101を、PCやタブレット端末などの汎用コンピュータに適用した場合を例に挙げて説明する。
図2は、システム200のシステム構成例を示す説明図である。図2において、システム200は、情報処理装置101と、サーバ201と、を含む。システム200において、情報処理装置101およびサーバ201は、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
ここで、情報処理装置101は、システム200のユーザが使用する。また、サーバ201は、各種情報処理を行うコンピュータである。例えば、サーバ201は、有限要素法による構造解析を実行する。サーバ201は、例えば、クラウドコンピューティングのサーバである。
(情報処理装置101のハードウェア構成例)
図3は、情報処理装置101のハードウェア構成例を示すブロック図である。図3において、情報処理装置101は、CPU(Central Processing Unit)301と、メモリ302と、ディスクドライブ303と、ディスク304と、I/F(Interface)305と、ディスプレイ306と、入力装置307と、を有する。また、各構成部はバス300によってそれぞれ接続される。
ここで、CPU301は、情報処理装置101の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する記憶部である。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ディスクドライブ303は、CPU301の制御に従ってディスク304に対するデータのリード/ライトを制御する。ディスク304は、ディスクドライブ303の制御で書き込まれたデータを記憶する。ディスク304としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
I/F305は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部装置(例えば、図2に示したサーバ201)に接続される。そして、I/F305は、ネットワーク210と自装置内部とのインターフェースを司り、外部装置からのデータの入出力を制御する。I/F305には、例えば、モデムやLANアダプタなどを採用することができる。
ディスプレイ306は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ306としては、例えば、液晶ディスプレイ、CRT(Cathode Ray Tube)などを採用することができる。図1に示した表示装置130は、例えば、ディスプレイ306に対応する。
入力装置307は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置307は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
なお、情報処理装置101は、上述した構成部のうち、例えば、ディスクドライブ303、ディスク304、ディスプレイ306、入力装置307などを有さないことにしてもよい。また、情報処理装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、スキャナ、プリンタなどを有することにしてもよい。また、図2に示したサーバ201についても、情報処理装置101と同様のハードウェア構成例により実現することができる。
(有限要素解析モデルMのモデル情報の具体例)
つぎに、有限要素解析モデルMのモデル情報の具体例について説明する。有限要素解析モデルMは、有限要素法による解析(有限要素解析)に用いる解析モデルである。ここでは、有限要素解析モデルMとして、「有限要素解析モデルMx」を例に挙げて説明する。
図4および図5は、有限要素解析モデルのモデル情報の具体例を示す説明図である。図4および図5において、モデル情報400は、有限要素解析モデルMxの節点構成情報410とソリッド要素構成情報420とを含む。節点構成情報410は、有限要素解析モデルMxに含まれる節点の情報である。ソリッド要素構成情報420は、有限要素解析モデルMxに含まれるソリッド要素の情報である。
まず、図4を用いて、節点構成情報410について具体的に説明する。
図4において、節点構成情報410は、ノードID、X、Y、Zおよび表面フラグのフィールドを有し、各フィールドに情報を設定することで、節点情報(例えば、節点情報410−1〜410−18)をレコードとして記憶する。ここで、ノードIDは、有限要素解析モデルMに含まれる節点を一意に識別する識別子である。
X、YおよびZは、シミュレーション空間における節点の位置を示す座標である。表面フラグは、有限要素解析モデルMxの表面の節点であるか否かを示す情報である。ここでは、表面フラグ「ON」は、有限要素解析モデルMxの表面の節点であることを示す。表面フラグ「OFF」は、有限要素解析モデルMxの表面の節点ではないことを示す。
例えば、節点情報410−1は、有限要素解析モデルMxに含まれるノードID「1204」の節点の位置(X、Y、Z)=(74.37827、115.4641、15)および表面フラグ「ON」を示す。
つぎに、図5を用いて、ソリッド要素構成情報420について具体的に説明する。
図5において、ソリッド要素構成情報420は、ソリッド要素ID、面IDおよび構成ノードIDのフィールドを有し、各フィールドに情報を設定することで、ソリッド要素情報(例えば、ソリッド要素情報420−1,420−2)をレコードとして記憶する。
ここで、ソリッド要素IDは、有限要素解析モデルMxに含まれるソリッド要素を一意に識別する識別子である。面IDは、ソリッド要素を構成する面を一意に識別する識別子である。構成ノードIDは、面を構成する節点のノードIDである。ここでは、ソリッド要素を「ヘキサ要素」とする。この場合、ソリッド要素を構成する面の数は「6」となり、各面を構成する節点の数は「4」となる。
例えば、ソリッド要素情報420−1は、有限要素解析モデルMxに含まれるソリッド要素ID「S1」のソリッド要素S1を構成する面の面ID「F1,F2,F3,F4,F5,F6」を示す。また、ソリッド要素情報420−1は、ソリッド要素S1の各面F1〜F6を構成する節点のノードID、例えば、面F1を構成する節点のノードID「1,2,3,4」を示す。
(有限要素解析モデルMの解析結果の具体例)
つぎに、有限要素解析モデルMの解析結果の具体例について説明する。ここでは、有限要素解析モデルMとして、「有限要素解析モデルMx」を例に挙げて説明する。
図6Aおよび図6Bは、有限要素解析モデルの解析結果の具体例を示す説明図である。図6Aおよび図6Bにおいて、解析結果情報600は、有限要素解析モデルMxの節点解析結果情報610とソリッド要素解析結果情報620とを含む。節点解析結果情報610は、有限要素解析モデルMxに含まれる節点についての解析結果を示す。ソリッド要素解析結果情報620は、有限要素解析モデルMxに含まれるソリッド要素についての解析結果を示す。
まず、図6Aを用いて、節点解析結果情報610について具体的に説明する。
図6Aにおいて、節点解析結果情報610は、ノードID、応力値および変位のフィールドを有し、各フィールドに情報を設定することで、有限要素解析モデルMxに含まれる節点ごとの解析結果(例えば、解析結果610−1〜610−18)をレコードとして記憶する。
ここで、ノードIDは、有限要素解析モデルMxに含まれる節点を一意に識別する識別子である。応力値および変位は、有限要素解析により得られた節点における応力値および変位を示す。例えば、解析結果610−1は、有限要素解析モデルMxに含まれるノードID「1204」の節点の応力値「1.00357」および変位「0.000406」を示す。
つぎに、図6Bを用いて、ソリッド要素解析結果情報620について具体的に説明する。
図6Bにおいて、ソリッド要素解析結果情報620は、ソリッド要素IDおよび応力値のフィールドを有し、各フィールドに情報を設定することで、有限要素解析モデルMxに含まれるソリッド要素ごとの解析結果(例えば、解析結果620−1〜620−12)をレコードとして記憶する。
ここで、ソリッド要素IDは、有限要素解析モデルMxに含まれるソリッド要素を一意に識別する識別子である。応力値は、有限要素解析により得られたソリッド要素における応力値を示す。例えば、解析結果620−1は、有限要素解析モデルMxに含まれるソリッド要素ID「S101」のソリッド要素の応力値「1.53」を示す。
(情報処理装置101の機能的構成例)
図7は、情報処理装置101の機能的構成例を示すブロック図である。図7において、情報処理装置101は、取得部701と、受付部702と、特定部703と、表示制御部704と、を含む。取得部701〜表示制御部704は制御部となる機能であり、具体的には、例えば、図3に示したメモリ302、ディスク304などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F305により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク304などの記憶装置に記憶される。
取得部701は、有限要素解析モデルMのモデル情報を取得する。ここで、有限要素解析モデルMは、有限要素法による解析(有限要素解析)に用いる解析対象の解析モデルであり、複数の要素からなるソリッド要素の集合である。具体的には、例えば、取得部701は、図3に示した入力装置307を用いたユーザの操作入力により、図4および図5に示したような有限要素解析モデルMxのモデル情報400を取得することにしてもよい。
なお、有限要素解析モデルMのモデル情報は、情報処理装置101において、解析対象のCADモデルに基づいて作成することにしてもよい。この場合、取得部701は、自装置において作成された有限要素解析モデルMのモデル情報を取得する。
また、取得部701は、有限要素解析モデルMの解析結果情報を取得する。ここで、解析結果情報は、有限要素解析モデルMに対する有限要素解析により得られる解析結果を示す。有限要素解析は、例えば、外力や内力による解析対象の変形や応力を解析する構造解析である。例えば、解析結果情報は、有限要素解析モデルMに含まれる各節点の解析結果と各ソリッド要素の解析結果とを示す。具体的には、例えば、取得部701は、入力装置307を用いたユーザの操作入力により、図6Aおよび図6Bに示したような有限要素解析モデルMxの解析結果情報600を取得することにしてもよい。
有限要素解析モデルMに対する有限要素解析は、例えば、図2に示したサーバ201において、有限要素解析モデルMのモデル情報に基づいて実行されることにしてもよい。この場合、取得部701は、サーバ201から、図6Aおよび図6Bに示したような解析結果情報600を取得することにしてもよい。
また、有限要素解析モデルMに対する有限要素解析は、情報処理装置101において、有限要素解析モデルMのモデル情報に基づいて実行することにしてもよい。この場合、取得部701は、自装置において実行された有限要素解析の解析結果として、図6Aおよび図6Bに示したような解析結果情報600を取得する。
受付部702は、有限要素解析モデルMの表示指示を受け付ける。有限要素解析モデルMの表示指示は、例えば、有限要素解析モデルMのモデル情報および解析結果を指定することにより行われる。具体的には、例えば、受付部702は、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMの表示指示を受け付ける。
特定部703は、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMの表面の要素を特定する。具体的には、例えば、特定部703は、有限要素解析モデルMの表示指示に応じて、指定された有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMの表面の節点を特定する。そして、特定部703は、特定した表面の節点のみからなる面を、有限要素解析モデルMの表面の要素として特定する。
一例として、指定された有限要素解析モデルMのモデル情報を、図4および図5に示したモデル情報400とする。この場合、特定部703は、取得されたモデル情報400の表面フラグを参照して、表面フラグ「ON」の節点を、有限要素解析モデルMxの表面の節点として特定する。そして、特定部703は、特定した表面の節点のみからなる面を、有限要素解析モデルMxの表面の要素として特定する。
なお、有限要素解析モデルMに含まれる各節点が有限要素解析モデルMの表面の節点であるか否かを示す情報(例えば、図4に示した表面フラグ)は、情報処理装置101において作成することにしてもよい。より詳細に説明すると、例えば、特定部703は、有限要素解析モデルMに含まれる各ソリッド要素について、当該各ソリッド要素の面ごとに、当該面(対象面)が、他のソリッド要素の面と一致するか否かを判断する。ここで、他のソリッド要素の面と一致する場合、特定部703は、対象面が、外側に露出していない面、すなわち、有限要素解析モデルMの表面ではないと判定する。一方、他のソリッド要素の面と一致しない場合、特定部703は、対象面が、外側に露出した面、すなわち、有限要素解析モデルMの表面であると判定する。そして、特定部703は、判定した面を構成する節点を、有限要素解析モデルMの表面の節点として特定する。この場合、特定部703は、有限要素解析モデルMの表面であると判定した面を、有限要素解析モデルMの表面の要素として特定することにしてもよい。なお、有限要素解析モデルMの表面となる面は、例えば、入力装置307を用いたユーザの操作入力により指定されることにしてもよい。
以下の説明では、特定部703によって特定された、有限要素解析モデルMの表面の要素を「表面要素」と表記する場合がある。また、有限要素解析モデルMのうち、特定された表面要素とは異なる要素を「内部要素」と表記する場合がある。
表示制御部704は、有限要素解析モデルMを表示する際に、有限要素解析モデルMのうち、特定された表面要素とは異なる内部要素を非表示とする制御を行う。具体的には、例えば、まず、表示制御部704は、有限要素解析モデルMのモデル情報から、特定された表面要素に関する情報を抽出する。
より詳細に説明すると、例えば、表示制御部704は、図4に示した節点構成情報410から、表面要素を構成する各節点のノードIDに対応する節点情報を抽出する。また、表示制御部704は、図5に示したソリッド要素構成情報420から、表面要素の面IDを含むソリッド要素情報を抽出する。
そして、表示制御部704は、抽出した情報(節点情報、ソリッド要素情報)に基づいて、有限要素解析モデルMのうち、表面要素のみを表示する。これにより、有限要素解析モデルMの表示指示に応じて、内部要素を非表示とした有限要素解析モデルMを、例えば、図3に示したディスプレイ306に表示することができる。
また、表示制御部704は、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMに含まれる全ての要素を表示した後に、有限要素解析モデルMのうち、特定された表面要素とは異なる内部要素を非表示とすることにしてもよい。すなわち、表示制御部704は、有限要素解析モデルMの表面要素を表示したままで、内部要素を表示しないようにする。
内部要素を非表示にすると、有限要素解析モデルMのうち、表面の節点とは異なる内部の節点、内部の節点間のエッジ、および、内部の節点/表面の節点間のエッジが非表示となる。これにより、有限要素解析モデルMの表示指示に応じて、有限要素解析モデルMに含まれる全ての要素を一旦表示した後に、内部要素を非表示とすることができる。
なお、有限要素解析モデルMの表示例については、図8を用いて後述する。
また、受付部702は、有限要素解析モデルMの表面のいずれかの節点の指定を受け付ける。表面の節点の指定は、例えば、内部要素を非表示として表示された有限要素解析モデルMの表面上の節点を選択することにより行われてもよく、また、表面の節点のノードIDを入力することにより行われてもよい。
具体的には、例えば、受付部702は、後述の図8に示すような解析結果表示画面800において、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMの表面のいずれかの節点の指定を受け付ける。解析結果表示画面800は、解析結果を表示する対象の節点を指定可能に有限要素解析モデルMを表示する操作画面である。
また、特定部703は、取得された有限要素解析モデルMの解析結果情報を参照して、指定された表面の節点の解析結果を特定する。具体的には、例えば、特定部703は、解析結果情報600に含まれる節点解析結果情報610を参照して、有限要素解析モデルMxの指定された節点の解析結果を特定する。
一例として、ノードID「1204」の節点が指定されたとする。この場合、特定部703は、節点解析結果情報610を参照して、有限要素解析モデルMxの指定された節点のノードID「1204」に対応する応力値「1.00357」および変位「0.000406」を解析結果として特定する。
また、表示制御部704は、特定された解析結果を、指定された節点と対応付けて表示する。具体的には、例えば、表示制御部704は、内部節点を非表示として表示された有限要素解析モデルMの表面上の指定された節点に対して、特定された解析結果をポップアップ表示することにしてもよい。
なお、指定された節点の解析結果の表示例については、図8を用いて後述する。
また、特定部703は、有限要素解析モデルMのモデル情報に基づいて、指定された節点を含むソリッド要素を特定することにしてもよい。そして、特定部703は、取得された有限要素解析モデルMの解析結果情報を参照して、特定したソリッド要素の解析結果を特定することにしてもよい。
具体的には、例えば、特定部703は、解析結果情報600に含まれるソリッド要素解析結果情報620を参照して、特定したソリッド要素の解析結果(応力値)を特定する。
一例として、有限要素解析モデルMxの表面の節点として、ノードID「1」の節点が指定されたとする。この場合、特定部703は、モデル情報400のソリッド要素構成情報420を参照して、ノードID「1」に対応するソリッド要素S1を特定する。つぎに、特定部703は、ソリッド要素解析結果情報620を参照して、特定したソリッド要素S1の解析結果(応力値)を特定する。
また、表示制御部704は、特定されたソリッド要素の解析結果を、指定された節点と対応付けて表示することにしてもよい。具体的には、例えば、表示制御部704は、内部要素を非表示として表示された有限要素解析モデルMの表面上の指定された節点に対して、特定されたソリッド要素の解析結果をポップアップ表示することにしてもよい。
また、例えば、表示制御部704は、有限要素解析モデルMの表面上の指定された節点を含む表面要素を、特定されたソリッド要素の解析結果に応じた態様で表示することにしてもよい。ソリッド要素の解析結果に応じた態様で表示するとは、ソリッド要素の解析結果に応じた色や模様で表面要素を表示することである。例えば、表示制御部704は、ソリッド要素の解析結果の値が大きいほど、濃い色で表面要素を表示することにしてもよい。
また、表示制御部704は、内部要素を非表示として有限要素解析モデルMを表示する際に、特定された表面要素を、当該表面要素を含むソリッド要素の解析結果に応じた態様で表示することにしてもよい。各表面要素を含むソリッド要素の解析結果は、例えば、解析結果情報600に含まれるソリッド要素解析結果情報620から特定される。
なお、表面要素を、当該表面要素を含むソリッド要素の解析結果に応じた態様で表示する際の表示例については、図8を用いて後述する。
また、受付部702は、有限要素解析モデルMを第1および第2の解析モデルに分割する断面の指定を受け付ける。この際、受付部702は、第1および第2の解析モデルのうちのいずれを表示対象とするのかの指定も受け付ける。以下の説明では、第1および第2の解析モデルのうちの第1の解析モデルを表示対象とする。
具体的には、例えば、受付部702は、解析結果表示画面800において、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMxを第1および第2の解析モデルに分割する断面の指定を受け付ける。なお、有限要素解析モデルMを分割する断面の指定例については、図9を用いて後述する。
また、特定部703は、有限要素解析モデルMのモデル情報に基づいて、指定された断面上の要素と、第1の解析モデルのうちの指定された断面以外の表面の要素とを特定する。断面上の要素とは、断面上の節点のみからなる要素(例えば、面、エッジ、節点)である。断面上の節点は、有限要素解析モデルMのモデル情報(例えば、節点構成情報410)から特定される各節点の位置が、指定された断面上にあるか否かを判定することによって特定することができる。
具体的には、例えば、まず、特定部703は、指定された断面により、有限要素解析モデルMを第1および第2の解析モデルに分割する。そして、特定部703は、分割した第1の解析モデルのうち、指定された断面上の要素と、指定された断面以外の表面の要素とをそれぞれ特定する。
また、表示制御部704は、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMのうち、第2の解析モデルを非表示とするとともに、第1の解析モデルの表面の要素とは異なる要素を非表示とし、かつ、特定された断面上の要素を表示する制御を行う。この際、表示制御部704は、例えば、断面上の要素を、当該要素を含むソリッド要素の解析結果に応じた態様で表示することにしてもよい。
具体的には、例えば、表示制御部704は、有限要素解析モデルMのモデル情報から、第1の解析モデルのうち、特定された断面以外の表面の要素に関する情報を抽出する。また、表示制御部704は、有限要素解析モデルMのモデル情報から、特定された断面上の要素に関する情報を抽出する。そして、表示制御部704は、それぞれ抽出した情報に基づいて、第1の解析モデルの表面の要素、および、断面上の要素のみを表示する。
有限要素解析モデルMから分割された第1の解析モデルの表示例については、図9を用いて後述する。なお、指定された断面上にいずれの節点もなければ、第1の解析モデルの断面部分にはいずれの要素も表示されない(ただし、透過して表示される反対側の表面の要素は除く)。
また、受付部702は、有限要素解析モデルMの表示モードの選択を受け付けることにしてもよい。ここで、表示モードとしては、例えば、全要素モードと、表面要素モードとがある。全要素モードは、有限要素解析モデルMの全ての要素を表示するモードである。表面要素モードは、有限要素解析モデルMのうちの表面要素のみを表示するモードである。具体的には、例えば、受付部702は、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMの表示モードの選択を受け付ける。
また、表示制御部704は、選択された表示モードで有限要素解析モデルMを表示する。具体的には、例えば、表示制御部704は、表面要素モードが選択された場合に、有限要素解析モデルMを表示する際に、有限要素解析モデルMのうち内部要素を非表示とする制御を行う。
また、表示制御部704は、全要素モードが選択された場合には、有限要素解析モデルMを表示する際に、有限要素解析モデルMに含まれる全ての要素を表示する。なお、表示制御部704は、有限要素解析モデルMに含まれる全ての要素を表示した後に、表面要素モードが選択されたことに応じて、有限要素解析モデルMのうち内部要素を非表示とする制御を行うことにしてもよい。
なお、情報処理装置101の各機能部は、システム200内の情報処理装置101とは異なる他のコンピュータ、例えば、サーバ201で実現することにしてもよい。また、情報処理装置101の各機能部は、システム200内の複数のコンピュータ(例えば、情報処理装置101とサーバ201)により実現されることにしてもよい。
(解析結果表示画面800の画面例)
つぎに、図8を用いて、情報処理装置101のディスプレイ306に表示される解析結果表示画面800の画面例について説明する。
図8は、解析結果表示画面800の画面例を示す説明図である。図8において、解析結果表示画面800は、シミュレーション空間(XYZ空間)に内部要素を非表示として表示された有限要素解析モデルMxから、解析結果を表示する対象の節点を指定可能な操作画面である。ただし、図8の例では、有限要素解析モデルMxの各表面要素が、当該各表面要素を含むソリッド要素の解析結果に応じた態様(模様)で表示されている。
解析結果表示画面800において、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMxに対する回転、移動、ズームなどの操作を行うことができる。解析結果表示画面800によれば、有限要素解析モデルMxの全体像を把握しながら、回転、移動、ズームなどの操作を行うことができる。
この際、内部要素が非表示となっているため、有限要素解析モデルMxの表示にかかる処理量を低減することができる。これにより、有限要素解析モデルMxの回転、移動、ズームなどの操作にともなう動作が重たいものとなるのを防いで、ユーザのストレスを削減することができる。
また、解析結果表示画面800において、有限要素解析モデルMxの各表面要素が、当該各表面要素を含むソリッド要素の解析結果に応じた態様(模様)で表示されている。これにより、ユーザは、有限要素解析モデルMxの全体像を把握しながら、表面要素の解析結果を直感的に把握することができる。
また、解析結果表示画面800において、入力装置307を用いたユーザの操作入力により、カーソルCを移動させて、有限要素解析モデルMの表面のいずれかの節点を指定することで、指定された節点の解析結果を表示することができる。図8の例では、ノードID「xxx」の節点が指定された結果、解析結果810がポップアップ表示されている。
解析結果810は、ノードID「xxx」の節点の解析結果と、ノードID「xxx」の節点を含むソリッド要素Sxxの解析結果とを示す。解析結果810によれば、ユーザは、ノードID「xxx」の節点の節点応力値「1.00321」および節点変位「0.000406」を把握することができる。また、ユーザは、ノードID「xxx」の節点を含むソリッド要素Sxxの要素応力値「1.0333」を把握することができる。
(有限要素解析モデルMを分割する断面の指定例)
つぎに、図9を用いて、有限要素解析モデルMを分割する断面の指定例について説明する。
図9は、有限要素解析モデルを分割する断面の指定例を示す説明図である。図9において、解析結果表示画面800には、内部要素を非表示とする有限要素解析モデルMxがシミュレーション空間(XYZ空間)に表示されている。
解析結果表示画面800において、入力装置307を用いたユーザの操作入力により、有限要素解析モデルMxを分割する断面を指定することができる。図9の例では、有限要素解析モデルMxをX−Z平面に平行に分割する断面901が指定されている。ここでは、有限要素解析モデルMxのうち、断面901に対して奥の解析モデルを「第1の解析モデル910」とし、断面901に対して手前の解析モデルを「第2の解析モデル920」とする。すなわち、有限要素解析モデルMxのうち、断面901に対して奥の解析モデルが、表示対象として指定された場合を想定する。
解析結果表示画面800において、断面901を指定すると、特定部703により、有限要素解析モデルMxのモデル情報400に基づいて、断面901上の要素と、第1の解析モデル910のうちの断面901以外の表面の要素とが特定される。そして、表示制御部704により、有限要素解析モデルMxのモデル情報400に基づいて、有限要素解析モデルMxのうち、第2の解析モデル920を非表示とするとともに、第1の解析モデル910の表面の要素とは異なる要素を非表示とし、かつ、断面901上の要素(図9中、点線枠930内の要素)を表示する制御が行われる。
このように、有限要素解析モデルMxを分割する断面を指定することで、有限要素解析モデルMxの内部の状態を確認することができる。図9の例では、ユーザは、有限要素解析モデルMxから分割された第1の解析モデル910の断面901部分の形状や解析結果を確認することが可能となる。
(情報処理装置101の各種処理手順)
つぎに、図10〜図13を用いて、情報処理装置101の各種処理手順について説明する。まず、図10を用いて、情報処理装置101の解析処理手順について説明する。
図10は、情報処理装置101の解析処理手順の一例を示すフローチャートである。図10のフローチャートにおいて、まず、情報処理装置101は、解析対象のCADモデルを取得する(ステップS1001)。そして、情報処理装置101は、取得した解析対象のCADモデルに基づいて、有限要素解析モデルMのモデル情報を作成する(ステップS1002)。
つぎに、情報処理装置101は、作成した有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMに対する有限要素解析を実行する(ステップS1003)。そして、情報処理装置101は、作成した有限要素解析モデルMのモデル情報と、実行した有限要素解析の解析結果情報とを対応付けて出力して(ステップS1004)、本フローチャートによる一連の処理を終了する。
これにより、有限要素解析モデルMに対する有限要素解析を行うことができる。なお、上述した情報処理装置101の解析処理は、例えば、図2に示したサーバ201において実行されることにしてもよい。
つぎに、図11を用いて、情報処理装置101の解析モデル表示処理手順について説明する。
図11は、情報処理装置101の解析モデル表示処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、情報処理装置101は、有限要素解析モデルMの表示指示を受け付けたか否かを判断する(ステップS1101)。ここで、情報処理装置101は、有限要素解析モデルMの表示指示を受け付けるのを待つ(ステップS1101:No)。
そして、情報処理装置101は、有限要素解析モデルMの表示指示を受け付けた場合(ステップS1101:Yes)、有限要素解析モデルMのモデル情報および解析結果情報を取得する(ステップS1102)。つぎに、情報処理装置101は、取得した有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMの表面要素を特定する(ステップS1103)。
つぎに、情報処理装置101は、有限要素解析モデルMのモデル情報から、特定した表面要素に関する情報を抽出する(ステップS1104)。そして、情報処理装置101は、抽出した表面要素に関する情報に基づいて、シミュレーション空間に有限要素解析モデルMのうちの表面要素のみを表示して(ステップS1105)、本フローチャートによる一連の処理を終了する。
これにより、有限要素解析モデルMを表示する際に、有限要素解析モデルMのうちの内部要素を非表示にして処理量を低減することができる。ユーザは、有限要素解析モデルMの全体像を把握しながら、有限要素解析モデルMに対する回転、移動、ズームなどの操作を行うことができる。
つぎに、図12を用いて、情報処理装置101の解析結果表示処理手順について説明する。情報処理装置101の解析結果表示処理は、例えば、図11に示した解析モデル表示処理、または、後述の図13に示す解析モデル分割処理が実行された後に続けて実行される。
図12は、情報処理装置101の解析結果表示処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、情報処理装置101は、有限要素解析モデルMの表面のいずれかの節点の指定を受け付けたか否かを判断する(ステップS1201)。
ここで、情報処理装置101は、節点の指定を受け付けるのを待つ(ステップS1201:No)。そして、情報処理装置101は、節点の指定を受け付けた場合(ステップS1201:Yes)、有限要素解析モデルMのモデル情報に基づいて、指定された節点を含むソリッド要素を特定する(ステップS1202)。
つぎに、情報処理装置101は、有限要素解析モデルMの解析結果情報から、指定された節点の解析結果、および、特定したソリッド要素の解析結果を抽出する(ステップS1203)。これにより、節点の解析結果(応力値、変位)およびソリッド要素の解析結果(応力値)を特定することができる。
そして、情報処理装置101は、指定された節点と対応付けて、抽出した節点の解析結果、および、抽出したソリッド要素の解析結果を表示して(ステップS1204)、本フローチャートによる一連の処理を終了する。これにより、有限要素解析モデルMの表面のいずれかの節点が指定されたことに応じて、指定された節点の解析結果、および、当該節点を含むソリッド要素の解析結果を表示することができる。
つぎに、図13を用いて、情報処理装置101の解析モデル分割処理手順について説明する。情報処理装置101の解析モデル分割処理は、例えば、図11に示した解析モデル表示処理が実行された後に続けて実行される。
図13は、情報処理装置101の解析モデル分割処理手順の一例を示すフローチャートである。図13のフローチャートにおいて、まず、情報処理装置101は、有限要素解析モデルMを第1および第2の解析モデルに分割する断面の指定を受け付けたか否かを判断する(ステップS1301)。ここで、情報処理装置101は、断面の指定を受け付けるのを待つ(ステップS1301:No)。
そして、情報処理装置101は、断面の指定を受け付けた場合(ステップS1301:Yes)、有限要素解析モデルMのモデル情報に基づいて、指定された断面上の要素を特定する(ステップS1302)。そして、情報処理装置101は、有限要素解析モデルMのモデル情報から、特定した断面上の要素に関する情報を抽出する(ステップS1303)。
つぎに、情報処理装置101は、有限要素解析モデルMのモデル情報に基づいて、第1の解析モデルのうちの指定された断面以外の表面の要素を特定する(ステップS1304)。そして、情報処理装置101は、有限要素解析モデルMのモデル情報から、特定した断面以外の表面の要素に関する情報を抽出する(ステップS1305)。
そして、情報処理装置101は、ステップS1303,1305において抽出した情報に基づいて、シミュレーション空間に、有限要素解析モデルMから分割された第1の解析モデルの表面の要素、および、断面上の要素を表示して(ステップS1306)、本フローチャートによる一連の処理を終了する。これにより、有限要素解析モデルMのうち、第2の解析モデルを非表示とするとともに、第1の解析モデルの表面の要素とは異なる要素を非表示とし、かつ、断面上の要素を表示することができる。
以上説明したように、実施の形態にかかる情報処理装置101によれば、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMの表面の要素を特定し、有限要素解析モデルMを表示する際に、有限要素解析モデルMのうち、特定した表面要素とは異なる要素(内部要素)を非表示とする制御を行うことができる。
これにより、有限要素解析モデルMを表示するにあたり、有限要素解析モデルMの内部要素を非表示としてデータ量を削減することで、有限要素解析モデルMの表示にかかる処理量を低減することができる。このため、有限要素解析モデルMの回転、移動、ズームなどの操作にともなう動作が重たいものとなるのを防いで、ユーザのストレスを削減することができる。
また、情報処理装置101によれば、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMに含まれる全ての要素を表示した後に、有限要素解析モデルMのうち、表面要素とは異なる内部要素を非表示とすることができる。
これにより、有限要素解析モデルMを表示するにあたり、データ量を削減すべく内部要素を非表示にする前に、有限要素解析モデルMに含まれる全ての要素を一旦表示して、内部要素を含む全体像を把握可能にすることができる。
また、情報処理装置101によれば、有限要素解析モデルMのモデル情報から、特定した表面要素に関する情報を抽出し、抽出した表面要素に関する情報に基づいて、有限要素解析モデルMのうち、表面要素のみを表示することができる。
これにより、有限要素解析モデルMを表示するにあたり、有限要素解析モデルMに含まれる全ての要素を一旦表示する場合に比べて、有限要素解析モデルMの表示にかかる処理の高速化を図ることができる。
また、情報処理装置101によれば、有限要素解析モデルMに含まれる各節点について、当該各節点が有限要素解析モデルMの表面の節点であるか否かを示す情報を含むモデル情報に基づいて、有限要素解析モデルMの表面の要素を特定することができる。
これにより、有限要素解析モデルMの表面の節点のみからなる面を、有限要素解析モデルMの表面の要素として特定することができる。
また、情報処理装置101によれば、内部要素を非表示とした有限要素解析モデルMの表面のいずれかの節点の指定を受け付けると、有限要素解析モデルMの解析結果情報を参照して、指定された表面の節点の解析結果を特定することができる。そして、情報処理装置101によれば、特定した解析結果を、指定された表面の節点と対応付けて表示することができる。
これにより、有限要素解析モデルMの表面上の任意の節点の解析結果を表示することができる。また、有限要素解析モデルMの解析結果を表示するにあたり、有限要素解析モデルMの内部要素を非表示としてデータ量を削減することで、有限要素解析モデルMの表示にかかる処理量を低減することができる。このため、例えば、有限要素解析モデルMを回転、移動、ズームさせながら解析結果を確認する際の動作が重たいものとなるのを防いで、ユーザのストレスを削減することができる。
また、情報処理装置101によれば、有限要素解析モデルMのモデル情報に基づいて、指定された節点を含むソリッド要素を特定し、解析結果情報を参照して、特定したソリッド要素の解析結果を特定することができる。そして、情報処理装置101によれば、特定したソリッド要素の解析結果を、指定された節点と対応付けて表示することができる。
これにより、有限要素解析モデルMの表面上の節点の解析結果とともに、当該節点を含むソリッド要素の解析結果をあわせて表示することができる。
また、情報処理装置101によれば、有限要素解析モデルMを第1および第2の解析モデルに分割する断面の指定を受け付けると、有限要素解析モデルMのモデル情報に基づいて、指定された断面上の要素と、第1の解析モデルのうちの指定された断面以外の表面の要素とを特定することができる。そして、情報処理装置101によれば、有限要素解析モデルMのモデル情報に基づいて、有限要素解析モデルMのうち、第2の解析モデルを非表示とするとともに、第1の解析モデルの表面の要素とは異なる要素を非表示とし、かつ、特定された断面上の要素を表示する制御を行うことができる。
これにより、有限要素解析モデルMを表示するにあたり、内部要素を非表示にして表示にかかる処理量を低減しつつ、必要に応じてユーザが断面を指定することで、有限要素解析モデルMの内部の状態を把握可能に表示することができる。
また、情報処理装置101によれば、内部要素を非表示として有限要素解析モデルMを表示する際に、特定した表面要素を、当該表面要素を含むソリッド要素の解析結果に応じた態様で表示することができる。
これにより、有限要素解析モデルMを表示するにあたり、有限要素解析モデルMの表面要素の解析結果を直感的に把握可能に表示することができる。
これらのことから、情報処理装置101によれば、有限要素解析モデルMの解析結果を表示するにあたり、有限要素解析モデルMの全体像を把握可能に表示しつつ処理量を低減することが可能となる。これにより、ユーザの利便性を損なうことなく、画面操作にともなう動作が重たいものとなるのを防ぐことができる。
なお、本実施の形態で説明した解析モデル表示処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本解析モデル表示処理プログラムは、ハードディスク、フレキシブルディスク、CD(Compact Disc)−ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本解析モデル表示処理プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)複数の要素からなるソリッド要素の集合である解析モデルのモデル情報に基づいて、前記解析モデルの表面の要素を特定し、
前記解析モデルを表示する際に、前記解析モデルのうち、特定した前記表面の要素とは異なる要素を非表示とする制御を行う、
処理をコンピュータに実行させることを特徴とする解析モデル表示処理プログラム。
(付記2)前記制御を行う処理は、
前記モデル情報から、特定した前記表面の要素に関する情報を抽出し、
抽出した前記情報に基づいて、前記解析モデルのうち前記表面の要素のみを表示する、
ことを特徴とする付記1に記載の解析モデル表示処理プログラム。
(付記3)前記制御を行う処理は、
前記モデル情報に基づいて、前記解析モデルに含まれる全ての要素を表示した後に、前記解析モデルのうち前記異なる要素を非表示とする、
ことを特徴とする付記1に記載の解析モデル表示処理プログラム。
(付記4)前記モデル情報は、前記解析モデルに含まれる各節点について、当該各節点が前記解析モデルの表面の節点であるか否かを示す情報を含み、
前記特定する処理は、
前記モデル情報に基づいて、前記解析モデルの表面の節点のみからなる面を、前記表面の要素として特定する、ことを特徴とする付記1〜3のいずれか一つに記載の解析モデル表示処理プログラム。
(付記5)前記異なる要素を非表示とした前記解析モデルの表面のいずれかの節点の指定を受け付けると、前記解析モデルに含まれる各節点の解析結果を示す解析結果情報を参照して、指定された前記節点の解析結果を特定し、
特定した前記解析結果を、指定された前記節点と対応付けて表示する、
処理を前記コンピュータに実行させることを特徴とする付記1〜4のいずれか一つに記載の解析モデル表示処理プログラム。
(付記6)前記解析結果情報は、前記解析モデルに含まれる各ソリッド要素の解析結果をさらに示し、
前記モデル情報に基づいて、指定された前記節点を含むソリッド要素を特定し、
前記解析結果情報を参照して、特定した前記ソリッド要素の解析結果を特定し、
特定した前記ソリッド要素の解析結果を、指定された前記節点と対応付けて表示する、
処理を前記コンピュータに実行させることを特徴とする付記5に記載の解析モデル表示処理プログラム。
(付記7)前記解析モデルを第1および第2の解析モデルに分割する断面の指定を受け付けると、前記モデル情報に基づいて、指定された前記断面上の要素と、前記第1の解析モデルの前記断面以外の表面の要素とを特定し、
前記モデル情報に基づいて、前記解析モデルのうち、前記第2の解析モデルを非表示とするとともに、前記第1の解析モデルの表面の要素とは異なる要素を非表示とし、かつ、特定した前記断面上の要素を表示する制御を行う、
処理を前記コンピュータに実行させることを特徴とする付記1〜6のいずれか一つに記載の解析モデル表示処理プログラム。
(付記8)前記制御を行う処理は、
前記解析モデルを表示する際に、さらに、特定した前記表面の要素を、当該表面の要素を含むソリッド要素の解析結果に応じた態様で表示する、ことを特徴とする付記1〜6のいずれか一つに記載の解析モデル表示処理プログラム。
(付記9)複数の要素からなるソリッド要素の集合である解析モデルのモデル情報に基づいて、前記解析モデルの表面の要素を特定し、
前記解析モデルを表示する際に、前記解析モデルのうち、特定した前記表面の要素とは異なる要素を非表示とする制御を行う、
処理をコンピュータが実行することを特徴とする解析モデル表示処理方法。
(付記10)複数の要素からなるソリッド要素の集合である解析モデルのモデル情報に基づいて、前記解析モデルの表面の要素を特定する特定部と、
前記解析モデルを表示する際に、前記解析モデルのうち、前記特定部によって特定された前記表面の要素とは異なる節点を非表示とする制御を行う表示制御部と、
を有することを特徴とする情報処理装置。