(57)【要約】【課題】大すべりなど大幅な変形が発生する解析モデルでも互いに接触する可能性がある面の対の定義を正確かつ効率的に行う接触解析装置を提供する。【解決手段】解析対象の物体が接触する可能性のある領域の大きさを表す接触判定領域長を取得し、解析対象の物体の任意の要素面を第１の要素面として抽出し、第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択し、第２の要素面から連続して隣接した要素面までの経路長が接触判定領域長以下であるときには、これらの第２の要素面から連続して隣接した要素面を接触領域として設定し、第１の要素面と接触領域とから接触条件を作成し、形状データ、該接触条件、境界条件、材料物性データに基づいて、物体の移動または変形後の形状を表す形状データを作成し、物体と物体とが正しい状態に接触するまで構造シミュレーションを実行する。【選択図】図３
2009059028.tif 000002
【特許請求の範囲】
【請求項１】
物体の表面を要素面の集合として定義した形状データにより表現し、複数の物体からなる解析モデルを用いて、該物体の移動または変形にともなう当該物体間の接触をシミュレーションする接触解析装置であって、前記解析対象の物体が接触する可能性のある領域の大きさを表す接触判定領域長を取得する接触判定領域長取得部と、前記形状データに基づいて、前記解析対象の物体の任意の要素面を第１の要素面として抽出する第１要素面抽出部と、前記形状データに基づいて、前記第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する対向要素面選択部と、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面までの経路長が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定する接触領域指定部と、前記解析対象の物体上の第１の要素面と前記接触領域指定部が設定した接触領域とから接触条件を作成し、前記形状データ、該接触条件、境界条件、材料物性データに基づいて、物体の移動または変形後の形状を表す形状データを作成し、物体と物体とが正しい状態に接触するまで構造シミュレーションを実行する構造解析部と、を備えることを特徴とする接触解析装置。
【請求項２】
物体の表面を要素面の集合として定義した形状データにより表現し、複数の物体からなる解析モデルを用いて、該物体の移動または変形にともなう当該物体間の接触をシミュレーションする接触解析装置であって、前記解析対象の物体が接触する可能性のある領域の大きさを表す接触判定領域長を取得する接触判定領域長取得部と、前記形状データに基づいて、前記解析対象の物体の任意の要素面を第１の要素面として抽出する第１要素面抽出部と、前記形状データに基づいて、前記第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する対向要素面選択部と、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面までの経路長と、前記第１の要素面と前記第２の要素面の経路長との和が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定する接触領域指定部と、前記解析対象の物体上の第１の要素面と前記接触領域指定部が設定した接触領域とから接触条件を作成し、前記形状データ、該接触条件、境界条件、材料物性データに基づいて、物体の移動または変形後の形状を表す形状データを作成し、物体と物体とが正しい状態に接触するまで構造シミュレーションを実行する構造解析部と、を備えることを特徴とする接触解析装置。
【請求項３】
物体の表面を要素面の集合として定義した形状データにより表現し、複数の物体からなる解析モデルを用いて、該物体の移動または変形にともなう当該物体間の接触をシミュレーションする接触解析装置であって、前記解析対象の物体が接触する可能性のある領域の大きさを表す接触判定領域長を取得する接触判定領域長取得部と、前記形状データに基づいて、前記解析対象の物体の任意の要素面を第１の要素面として抽出する第１要素面抽出部と、前記形状データに基づいて、前記第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する対向要素面選択部と、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面のいずれかと、前記第１の要素面あるいは前記第２の要素面との距離が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定する接触領域指定部と、前記解析対象の物体上の第１の要素面と前記接触領域指定部が設定した接触領域とから接触条件を作成し、前記形状データ、該接触条件、境界条件、材料物性データに基づいて、物体の移動または変形後の形状を表す形状データを作成し、物体と物体とが正しい状態に接触するまで構造シミュレーションを実行する構造解析部と、を備えることを特徴とする接触解析装置。
【請求項４】
請求項１、２または３に記載の接触解析装置において、前記接触判定領域長は、前記解析対象の物体の辺の長さに応じて定めることを特徴とする接触解析装置。
【請求項５】
請求項１、２または３に記載の接触解析装置において、前記接触判定領域長は、前記解析対象の物体の外接円の半径に応じて定めることを特徴とする接触解析装置。
【請求項６】
請求項１、２または３に記載の接触解析装置において、前記接触判定領域長は、前記解析対象の物体の特徴によって決定された、物体の辺の長さあるいは外接円の半径のいずれかに応じて定めることを特徴とする接触解析装置。
【請求項７】
請求項１乃至６のいずれかに記載の接触解析装置において、前記隣接する要素面の距離は、該隣接した要素面の重心間の距離であることを特徴とする接触解析装置。
【請求項８】
請求項１乃至７のいずれかに記載の接触解析装置において、さらに、前記第１の要素面、前記第２の要素面および接触面候補の要素面の位置関係に応じて、前記接触領域から接触面候補の要素面を除外する接触領域制限部を備えることを特徴とする接触解析装置。
【請求項９】
請求項８に記載の接触解析装置において、前記接触領域制限部は、前記第１の要素面または前記第２の要素面から接触面候補の要素面を見たときに、該接触面候補の要素面の裏面が見える場合、該接触面候補の要素面を前記接触領域から除外することを特徴とする接触解析装置。
【請求項１０】
請求項８に記載の接触解析装置において、前記接触領域制限部は、要素面の法線ベクトルと、該要素面に隣接する要素面の法線ベクトルがなす角度を累積し、該累積角度が予め設定された閾値と比較して大きくなった場合、該要素面に隣接する要素面を前記接触領域から除外することを特徴とする接触解析装置。
【請求項１１】
コンピュータを、請求項１乃至１０のいずれかに記載の接触解析装置の各部として機能させるための接触解析プログラム。
【請求項１２】
コンピュータが読み取り可能な記録媒体であって、請求項１１に記載の接触解析プログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、接触解析装置、接触解析プログラム及び接触解析プログラムを記録した記録媒体に関し、離れている２つの物体が熱や荷重などの負荷により接触することによって発生する応力や変形を有限差分法、有限体積法、有限要素法など、分割された数値解析を用いて解析するための接触解析システムに関する。
【背景技術】
【０００２】
近年、製品の設計段階などにおいて、複数の設計案に対して数値解析シミュレーションを実行し、それらのシミュレーション結果を参照して、設計案の優劣を比較検討する手法がとられている。このようなコンピュータを用いて物理現象を数値的に模擬する技術は、ＣＡＥ（Computer Aided Engineering）とも称され、代表的に有限差分法や有限体積法、有限要素法などが知られている。このような数値解析シミュレーションは、解析対象の構造体を複数の領域に分割した解析モデルを用いて行われる。
【０００３】
例えば、数値解析シミュレーションの代表例である有限要素法（ＦＥＭ：Finite Element Method）は、解析対象の構造体の実モデルを複数の要素に分割し、各要素について有限な値を持つ関数を用いて区分的に解を近似した解析モデルを生成し、この解析モデルを用いて全体の解を求める方法である。
【０００４】
この有限要素法は、解析対象の実モデルを任意の大きさの要素に分割できるために、複雑な形状を有する構造体を解析する場合に有利である。
そのため、有限要素法は、構造解析の分野において広く利用されており、部材単位の構造解析だけでなく、複数の部材が熱や荷重などの負荷により接触して発生する応力や変形を数値計算によって求める接触解析にも適用されている（例えば、特許文献１）。
【０００５】
接触解析を行う場合、接触する可能性がある領域を設定する必要がある。即ち、接触する可能性がある物体同士に対して、互いに接触する可能性のある面の対を定義する必要がある。
【０００６】
従来、この設定方法としては、特許文献２では、現在の接触している面、もしくは接触する可能性がある面として指定した面の法線方向を計算し、その面とその法線方向に一定距離にある領域を想定し、その領域に含まれる面は、その指定した面との間で接触する可能性があると判断し、接触設定を行っている。
【０００７】
また、特許文献３では、物体の形状および位置の情報とから物体間の干渉の有無を判断し、干渉が有った部分に接触が発生すると判断し、その箇所に接触設定を行っている。
【特許文献１】特開２００１−３０６６３４号公報
【特許文献２】特開２００６−４８５８３号公報
【特許文献３】特開２００２−５６０３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献２のように、現在の接触した面ならびに指定した面と法線方向に一定距離のある領域の中に含まれる面に接触設定を行う方法では、現在接触している状態に依存するため、物体間で大すべりなど、大幅な変形が発生した場合、物体間で設定した接触領域が実際にははずれてしまい、接触計算が適切に行われず、物体が物体にめり込む貫通という現象が発生して、計算が異常終了する、といった問題がある。
【０００９】
また、特許文献２のように、物体間の干渉の有無を判断して、物体間の接触設定を行う方法では、各状態において物体間の干渉の有無を判断する必要があり、そのための計算リソースを多大に必要とし、接触設定に非常に時間がかかるという問題がある。
【００１０】
本発明は、上述のような実情を考慮してなされたものであって、大すべりなど大幅な変形が発生する解析モデルでも互いに接触する可能性がある面の定義を正確かつ効率的に行う接触解析装置、接触解析プログラム及び接触解析プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明の接触解析装置は、次のような構成とする。
本発明の接触解析装置は、物体の表面を要素面の集合として定義した形状データにより表現し、複数の物体からなる解析モデルを用いて、該物体の移動または変形にともなう当該物体間の接触をシミュレーションする接触解析装置であって、前記解析対象の物体が接触する可能性のある領域の大きさを表す接触判定領域長を取得する接触判定領域長取得部と、前記形状データに基づいて、前記解析対象の物体の任意の要素面を第１の要素面として抽出する第１要素面抽出部と、前記形状データに基づいて、前記第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する対向要素面選択部と、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面までの経路長が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定する接触領域指定部と、前記解析対象の物体上の第１の要素面と前記接触領域指定部が設定した接触領域とから接触条件を作成し、前記形状データ、該接触条件、境界条件、材料物性データに基づいて、物体の移動または変形後の形状を表す形状データを作成し、物体と物体とが正しい状態に接触するまで構造シミュレーションを実行する構造解析部と、を備えるものである。
【００１２】
上記接触領域指定部は、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面までの経路長と、前記第１の要素面と前記第２の要素面の経路長との和が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定するものであってもよい。
また、前記形状データに基づいて、前記第２の要素面から連続して隣接した要素面のいずれかと、前記第１の要素面あるいは前記第２の要素面との距離が前記接触判定領域長以下であるときには、これらの前記第２の要素面から連続して隣接した要素面を接触領域として設定するものであっても構わない。
【００１３】
また、前記接触判定領域長は、前記接触解析対象の物体の辺の長さに応じて定めるものであっても、また、前記接触解析対象の物体の外接円の半径に応じて定めるものであっても構わない。この選択は、予め設定された、ユーザによって指定された方法であっても、物体の形状の特徴から自動的になされたものであっても構わない。
また、前記隣接する要素面の距離は、該隣接する要素面の重心間の距離として算出するものとする。
【００１４】
さらに、接触領域制限部を備えており、この接触領域制限部は、前記第１の要素面、前記第２の要素面および接触面候補の要素面の位置関係に応じて、前記接触領域から接触面候補の要素面を除外するものである。
上記位置関係としては、前記第１の要素面または前記第２の要素面から接触面候補の要素面を見たときに、該接触面候補の要素面の裏面が見える場合、該接触面候補の要素面を前記接触領域から除外するものや、要素面の法線ベクトルと、該要素面に隣接する要素面の法線ベクトルがなす角度を累積し、該累積角度が予め設定された閾値と比較して大きくなった場合、該要素面に隣接する要素面を前記接触領域から除外するものであっても構わない。
【００１５】
また、上述した構成の接触解析装置の各部として、コンピュータを機能させるためのプログラムを作成しておき、または、そのプログラムをコンピュータ読み取り可能な記録媒体に記録しておき、このプログラムをコンピュータで実行することによっても上記課題を解決することができる。
【発明の効果】
【００１６】
本発明によれば、大すべりのように相対する面を外れるような大幅な変形が発生する状態でも、複数の物体間における互いに接触する可能性がある面の定義を正確かつ効率的に行うことができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して、本発明の好適な実施の形態について詳細に説明する。尚、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００１８】
（接触解析モデル）
【００１９】
まず、先行技術による解析モデルにおける接触領域の設定処理について説明する。
図１は、先行技術による接触解析モデルを示す概略図である。図１（Ａ）には、解析対象の構造体の一例として、第１構造部材２１０および第２構造部材２２０と第３構造部材２３０とからなる構造体を示す。第１構造部材２１０の底面全体２４０に対して拘束を定義し、第２構造部材２２０の上面に点荷重２４５を与える。
【００２０】
このような構造体に対して、先行技術を用いて接触領域を定義する場合、第３構造部材２３０の部品に注目すると、図１（Ｂ）に示すように、第３構造部材２３０の４つの表面から法線方向に法線ベクトル２５０を考える。
図１（Ｃ）に示すように、その法線ベクトル２５０と略反対方向の法線ベクトル２６０を持つ他の部材の外表面のうち、法線ベクトル２５０の領域に最も近い領域を選択し、第３構造部材（部品）２３０に対応した接触領域を設定する。
【００２１】
具体的には、図１（Ｄ）に示すように、第３構造部材２３０の各面において法線を計算し、その法線と略反対方向の法線を持つ第１構造部材２１０、第２構造部材２２０の接触領域２７１，２７２，２７３，２７４を設定する、
【００２２】
このような先行技術による解析モデルによれば、図１(Ａ)のように点荷重２４５が与えられた結果、図１（Ｅ）のように第３構造部材（部品）２３０の位置が、２８０の位置に移動するようなモデルでは、図１(Ｄ)に示す接触領域の設定では、第３構造部材（部品）２３０の移動した先に接触設定が存在しない。その場合、物体と物体の接触が適切に計算することができず、物体が物体にめり込む貫通という現象が発生し、適切な計算が行えないという問題があった。
【００２３】
次に、本実施の形態に係る接触解析装置について説明する。
図２は、本実施の形態に係る接触解析装置で計算が行われる解析モデルを示す概略図である。図２を参照すると、本実施の形態に係る接触解析装置によって得られる第３構造部材２３０に対する接触領域２７２，２７３，２７４は、第３構造部材２３０から接触判定領域長を求め、第３構造部材２３０が接触可能な第１構造部材２１０上の領域、あるいは、第３構造部材２３０が接触可能な第２構造部材２２０上の領域、が接触判定領域長の範囲内の領域を第３構造部材２３０との接触領域として設定する。
【００２４】
即ち、本実施の形態に係る接触解析装置は、接触解析の対象として予め指定された第３構造部材に対し、その部材に対する接触判定領域長を基準として、接触が起こりうる可能性のある領域を、第１構造部材および第２構造部材の外表面の距離に応じて設定することで、接触解析時間に影響を及ぼす接触判定に関する規模の増大を抑制しつつ生成できる。
【００２５】
以下、このような解析モデルの生成処理およびそれを実現するための構成について詳細に説明する。尚、数値解析シミュレーションは、多くの場合において３次元空間として取扱われるが、以下では説明をより容易にするために、主に２次元空間としてその処理動作を説明する。しかし、３次元空間であっても、２次元空間と同様に適用することが可能である。
【００２６】
（接触解析装置の機能構成）
【００２７】
図３は、本発明の実施の形態に係る接触解析装置の機能構成を示すブロック図である。
図３において、本実施の形態に係る接触解析装置は、制御部２０、データ入力部２１、接触判定領域長取得部２２、第１要素面抽出部２３、対抗要素面選択部２４、接触領域指定部２５、構造シミュレーション部２６、データ格納部２８を含んで構成される。
【００２８】
制御部２０、データ入力部２１、接触判定領域長取得部２２、第１要素面抽出部２３、対抗要素面選択部２４、接触領域指定部２５、構造シミュレーション部２６は、それぞれの機能の一部または全部が専用のハードウェアによって構成されてもよいし、ソフトウェアとして構成されてもよい。
【００２９】
制御部２０は、詳細は後述するが、データ入力部２１、接触判定領域長取得部２２、第１要素面抽出部２３、対抗要素面選択部２４、接触領域指定部２５、構造シミュレーション部２６を用いて、接触解析装置全体を制御する。
【００３０】
データ入力部２１は、ユーザや外部の装置（図示しない）などから、接触解析に必要なデータの読み込みを行って、データ格納部２８に記憶させる。ここで入力されるデータは、既に格納されているものとしてもよい。必要な情報には、物体を要素面で表現した形状データ、要素データ、境界条件データ、材料物性データが含まれる。
【００３１】
図４（Ａ）は、本実施形態の説明で取上げる解析モデルが部品２１０，２２０，２３０から構成されていることを示し、図４（Ｂ）は、当該モデルの要素分割図であり、３つの部品がそれぞれ分割要素３１０，３２０，３３０等からなっていることを示している。
また、図４（Ｃ）は、当該モデルの外表面の要素面３４０を示している。
ここで、当該モデルは、物体表面を要素面の集合として定義しているものとする。
【００３２】
データ格納部２８は、大容量の記憶媒体の例えばＨＤＤ（Hard Disk Drive）などで構成され、要素面データで表現された形状データ、要素データ、境界条件データ、材料物性データ、接触設定データ等を格納する。境界条件データ、材料物性データは、構造シミュレーション部２６にて使用される。
【００３３】
次に、データ格納部２８に格納されるデータのデータ構造について説明する。
解析モデルテーブルは、図５（Ａ）に例示するように、モデル名称と、このモデルに含まれる部品番号で構成される。
部品テーブルは、図５（Ｂ）に例示するように、このモデルに含まれるすべての部品ごとに、部品番号、部品名、この部品の材料物性データ、この部品を構成する要素番号のリストで構成される。
また、要素面テーブルは、このモデルに含まれるすべての要素面ごとに、どの要素に含まれ、且つ、どの表面に含まれるかを示し、図５（Ｃ）に例示するように、要素面番号、要素番号、面番号で構成される。
【００３４】
そして、要素テーブルは、このモデルに含まれるすべての要素ごとに、図５（Ｄ）に例示するように、要素番号、要素タイプ、節点番号のリストから構成される。ここで、要素タイプは、例えば、２次元のときには、三角形（Ｑｕａｄ３）、四角形（Ｑｕａｄ４）などの種類があり、３次元のときには、四面体（Ｔｅｔｒａ）、五面体（Ｐｅｎｔａ）、六面体（Ｈｅｘ）などの種類がある。この要素タイプにより節点の個数が決定される。
【００３５】
節点テーブルは、このモデルに含まれるすべての節点ごとに、図５（Ｅ）に例示するように、節点番号、節点の座標データを有する。座標データは、２次元のときは、（ｘ座標、ｙ座標）で構成され、３次元のときには、（ｘ座標、ｙ座標、ｚ座標）から構成される。
【００３６】
要素のデータ構造に関して、節点番号の順番を決定しておくことにより、その面や辺の番号を定義することができる。ここでは、要素は２次元空間では、反時計回りに定義するものとすると、要素の節点の入力により、要素面の面番号との対応が自動的に可能となる（図６（Ａ））。
また、３次元空間の場合も同様であり、各要素の節点リストに対する順番を定義することにより、要素面の面番号との対応が自動的に可能となる（図６（Ｂ））。
【００３７】
図７の簡単な解析モデル例を用いて、上記のデータ構造についてさらに説明する。
図７（Ａ）は、解析モデルが２つの部品Ｐａｒｔ１、２からなり、部品Ｐａｒｔ１は、３つの要素Ｅ１，Ｅ２，Ｅ３で、部品Ｐａｒｔ２は、１つの要素Ｅ４で構成されている。また、各要素の節点が定義されている。
また、図７（Ｂ）は、それぞれの部品の外表面の要素面がそれぞれ定義されている。
【００３８】
図８（Ａ）は、解析モデルの定義、モデル名「Ｓｉｍｌ」と、２つの部品番号Ｐ１，Ｐ２が記憶されている。
図８（Ｂ）は、部品テーブルの例であり、例えば、部品Ｐａｒｔ１については、部品番号が「Ｐ１」、部品名が「Ｐａｒｔ１」、材料物性データが「樹脂」であり、要素番号のリスト「Ｅ１」、「Ｅ２」、「Ｅ３」により、この部品が３つの要素からなっていることが記憶されている。
【００３９】
図８（Ｃ）は、要素面テーブルの例であり、例えば、要素面番号が「ＥＦ９」の要素面は、要素番号「Ｅ４」の要素に含まれ、且つ、面番号「１」の面に含まれていることを示している。
図８（Ｄ）は、要素テーブルの例であり、例えば、要素番号が「Ｅ４」の要素は、要素タイプが「四角形（ＱＵＡＤ４）」であり、節点を４つ「Ｎ９」、「Ｎ１０」、「Ｎ１１」、「Ｎ１２］の順に持つことを示している。
図８（Ｅ）は、節点テーブルの例であり、例えば、節点番号が「Ｎ６」の節点は、座標（３，１）の点である。
【００４０】
接触解析の対象は、解析モデルに含まれるすべての物体（部品）であるが、以下の説明では、この解析モデル中の１つの物体（以下、解析対象の物体という）について説明する。
したがって、それぞれの物体（部品）について接触判定を行い、それらを重ね合わせることによって、解析モデル全体の接触条件が成立することになる。
【００４１】
接触判定領域長取得部２２は、接触解析を行う前に予め設定されていた方法によって、接触解析対象の物体がどの程度すべりながら移動するかという領域の大きさを接触判定領域長として設定する。
予め、ユーザは、（１）最長辺で求める方法、（２）外接円で求める方法、（３）ユーザが設定する方法、（４）自動による方法のいずれかを選択して設定しておく。
【００４２】
（１）最長辺で求める方法が選択されていた場合、解析対象の物体の辺の長さの最長辺に所定の係数を掛けて、接触判定領域長を求める。
物体の最も長い辺（面）を基準値として採用し、この基準値に所定の係数を掛けた値を接触判定領域長とする。
ここで、所定の係数は、物体から飛び出さない程度に設定する必要があるため、解析モデルにある最大の面の大きさを超えないように設定する。
例えば、図１において、部品２１０や部品２２０の最大辺がこのモデルの最大辺であるから、部品２３０の最大辺を基準に所定の係数を掛けた値がこのモデルの最大辺を越えないように、所定の係数を設定する。
【００４３】
（２）外接円で求める方法が選択されていた場合、解析対象の物体の外接円の半径に所定の係数を掛けて、接触判定領域長を求める。
形状が複雑なモデルである場合、辺（面）の大きさが小さいことがある。この場合、物体の外接円を用い、その半径（直径）を基準値とし、この基準値に所定の係数を掛けた値を設定領域判定長として設定する。この外接円の半径を求める方法は、物体の重心を求め、この重心から各節点までの距離で最も長いものを半径とする。
また、所定の係数については、モデル全体を外接する距離より大きくないことから、その距離を越えることはなく、一般的には１〜３程度の値とする。
【００４４】
（３）ユーザ設定の方法が選択されていた場合、ユーザに接触判定領域長を入力させる。
【００４５】
（４）自動による方法が選択されていた場合、解析対象の物体の特徴によって、最長辺による方法、あるいは、外接円による方法かを判断して、上記の（１）または（２）により接触判定領域長を求める。
これは、物体の体積と最長辺、最短辺（非常に短い辺ばかりからなっている）、物体の長辺と短辺の比率を示すアスペクト比を基にして、最長辺または外接円のいずれかを選択する。
【００４６】
第１要素面抽出部２３は、物体表面を要素面の集合として定義した要素面テーブルから任意の要素面を１つ、第１の要素面として抽出する。要素面テーブル（図８（Ｃ））を順にインクリメントすることにより実現することができる。
【００４７】
対抗要素面選択部２４は、抽出を行った第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する。
対抗要素面選択部２４の処理手順について、図９のフローチャートを用いて説明する。簡単のため、図７において、第１の要素面をＮＦ９（節点Ｎ９とＮ１０から形成される要素面）であるとし、これに対する第２の要素面を求めるものとして説明する。
【００４８】
第１の要素面の法線を計算する（ステップＳ１０）。法線は、物体から外向きとし、法線の基点は面の中心や、面の端点をすべて採用して処理を繰り返してもよい。
【００４９】
計算した法線ベクトルと基点に基づき、その法線ベクトル上に存在する要素面を抽出する（ステップＳ１１）。
例えば、第１の要素面の法線ベクトルと、対抗要素面の候補となるすべての要素面に対し、ひとつずつ要素面を取り出し、その要素面の各頂点を用いて作成される辺ベクトルと第１の要素面の法線ベクトルとの交点を求める。この交点が現在処理対象となっている要素面の中に含まれているかを判定し、含まれているときに、この処理対象となっている要素面を抽出する。
【００５０】
図７の例においては、ＮＦ１、ＮＦ２、ＮＦ６、ＮＦ７が対抗要素面の候補として抽出される。現在検討しているＮＦ９に対して、ＮＦ１とＮＦ２は要素の裏面であるため、接触することはない。そのため、要素の裏面について候補から削除してもよい。但し、要素の表面であるか裏面であるかは、距離の遠近で決定できるため、特別な判断を加えなくともよい。
【００５１】
次に、抽出された対抗要素面の候補となる要素面に対して、第１の要素面との距離を計算し（ステップＳ１２）、最も距離の短かった要素面を抽出し、それを対抗要素面として決定する（ステップＳ１３）。
本例では、ＮＦ６，ＮＦ７が等間隔であり、対抗要素面として２つ選択されてしまうが、要素面番号の若いものなど不作為な方法で一つに決定する。ここでは、対抗要素面の中から、第２の要素面として要素面番号の若いＮＦ６を選択するものとする。
【００５２】
次に、対抗要素面に連続して接続している要素面の中から、第１の要素面に接触可能な要素面を指定する接触領域指定部２５の処理について説明する。
まず、接触領域指定部２５で生成される接触領域テーブルは、図５（Ｆ）に例示するように、最終的に求められた接触領域指定を、接触面番号と第２要素面番号のリストとして記憶する。ここで、接触面番号は、第１の要素面番号と同等であり、また、第２要素面番号のリストは、第２要素面番号に連続して隣接している要素面番号のリストである。
【００５３】
最初に、接触領域指定部２５は、接触領域テーブルに、接触面番号として第１の要素面番号を、第２の要素面番号として、対抗要素面選択部２４で選択された対抗要素面を記憶する。
そして、接触領域指定部２５は、第２の要素面からそれに連続して隣接する要素面までの距離が接触判定領域長以下である、第２の要素面と連続して隣接するすべての要素面を、第１の接触面の接触領域として設定して、接触領域テーブルに記憶する。
【００５４】
次に、接触領域指定部２５の処理手順について図１０のフローチャートを用いて説明する。以下では、第２の要素面に連続して接続する要素面を第Ｎ（Ｎは２以上の整数）の要素面と呼ぶことにし、図１０の処理は、接触領域テーブル中のある接触面に対応する第Ｎの要素面に連続して隣接した要素面が接触領域であるか否かを判定して、接触領域テーブルの当該接触面の接触領域を更新するものとして説明する。
【００５５】
まず、第Ｎの要素面に隣接する要素面を第Ｎ＋１の要素面の要素面候補として抽出する（ステップＳ２０）。
これは、図５に例示したデータ構造から、第Ｎの要素面の節点番号を探索し、その節点番号を共有する要素面をすべて探索する。
本例では、現在選択中の要素面ＮＦ６に対し、その隣接する要素面を探索して、ＮＦ５とＮＦ７が抽出される。
【００５６】
ステップＳ２０で要素面が抽出されなかった場合（ステップＳ２１／ＮＯ）、処理を終了する。
一方、ステップＳ２０で要素面が抽出された場合（ステップＳ２１／ＹＥＳ）、抽出した要素面が既に接触領域に含まれているかを調べる（ステップＳ２２）。
ここでは、抽出した要素面が今までに接触領域として選択されている要素面に含まれている可能性がある。接触要素面は、重複設定する必要がないため、接触面テーブル中の当該接触面に対する第２の要素面のリストの中に、ステップＳ２０で抽出した要素面候補があるかを調べる。
【００５７】
ここで、同じ要素面番号であった場合（ステップＳ２２／ＹＥＳ）、この要素面を抽出した要素面の中から削除する（ステップＳ２３）。
本例では、現在選択されている要素面は、第１の要素面がＮＦ９、第２の要素面がＮＦ６であり、現在、接触面テーブル（図５（Ｆ））中には、これらしか記憶されていない状態であるから、抽出した要素面ＮＦ５とＮＦ７はそのまま候補とされる。
【００５８】
ステップＳ２３によって、抽出した要素面候補がすべて削除されてしまった場合に備えて、要素面候補が残っているか否かを再度チェックし、要素面候補が存在しない場合（ステップＳ２４／ＮＯ）、処理を終了する。
【００５９】
次に、第Ｎの要素面とすべての要素面候補との距離を計算し、一時的に保存する（ステップＳ２５）。
距離の計算方法は、各要素面の重心間の距離とする。要素面候補が複数存在する場合は、それぞれ別個に計算する。
ここで計算された距離は、図５（Ｇ）に例示したように、第Ｎの要素面番号、要素面候補の要素面番号、これらの要素面間の距離という３つ組みで保存する。
本例では、図１１（Ａ）の結果となる。
【００６０】
次に、すべての第Ｎ＋１の要素面候補に対して、ステップＳ２６からＳ２８の処理を行わせる。本例では、２つの第３要素面の候補ＮＦ５とＮＦ７に対して、これらの処理を行わせることになる。
【００６１】
既に計算されている第２要素面から要素面候補までの最短の経路長を計算する（ステップＳ２６）。
第２要素面から第Ｎの要素面までの経路長は、既に計算されており、図５（Ｈ）の形式にて記憶されている。図５（Ｈ）には、第２要素面の要素面番号、第Ｎの要素面の要素面番号、第２要素面から第Ｎの要素面までの経路長が記憶されている。
ここでは、図５（Ｈ）の形式で記憶された第２要素面から第Ｎの要素面までの経路長に、図５（Ｇ）の形式で記憶された第Ｎの要素面から第Ｎ＋１の要素面候補までの距離を組み合わせて、最短となる経路長を求め、図５（Ｈ）の形式のうち、第Ｎの要素面の要素面番号を第Ｎ＋１の要素面候補の要素面番号に、第２要素面から第Ｎの要素面までの経路長を第２要素面から第Ｎ＋１の要素面までの経路長に置き換えて更新する。
本例では、第３要素面まで計算すると図１１（Ａ）と同様に記憶される。第４要素面まで計算すると、図１１（Ｂ）のようになる。
【００６２】
次に、図５（Ｈ）の形式で記憶された経路長と、先に定めた接触判定領域長とを比較し、そこまで達していない場合は（ステップＳ２７／ＹＥＳ）、第Ｎ＋１の要素面候補を接触領域として、図５（Ｆ）の接触面テーブルに追加して（ステップＳ２８）、他の要素面候補に対して処理を継続する。
また、図５（Ｈ）の形式で記憶された経路長が接触判定領域長に達している場合（ステップＳ２７／ＮＯ）、この第Ｎ＋１の要素面候補を接触領域として追加せずに、他の要素面候補に対して処理を継続する。
【００６３】
次に、構造解析部２６は、一般的な構造解析シミュレーション部で構成され、接触解析対象の物体上の第１の要素面と接触領域指定部２５で設定した接触領域を接触条件とし、形状データ、接触条件、境界条件、材料物性データに基づいて、構造シミュレーションを行って物体の移動または変形後の形状を表す形状データを作成する。
この形状データを基に、貫通したり接触が外れているのに接触しているような状態になっていないかの判定を行い、貫通したり接触が外れない状態、即ち、適切な接触位置になるように形状データを調整して、再度構造シミュレーションを繰り返す。
【００６４】
次に、図４に示した解析モデルをもとに本実施形態の動作をまとめて説明する。
簡単のため、図４に示した解析モデルのうち図１２のように、部品３３０の要素面３４０についてのみ説明する。
【００６５】
まず、要素面３４０を第１の要素面とすると、第２の要素面として要素面３５０が抽出される。さらに、要素面３５０に隣接する、要素面３５１、３５２が抽出される。
ここで、要素面３５２について処理を継続すると、第２要素面から要素面３５２までの経路長は、接触判定領域長より小さいと判断できるため、さらに処理を継続して、隣接する要素面３５３を抽出する。この処理を繰り返して、要素面３５７まで抽出したところで経路長が接触判定領域長を超えたとすると、図４の解析モデルでは、図１２のように接触領域が設定される。この説明では、要素面３５２から右にある要素面について説明しなかったが、上記の経路長を計算するときには、要素面３５０に対して左右両方に隣接した要素面について考えるようにする。これによると、図２に示したような接触領域が設定できる。
【００６６】
以上に示したように、本実施形態では、部品３３０の物体の接触設定において、図１（Ｄ）のように、現在接触している接触領域、もしくは、非常に近接的な接触領域だけではなく、物理的に物体に接触したまま移動することを考慮して接触領域を決定できることから、正確かつ効率的に設定することができる。
【００６７】
上記の実施形態では、接触領域の限界を調べるために、第２の要素面からの経路長を用いていたが、第１の要素面から第２の要素面への距離をあわせて評価することにより、離れている部品との接触領域の評価を適切に行うことができる。
【００６８】
例えば、図１（Ａ）において、第３構造部材２３０と第２構造部材２２０は接触していないため、物体（第２構造部材２２０）が変形してから接触するので、すでに接触している状態と比較して、接触する領域としては若干狭くなると考えられる。
そのため、第１要素面から第２要素面への距離を併せて、接触判定領域長と比較することで、より適切な接触領域を設定することが可能である。
【００６９】
また、解析モデルが非常に単純な場合、第２の要素面からの経路長を計算するのではなく、第１の要素面、もしくは、第２の要素面と第Ｎ＋１の要素面との距離で評価することで、計算量を更に削減することができる。
【００７０】
また、図４の解析モデルにおいて、部品が包含関係にある場合には、内部部品と外側の部品の外面とは接触することはない。そのため、そのような位置関係にある場合には、接触領域として設定する必要はない。
【００７１】
また、図１３（Ａ）に示すように、第２の要素面である要素面３５１から第Ｎ＋１の要素面候補である要素面３５７を見て、要素面の裏面が見える場合は、その要素面候補に関しては、接触の可能性が少ないということで除外するようにしてもよい。
これは、例えば、図５（Ｃ）の要素面テーブルと図５（Ｄ）の要素テーブルを参照して、要素面を構成する節点において、基点側（１つめ）から終点側（２つめのデータ）へのベクトルを算出し、そのベクトルに対して法線ベクトルがある方が表である。
図１３の場合は、要素面３５１から要素面３５７の裏面を見ていることから、これらの要素面は接触する可能性がないので、要素面３５７を除外する。
【００７２】
また、上記の表裏による接触可能性の判断は、第Ｎの要素面の法線ベクトルと第Ｎ＋１の要素面の法線ベクトルとの差と、第Ｎ＋１の要素面の方向ベクトルとの内積によって、第Ｎの要素面を基準とした第Ｎの要素面と第Ｎ＋１の要素面の角度差が計算できるので、この角度差の累積角度をもとに行える。
【００７３】
例えば、図１４では、第２の要素面を要素面３５１とし、その隣接する第３の要素面候補を要素面３５２とする。そのおのおのの法線ベクトルをＶＮ、ＶＮ＋１、方向ベクトルをＴＮ、ＴＮ＋１とすると、その成す角度は、内積を用いて次の式１から求めることができる。
【００７４】
【数１】
2009059028.tif 000003
【００７５】
この角度を利用し、第２の要素面からの累積角度を用いて角度変化を調べる。
例えば、図１４の場合、要素面３５１から要素面３５２では角度変化は０である。その後要素面３５５の法線ベクトル６０５までは、引き続き変化はないので除外しない。
ここで、平行を許容する閾値を予め設定しておき、累積角度がこの閾値以下の場合平行として許容することにする。例えば、この閾値を＋１０度とする。
法線ベクトル６０５は、一つ前の要素面の法線ベクトルに対する角度変化は−９０度であるから、累積角度は−９０度となる。この場合、第２の要素面３５１と要素面３５５の面が向き合っているため、除外はしない。
次に、法線ベクトル６０５と法線ベクトル６０６の角度変化は、＋９０度であるから、累積角度変化は０度であり、許容範囲内である。
さらに、法線ベクトル６０７では、角度変化は＋９０度であるから、累積角度は＋９０度となり、累積角度が閾値を超えたため、要素面３５７は含めないこととなる。
このようにすれば、例えば、部品が段差を超えられない場合に、接触領域を制限することが可能となり、計算効率を更に向上させることができる。
【００７６】
次に、制御部２０の処理手順を図１５のフローチャートをもとに説明する。
まず、データ入力部２１により、接触解析に必要なデータの読み込みを行う（ステップＳ４０）。必要な情報として、物体を要素面で表現した要素面で表現された形状データ、要素データ、境界条件データ、材料物性データが含まれる。
【００７７】
次に、接触判定領域長取得部２２により、接触解析の対象となる物体がどの程度すべりながら移動するかの基準を表す接触判定領域長を、予め設定されていた方法によって求める（ステップＳ４１）。
（１）最長辺で求める方法が選択されていた場合、解析対象の物体の辺の長さの最長辺に所定の係数を掛けて、接触判定領域長を求める。
（２）外接円で求める方法が選択されていた場合、解析対象の物体の外接円の半径に所定の係数を掛けて、接触判定領域長を求める。
（３）ユーザ設定の方法が選択されていた場合、ユーザに接触判定領域長を入力させる。
（４）自動による方法が選択されていた場合、解析対象の物体の特徴によって、最長辺による方法、あるいは、外接円による方法かを判断して、上記の（１）または（２）により接触判定領域長を求める。
これは、物体の体積と最長辺、最短辺（非常に短い辺ばかりからなっている）、物体の長辺と短辺の比率を示すアスペクト比を基にして、最長辺または外接円のいずれかを選択する。
【００７８】
次に、形状データを構成するすべての要素面の１つ１つに対して、ステップＳ４２からＳ４４までの処理を繰り返し実行する。
【００７９】
第１要素面抽出部２３により、形状データから任意の要素面を第１の要素面として抽出する（ステップＳ４２）。
対抗要素面選択部２４により、抽出した第１の要素面の法線方向にある要素面の中で最も近い距離にある要素面を第２の要素面として選択する（ステップＳ４３）。
接触領域指定部２５により、第２の要素面に対して連続して隣接している要素面の中から、第１の要素面に接触可能な要素面を抽出する（ステップＳ４４）。
【００８０】
次に、接触解析対象の物体上の第１の要素面と接触領域指定部２５で設定した接触領域を接触条件とし、構造解析部２６により、形状データ、接触条件、境界条件、材料物性データに基づいて、構造シミュレーションを行って物体の移動または変形後の形状を表す形状データを作成し、この形状データを基に、貫通したり接触が外れているのに接触しているような状態になっていないかの判定を行い、貫通したり接触が外れない状態、即ち、適切な接触位置になるように形状データを調整して、再度構造シミュレーションを繰り返す（ステップＳ４５）。
【００８１】
構造解析部２６で得られた、解析結果（変形、応力、接触量等）を記憶装置、表示装置やプリンタに出力する（ステップＳ４６）。
【００８２】
尚、本発明は実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良、変形が可能であることは言うまでもない。
上述した実施形態では要素面単位で処理の説明を行ったが、要素面をグループ化して一定の領域単位で処理を行うことで処理を簡単化することも可能である。
また、当該発明を一般の解析モデルと組み合わせた解析モデルを作成することも可能である。
【００８３】
また、上述した実施形態を構成する接触解析装置の各部として、コンピュータを機能させるプログラムを作成し、予め記録媒体に書き込んでおき、この記録媒体に記録されたこれらのプログラムを当該装置に備えられたメモリあるいは記憶装置に格納し、そのプログラムを実行することによって、本発明の目的が達成されることは言うまでもない。
【００８４】
この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
また、上記プログラムは、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することによって上述した実施形態の機能が実現される場合も含まれる。
【００８５】
尚、上述した実施形態の機能を実現するプログラムは、ディスク系（例えば、磁気ディスク、光ディスク等）、カード系（例えば、メモリカード、光カード等）、半導体メモリ系（例えば、ＲＯＭ、不揮発性メモリ等）、テープ系（例えば、磁気テープ、カセットテープ等）等のいずれの形態の記録媒体で提供されてもよい。あるいは、ネットワークを介して記憶装置に格納された上記プログラムをサーバコンピュータから直接供給を受けるようにしてもよい。この場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
このように、上述した実施形態の機能をプログラム化して流通させることによって、コストの低廉化、および可搬性や汎用性を向上させることができる。
【産業上の利用可能性】
【００８６】
本発明は、有限差分法、有限体積法、有限要素法等など構造力学を用いた数値解析技術に利用できる。
【図面の簡単な説明】
【００８７】
【図１】先行技術による接触解析モデルを示す概略図である。
【図２】実施の形態に係る接触解析装置で計算が行われる解析モデルを示す概略図である。
【図３】本発明の実施形態に係る接触解析装置の機能構成を示すブロック図である。
【図４】実施形態の説明で取上げる解析モデルを示す図である。
【図５】データ格納部に格納されるデータのデータ構造を説明する図である。
【図６】２次元および３次元の座標系において振られる節点番号の順番を説明する図である。
【図７】本実施の形態で用いる簡単な解析モデルの形状データ例である。
【図８】図７の解析モデルにおけるデータ構造の例である。
【図９】対抗要素面選択部の処理手順を示すフローチャートである。
【図１０】接触領域指定部の処理手順を示すフローチャートである。
【図１１】隣接する要素面の距離を記憶するデータ構造例である。
【図１２】図４に示した解析モデルの動作を説明する図である。
【図１３】第２の要素面から見て要素面候補の要素面が裏面となった場合を説明する図である。
【図１４】隣接した要素面の法線ベクトル間の累積角度を使って要素面候補の要素面を除外する方法を説明する図である。
【図１５】制御部の処理手順を示すフローチャートである。
【符号の説明】
【００８８】
２０…制御部、２１…データ入力部、２２…接触判定領域長取得部、２３…第１要素面抽出部、２４…対抗要素面選択部、２５…接触領域指定部、２６…構造シミュレーション部、２７…接触判定部、２８…データ格納部、２１０…第１構造部材（部品）、２２０…第２構造部材（部品）、２３０…第３構造部材（部品）、２４０…第１構造部材の底面全体、２４５…点荷重、２５０…法線ベクトル、２６０…法線ベクトル、２７１，２７２，２７３，２７４…接触領域、３１０，３２０，３３０…分割要素、３４０…要素面、３５０，３５１，３５２，３５３，３５４，３５５，３５６，３５７，３５８…要素面、６０１，６０２，６０５，６０６，６０７…法線ベクトル、Ｅ１，Ｅ２，Ｅ３…部品Ｐａｒｔ１の要素番号、Ｎ１，Ｎ２，Ｎ３，Ｎ４，Ｎ５，Ｎ６，Ｎ７，Ｎ８…部品Ｐａｒｔ１の節点番号、ＮＦ１，ＮＦ２，ＮＦ３，ＮＦ４，ＮＦ５，ＮＦ６，ＮＦ７，ＮＦ８…部品Ｐａｒｔ１の要素面番号、Ｅ４…部品Ｐａｒｔ２の要素番号、Ｎ９，Ｎ１０，Ｎ１１，Ｎ１２…部品Ｐａｒｔ１の節点番号、ＮＦ９，ＮＦ１０，ＮＦ１１，ＮＦ１２…部品Ｐａｒｔ１の要素面番号。
【図１】
2009059028.tif 000004
【図２】
2009059028.tif 000005
【図３】
2009059028.tif 000006
【図４】
2009059028.tif 000007
【図５】
2009059028.tif 000008
【図６】
2009059028.tif 000009
【図７】
2009059028.tif 000010
【図８】
2009059028.tif 000011
【図９】
2009059028.tif 000012
【図１０】
2009059028.tif 000013
【図１１】
2009059028.tif 000014
【図１２】
2009059028.tif 000015
【図１３】
2009059028.tif 000016
【図１４】
2009059028.tif 000017
【図１５】
2009059028.tif 000018