(57)【特許請求の範囲】
【請求項１】
解析対象物の設計情報から前記解析対象物の形状を複数の部分形状に分解する分解手段と、
前記複数の部分形状間の隣接関係情報を作成する隣接関係情報作成手段と、
前記複数の部分形状に対するモデル化の種別を設定する設定手段と、
前記設定手段によりモデル化の種別としてシェルが設定された部分形状に対して、中立面を抽出する中立面抽出手段と、
前記隣接関係情報を参照して、隣接する部分形状から抽出された２以上の中立面を統合する統合手段と、
前記統合された中立面のシェルメッシュを作成するシェルメッシュ作成手段と、
前記設定手段によりモデル化の種別としてソリッドが設定された部分形状のソリッドメッシュを作成するソリッドメッシュ作成手段と、
前記隣接関係情報を参照して、隣接するシェルメッシュとソリッドメッシュとを結合する拘束要素を挿入する挿入手段と、
を有することを特徴とする解析モデル作成装置。
【請求項２】
前記統合手段は、統合後の中立面の位置を補正する中立面補正手段を有することを特徴とする請求項１に記載の解析モデル作成装置。
【請求項３】
前記中立面補正手段は、
前記中立面の頂点のうちで、前記分解手段による分解に伴って前記部分形状に作成された分離境界面に位置する分離境界面上頂点を、当該中立面と統合される中立面に投影して、投影点を作成する投影点作成手段と、
前記投影点が作成された中立面内に他の中立面から作成された投影点が存在する場合、これらの投影点の間隔が所定値以下であれば、いずれか一つの投影点の位置に残りの投影点の位置を補正する投影点補正手段と、
前記分離境界面上頂点の位置を前記投影点の位置に補正する頂点補正手段と、
を有することを特徴とする請求項２に記載の解析モデル作成装置。
【請求項４】
前記中立面補正手段は、
前記投影点が作成された中立面内に他の中立面の稜線を投影した投影稜線が存在する場合、当該投影点と当該投影稜線との間隔が所定値以下であれば、当該投影稜線の位置に当該投影点の位置を補正する第２の投影点補正手段と、
を有することを特徴とする請求項３に記載の解析モデル作成装置。
【請求項５】
前記分解手段は、
前記解析対象物の側面を抽出する側面抽出手段と、
前記側面を凸形状の面に分解する凸形状分解手段と、
前記解析対象物の側面の任意のものから、前記凸形状分解手段による分解の前から存在し、互いに凸又は平行の関係にある側面を辿って得られる面の集合を面集合として取得する面集合取得手段と、
前記面集合毎の境界を示す分離境界ループを抽出する分離境界ループ抽出手段と
前記分離境界ループ上において、一方の面集合に分離境界面を作成し、他方の面集合に被分離境界面を作成する境界面作成手段と、
前記面集合毎に、それを構成する面と前記分離境界面又は被分離境界面とを備えた部分形状を作成する部分形状作成手段と、
を有することを特徴とする請求項１乃至４のいずれか１項に記載の解析モデル作成装置。
【請求項６】
前記凸形状分解手段は、
前記側面内において凹に隣接する稜線間の凹頂点を抽出する凹頂点抽出手段と、
前記側面の境界ループ上で隣接する凹頂点の間に対角線を作成する対角線作成手段と、
前記対角線を境界にして前記側面を分割して、前記凸形状の面を作成する側面分割手段と、
を有することを特徴とする請求項５に記載の解析モデル作成装置。
【請求項７】
前記隣接関係情報作成手段は、前記分離境界面及び被分離境界面の組を特定する情報、並びに、前記分離境界面及び被分離境界面を含む各部分形状を特定する情報を前記隣接関係情報に含ませることを特徴とする請求項５又は６に記載の解析モデル作成装置。
【請求項８】
前記境界面作成手段は、
前記分離境界ループにおいて隣接する稜線対に対して、当該稜線対の夫々の稜線が隣接する面が同一である場合、当該稜線対の夫々の稜線が隣接する面が幾何的に同一である場合、及び当該稜線対のいずれかの稜線が隣接する面が側面となっている場合に、当該稜線を含む面が同一の境界面を構成すると判定する判定手段と、
互いに異なる境界面を構成する稜線の間の頂点を分離頂点として抽出する分離頂点抽出手段と、
前記分離境界ループ上で隣接する二つの分離頂点間に稜線を作成して、分離境界ループを分割し、前記二つの分離頂点以外に分離頂点をもたない分離境界ループを分割境界ループとする分離境界ループ分割手段と、
前記分割境界ループを複製する複製手段と、
前記複製手段による複製前の分割境界ループに分離境界面を作成する分離境界面作成手段と、
前記複製手段による複製により作成された分割境界ループに被分離境界面を作成する被分離境界面作成手段と、
を有することを特徴とする請求項５乃至７のいずれか１項に記載の解析モデル作成装置。
【請求項９】
分解手段が、解析対象物の設計情報から前記解析対象物の形状を複数の部分形状に分解する分解ステップと、
隣接関係情報作成手段が、前記複数の部分形状間の隣接関係情報を作成する隣接関係情報作成ステップと、
設定手段が、前記複数の部分形状に対するモデル化の種別を設定する設定ステップと、
中立面抽出手段が、前記設定ステップにおいてモデル化の種別としてシェルを設定した部分形状に対して、中立面を抽出する中立面抽出ステップと、
統合手段が、前記隣接関係情報を参照して、隣接する部分形状から抽出された２以上の中立面を統合する統合ステップと、
シェルメッシュ作成手段が、前記統合された中立面のシェルメッシュを作成するシェルメッシュ作成ステップと、
ソリッドメッシュ作成手段が、前記設定ステップにおいてモデル化の種別としてソリッドを設定した部分形状のソリッドメッシュを作成するソリッドメッシュ作成ステップと、
挿入手段が、前記隣接関係情報を参照して、隣接するシェルメッシュとソリッドメッシュとを結合する拘束要素を挿入する挿入ステップと、
を有することを特徴とする解析モデル作成方法。
【請求項１０】
コンピュータに、
解析対象物の設計情報から前記解析対象物の形状を複数の部分形状に分解する分解ステップと、
前記複数の部分形状間の隣接関係情報を作成する隣接関係情報作成ステップと、
前記複数の部分形状に対するモデル化の種別を設定する設定ステップと、
前記設定ステップにおいてモデル化の種別としてシェルを設定した部分形状に対して、中立面を抽出する中立面抽出ステップと、
前記隣接関係情報を参照して、隣接する部分形状から抽出された２以上の中立面を統合する統合ステップと、
前記統合された中立面のシェルメッシュを作成するシェルメッシュ作成ステップと、
前記設定ステップにおいてモデル化の種別としてソリッドを設定した部分形状のソリッドメッシュを作成するソリッドメッシュ作成ステップと、
前記隣接関係情報を参照して、隣接するシェルメッシュとソリッドメッシュとを結合する拘束要素を挿入する挿入ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機を用いた数値解析シミュレーションを利用したＣＡＥ（computer aided engineering）に好適な解析モデル作成装置及び解析モデル作成方法等に関する。
【背景技術】
【０００２】
従来、設計した物体に対して計算機を用いて数値解析シミュレーションを行い、解析結果から設計内容を検討することが行われている。特に、樹脂、板金等の一定の厚さを持つ薄肉形状を基本として持つような薄肉部品の構造解析及び振動解析等をするときには、計算時間及び記憶容量の観点から部品形状の中立面を作成して、そのシェルメッシュを解析の対象とすることがしばしば行われている。
【０００３】
このような中立面作成の作業を軽減するために物体のＣＡＤ（computer aided design）形状から中立面を自動的に抽出する方法として、種々のものが提案されている。
【０００４】
特許文献１に記載の方法では、先ず、形状モデルを構成する任意の２面の面間距離が、入力された基準板厚寸法以下の２面をペア面として認識している。そして、そのペア面を構成する面を表側面、裏側面、リブ面と認識し、ペア面ごとに、オフセット面を作成してそのオフセット面を縫合したものを中立面としている。
【０００５】
特許文献２に記載の方法では、入力された３次元形状モデルに対して４面体ソリッド要素を生成し、このソリッド要素内の板厚方向中立面を構成する辺りの中間節点を結んで３角形又は４角形シェル要素を生成して、中立面上のシェルメッシュを作成している。
【０００６】
特許文献３に記載の方法では、入力された３次元形状モデルを単純立体に分解し、その単純立体ごとに中立面を求めている
【０００７】
【特許文献１】特開２００４−２８７７０１号公報
【特許文献２】特開２００４−１５７７２４号公報
【特許文献３】特開平０４−３５０７７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載の方法には、樹脂部品等の対象となる部品が複雑な形状をしている場合、ペア面として認識されない部分が多く残ってしまうという問題がある。複雑な形状をしている場合としては、厚肉部が存在して板厚値の大きさが一定でない場合、リブにテーパがついている場合、中実のボス等の厚肉部が存在する場合等が挙げられる。
【０００９】
また、特許文献２に記載の方法には、樹脂部品等の対象となる部品が複雑な形状をしている場合、このような部品の全体に対して、一層の四面体メッシュを自動的に作成することは容易ではないという問題がある。複雑な形状をしている場合としては、肉厚が一定でない場合、リブ等が複雑に配置されている場合等が挙げられる。
【００１０】
また、特許文献３に記載の方法には、樹脂の外装部品の形状のような複雑な形状を単純立体形状に分割することは容易ではなく、作業者が指示を行う工数が多くかかるという問題がある。また、この方法では、各単純立体から作成された中立面を統合する手段がないので、最終的に解析に使用するメッシュ形状を作成するためには、各単純形状に対して算出した中立面を手作業で統合する必要がある。
【００１１】
更に、これらの従来の方法には、一つの部品のＣＡＤ情報からシェルモデル及びソリッドモデルを混合したような解析用のモデルを作成することが難しいという問題がある。構造解析及び振動解析等では、薄肉部品を対象にしていても、中実のボス部等のソリッドメッシュでモデル化しなければ解析結果の精度が悪くなる場合、ソリッドメッシュ及びシェルメッシュを混合した解析モデルを作成することが好ましい場合がある。ソリッドメッシュ及びシェルメッシュの統合は、接合部の境界の節点の共有により行うことができ、また、図３５に示すように、接合部の節点間にＭＰＣ（multi-point constraint）等の拘束要素を作成することにより行うことができる。しかしながら、特許文献１又は２に記載の方法では、このようなモデルを作成する際に、部品形状の部分毎にモデル化手法を変えることが難しい。また、特許文献３に記載の方法では、分解した単純立体形状毎にモデル化手法を変えることはできるが、夫々をモデル化したメッシュを自動的に統合することができない。
【００１２】
また、特許文献１又は２に記載の方法には、基本となる薄肉部とリブ部との中立面の接合部分で、微小な要素が作成されてしまうという問題もある。微小な要素が存在すると、「クーラン条件」により、動解析で安定的に計算行うための時間ステップの値が、メッシュの節点間の最小距離に比例するため、同じ時間の解析を行う場合、多くの時間ステップの計算が必要になり、計算時間が非常にかかってしまう。微小な要素は、例えば、図３６の左図に示すように、基本となる薄肉部にリブが近接して存在するような場合に作成されてしまう。このような場合、図３６の右図に示すように、微小要素が作成されないように、例えばリブの中立面の一つの位置をずらしたような解析モデルを作成することが望ましいが、特許文献１又は２に記載の方法では、このようなことはできない。なぜなら、基本部の中立面とリブ部との中立面が元の部品形状を忠実に反映したまま統合されてしまうので、上記のような微小要素がそのまま作成されてしまうからである。
【００１３】
本発明の目的は、樹脂部品等のように複雑な形状を持つ薄肉部品に対しても、作業者の指示に基づき、シェルとソリッドとが混合したようなモデルの作成を容易に行うことができる解析モデル作成装置及び解析モデル作成方法等を提供することにある。
【課題を解決するための手段】
【００１４】
本願発明者は、前記課題を解決すべく鋭意検討を重ねた結果、以下に示す発明の諸態様に想到した。
【００１５】
本発明に係る解析モデル作成装置は、解析対象物の設計情報から前記解析対象物の形状を複数の部分形状に分解する分解手段と、前記複数の部分形状間の隣接関係情報を作成する隣接関係情報作成手段と、前記複数の部分形状に対するモデル化の種別を設定する設定手段と、前記設定手段によりモデル化の種別としてシェルが設定された部分形状に対して、中立面を抽出する中立面抽出手段と、前記隣接関係情報を参照して、隣接する部分形状から抽出された２以上の中立面を統合する統合手段と、前記統合された中立面のシェルメッシュを作成するシェルメッシュ作成手段と、前記設定手段によりモデル化の種別としてソリッドが設定された部分形状のソリッドメッシュを作成するソリッドメッシュ作成手段と、前記隣接関係情報を参照して、隣接するシェルメッシュとソリッドメッシュとを結合する拘束要素を挿入する挿入手段と、を有することを特徴とする。
【００１６】
本発明に係る解析モデル作成方法は、分解手段が、解析対象物の設計情報から前記解析対象物の形状を複数の部分形状に分解する分解ステップと、隣接関係情報作成手段が、前記複数の部分形状間の隣接関係情報を作成する隣接関係情報作成ステップと、設定手段が、前記複数の部分形状に対するモデル化の種別を設定する設定ステップと、中立面抽出手段が、前記設定ステップにおいてモデル化の種別としてシェルを設定した部分形状に対して、中立面を抽出する中立面抽出ステップと、統合手段が、前記隣接関係情報を参照して、隣接する部分形状から抽出された２以上の中立面を統合する統合ステップと、シェルメッシュ作成手段が、前記統合された中立面のシェルメッシュを作成するシェルメッシュ作成ステップと、ソリッドメッシュ作成手段が、前記設定ステップにおいてモデル化の種別としてソリッドを設定した部分形状のソリッドメッシュを作成するソリッドメッシュ作成ステップと、挿入手段が、前記隣接関係情報を参照して、隣接するシェルメッシュとソリッドメッシュとを結合する拘束要素を挿入する挿入ステップと、を有することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、シェルが設定された部分形状に対して適切な中立面の統合を行った上でシェルメッシュとソリッドメッシュとの結合を行うので、シェルメッシュとソリッドメッシュが混合した解析モデルの作成を容易に行うことができる。従って、複雑な形状を持つ薄肉部品に対しても解析モデルの作成を容易に行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。
【００１９】
（第１の実施形態）
先ず、第１の実施形態について説明する。図１は、本発明の実施形態に係る解析モデル作成装置（情報処理装置）の構成を示すブロック図である。この解析モデル作成装置は、例えば部品（解析対象物）のＣＡＤモデル（設計情報）から、構造解析及び振動解析等に利用可能なシェル要素とソリッド要素とが混在した有限要素法（ＦＥＭ）用の解析モデルを作成する。
【００２０】
この解析モデル作成装置には、図１に示すように、演算処理を行うＣＰＵ２、処理を行う手順が規定された処理プログラム３ａを格納したＲＯＭ（記憶装置）３、及び処理の対象とするデータを格納した領域を有するＲＡＭ（記憶装置）４が設けられている。ＲＡＭ４の領域としては、図形要素格納領域４ａ、属性情報格納領域４ｂ、及び検索条件格納領域４ｃ等が挙げられる。また、入力装置６との間で信号の授受を行う入力インタフェース５、出力装置８との間で信号の授受を行う出力インタフェース７、及び記憶装置１０との間で信号の授受を行う記憶装置インタフェース９も設けられている。入力装置６としては、キーボード及びマウス等が挙げられる。出力装置８としては、表示装置８ａ及び描画装置８ｂ等が挙げられる。表示装置８ａとしては、ＣＲＴ及び液晶ディスプレイ等が挙げられる。また、描画装置８ｂとしては、プリンタ（印刷装置）及びプロッタ等が挙げられる。記憶装置１０としては、ハードディスクデバイス（ＨＤＤ）、フレキシブルディスク装置（ＦＤＤ）、コンパクトディスクＲＯＭ（ＣＤＲＯＭ）、ミニディスク（ＭＤ）、及び光磁気記憶装置（ＭＯ）等が挙げられる。記憶装置１０は、処理の対象及び結果となるデータの格納及び保存等を行う。そして、ＣＰＵ２、ＲＯＭ３、ＲＡＭ４、入力インタフェース５、出力インタフェース７、及び記憶装置インタフェースがデータバス１を介して互いに接続されている。なお、記憶装置１０は、解析モデル作成装置に内蔵されてもよい。
【００２１】
このように構成された解析モデル作成装置では、ユーザの指示は入力装置６を用いて行われ、途中の処理状況及び最終的な結果は出力装置８を通じて行われる。また、種々のデータが、入力装置６又は記憶装置１０から、入力インタフェース５又は記憶装置インタフェース９とデータバス１とを通して、ＲＡＭ４に格納される。ＣＰＵ２は、ＲＯＭ３に格納されている処理プログラム３ａの手順に従って処理を行う。そして、処理の段階に応じて、一時的に用いられるデータはＲＡＭ４に格納され、出力されて保存されるデータは記憶装置１０に格納され、最終的な出力は、例えばデータバス１を通じてネットワーク上のサーバ（図示せず）等に格納される。
【００２２】
次に、解析モデル作成装置の動作（解析モデル作成方法）について説明する。この動作は、主にＣＰＵ２の処理プログラム３ａに基づく処理によって実現される。先ず、この動作（処理）の内容について説明する前に、その前提となる条件について説明する。
【００２３】
この処理の対象となる部品の形状モデルの情報（以下、ＣＡＤ情報ということがある）は、ＣＡＤシステム等を用いて作成され、ＲＡＭ４又は記憶装置１０に格納されているとする。なお、このＣＡＤ情報は、部品の形状に関する情報であり、部品形状を構成する形状要素である面、稜線、及び頂点等の幾何情報並びに各形状要素間の隣接関係を表す位相情報を含んでいる。また、各形状要素には、当該形状要素自身を識別するためのＩＤが付されており、ＩＤの指定によって、ＣＰＵ２は、当該ＩＤに該当する形状要素の情報を抽出することができる。
【００２４】
ここで、幾何情報について説明する。上述のように、幾何情報は、部品形状を構成する形状要素である面、稜線、及び頂点等に関する情報である。
【００２５】
面の幾何情報には、例えば平面、円筒面、球面、円錐面、ＮＵＲＢＳ曲面等の面の種別を表す種別情報及び面の種別に応じた幾何特定情報が含まれる。面の幾何特定情報の例としては、以下のようなものが挙げられる。形状要素が平面の場合、平面を通る任意の一点の座標値及び法線ベクトルの各成分の情報がある。形状要素が円筒面の場合、円筒面の軸の方向ベクトル及び軸が通る任意の一点の座標値の情報がある。形状要素が球面の場合、球面の中心の座標値及び半径の情報がある。
【００２６】
稜線の幾何情報には、例えば線分、円、円弧、楕円弧、ＮＵＲＢＵＳ曲線等の稜線の種別を表す種別情報及び稜線の種類に応じた幾何特定情報が含まれる。稜線の幾何特定情報の例としては、以下のようなものが挙げられる。形状要素が線分の場合、始点及び終点の各座標値がある。形状要素が円の場合、円の中心点の座標値、半径及び円の存在する平面の法線ベクトルがある。形状要素が円弧の場合、円弧の中心点の座標値、半径、円弧の存在する平面の法線ベクトル、並びに始点及び終点の各座標値がある。
【００２７】
頂点の幾何情報は、例えば頂点の座標値により表現される。
【００２８】
なお、以下の説明では、形状要素の持つ幾何情報として、面は平面のみ、稜線は線分のみがあるものとするが、他の種類の面及び稜線が存在していてもよい。
【００２９】
次に、位相情報について説明する。上述のように、位相情報は、各形状要素間の隣接関係を表す情報である。
【００３０】
形状要素を構成する各面は境界情報として、１又は２以上の境界ループを持つ。境界ループは、順番に並んだ稜線の列（集合）であり、隣接する稜線並びに最初及び最後の稜線は頂点の一つを共有する。境界ループの一つは外側ループであり、面の外側の境界を示す。従って、すべての面が必ず一つの外側ループを持つ。また、各面は、外側ループ以外に内側ループを持つことがある。内側ループは各面にある穴の境界を示す。そして、これらの境界ループには回り向きがあり、回り向きに従って左側に形状の実体があるように稜線が並べられる。従って、形状の実体の外側から面をみた場合、外側ループは半時計回りの向きを持ち、内側ループは時計回りの向きを持つ。
【００３１】
このようなデータ構造により、各境界ループの向きに従って順番に稜線及び頂点を取り出すことが可能となる。各面から面を構成する稜線、各稜線に接している面を取り出すことも可能となる。
【００３２】
なお、解析モデル作成装置に入力される「部品形状」及びそれを分解した各「部分形状」は、上記で説明した各面のＣＡＤ情報に加え、「ソリッド」を表現するための隣接情報を位相情報として持つものとする。ここで、「部分形状」とは、元の「部品形状」の一部である。また、解析モデル作成装置から出力される「中立面」は、通常のＣＡＤで扱われるような面を表現する形状情報、及びその面の厚みを情報として持つものとする。中立面は複数の隣接する面から構成される場合もある。面は上記で説明したように、平面及び曲面の幾何情報を表現する幾何データ並びにその面を囲む境界情報である境界ループ情報を含むものとする。
【００３３】
また、解析モデル作成装置から出力される解析モデルである有限要素（ＦＥＭ）モデルは、メッシュデータとよばれ、ノード又は節点とよばれる頂点の情報及びノードを頂点とするエレメント又は要素とよばれる情報を含む。ノードの情報は、例えば点の座標値及び各ノードの持つ自由度として表現される。各自由度は３次元の場合、並進の自由度が３つ、回転の自由度が３つの計６つあり、夫々のノードに対して各自由度が有効かどうかの情報を持つ。要素の情報は、要素の種別及び各種別に必要な情報により表現される。
【００３４】
また、本実施形態により扱われる要素は、シェル要素とよばれる面を表現する三角形要素及び四角形要素等、ソリッド要素とよばれる立体を表現する四面体要素及び六面体要素等、シェル要素のノードとソリッド要素のノードとの間の拘束関係を表現する剛体要素及びＭＰＣ等の拘束要素を含む。また、シェル要素は、更に厚み情報を持つ。
【００３５】
本実施形態では、詳細は後述するが、部分形状から作成された中立面は、隣接する中立面を統合した上で、シェル要素に変換され、ソリッドでモデル化すると指定された部分形状はソリッド要素に変換される。また、変換されたシェル要素とソリッド要素は拘束要素で連結される。
【００３６】
なお、本実施形態では、ＲＡＭ４又は記憶装置１０に格納されているＣＡＤデータから、ＣＰＵ２が、表示装置８ａに部品形状の一覧を表示し、作業者が入力装置６により所望の部品形状を選択することにより、ＣＰＵ２が処理を実行する。そして、結果となる解析モデルのデータがＲＡＭ４又は記憶装置１０に格納されると共に、表示装置８ａに結果が表示される。また、処理の過程で、適宜、表示装置８ａによる途中結果の表示、作業者への入力の指示が行われ、入力装置６を介して作業者が値等を入力すると、この入力値等がＲＡＭ４又は記憶装置１０に格納される。
【００３７】
次に、解析モデル作成装置の動作（解析モデル作成方法）の内容について説明する。図２は、解析モデル作成装置の動作を示すフローチャートである。
【００３８】
先ず、ＣＰＵ２は、入力された部品の形状情報（ＣＡＤ情報）に基づいて、部品形状を部分形状に分解する（ステップＳ１）。ステップＳ１の詳細は、図１８を参照しながら後述するが、ＣＰＵ２は、各「部分形状」が互いに共通の空間領域を占めることはなく（積形状が空）、分解した全ての「部分形状」の和形状が元の部品形状になるように分解する。また、ＣＰＵ２は、シェルでモデル化する部分形状については、その部分形状の中立面が、一枚のシート状の面又は一枚のシート状の面にいくつかの穴があいている形状と位相的に同等になるように分解する。
【００３９】
例えば、図３に示すように、基本となる薄肉部（以下「主壁」とよぶ）に１又は２以上のリブが立っているような形状に対しては、図４に示すように、部分形状Ｃ４１〜Ｃ４６に分解する。ここで、Ｃ４６が主壁、Ｃ４１〜Ｃ４５がリブを形成する部分形状である。
【００４０】
また、分解により得られた部分形状の一つの断面が、図５に示すように、Ｔの字型の形状をしている場合、中立面は、図６に示すように、一枚のシートと同一の位相を持つのではなく、二枚のシートを継ぎ足したものと同様の位相を持つことになる。従って、この場合、ＣＰＵ２は、更なる分解を行う。
【００４１】
ＣＰＵ２は、このような分解を行った後、以下の（Ａ）及び（Ｂ）に示すデータを作成し、これをＲＡＭ４又は記憶装置１０に格納する。
（Ａ）各部分形状の形状データ
（Ｂ）各部分形状の「分離境界面」及び対応する「被分離境界面」のＩＤ対テーブル
【００４２】
ここで、（Ａ）の各部分形状の形状データは、上記で説明した形状の幾何情報及び位相情報である。また、（Ｂ）の「分離境界面」及び「被分離境界面」は、部品形状の一部の面集合を、部分形状を構成する面として分離したときに境界上に新たに作成された面である。そして、分離した方の部分形状（分離形状）に作成された面を「分離境界面」とよぶこととし、分離されて残った面（被分離形状）に対して新たに作成された面を「被分離境界面」とよぶこととする。
【００４３】
例えば、図７に示す断面が十字型の部分形状に対して、図８に示すように、ＣＰＵ２が、直方体形状の部分形状Ｃ８１を「分離形状」として分離し、その結果、断面がＴの字型の部分形状Ｃ８２が「被分離形状」として残されたものとする。この場合、分離された境界上に、部分形状Ｃ８１に分離境界面ＳＢ８３が作成され、部分形状Ｃ８２に被分離境界面ＳＢ８４が作成される。そして、ＩＤ対テーブルとしては、図９に示すものが得られる。
【００４４】
ステップＳ１の処理後、ＣＰＵ２は、隣接関係情報作成手段として、各部分形状の「分離境界面」及び対応する「被分離境界面」のＩＤ対テーブルを基にして、分解した各部分形状間の隣接関係情報をテーブルに登録する（ステップＳ２）。ここで、隣接関係情報とは、上記の部分形状を分離したときの「分離境界面」及び「被分離境界面」のＩＤ対、及び、最終的に分解された各部分形状において、上記の「分離境界面」及び「被分離境界面」を持つ各部分形状のＩＤ対を一つの組とする情報である。このような隣接関係情報の作成に当たり、ＣＰＵ２は、分解処理終了後の「分離境界面」又は「被分離境界面」を持つ部分形状を探索して、そのＩＤをステップＳ１で作成した隣接関係テーブルに追加して登録する。「分離境界面」又は「被分離境界面」を持つ部分形状は、各部分形状の形状データを調査すれば見つけ出すことが可能である。例えば、図７に示すような部品形状が図８に示すような分解の過程を経て、最終的に図１０に示すような３つの部分形状Ｃ８１、Ｃ１０１、Ｃ１０２に分解されたとする。図９に示すように、隣接関係テーブルに登録された分離境界面ＳＢ８３を持つ部分形状はＣ８１であり、被分離境界面ＳＢ８４を持つ部分形状はＣ１０１である。従って、ＣＰＵ２は、図１１に示すように、図９に示す隣接関係テーブルに、部分形状Ｃ８１及びＣ１０１のＩＤを追加する。また、ＣＰＵ２は、図１１には示していないが、部分形状Ｃ１０１及びＣ１０２の隣接関係の登録も行う。このような隣接関係情報により、分解により得られた各部分形状において、どの部分形状とどの部分形状が隣接しているか、また、隣接する部分形状がどの面で隣接しているかがわかる。
【００４５】
次いで、ＣＰＵ２は、分解した各部分形状に対して設定されたモデル化種別を取得する（ステップＳ３）。このとき、ＣＰＵ２は、モデル化の種別の値として、例えば作業者が夫々の部分形状に対して入力装置６を用いて入力した情報を取得してもよいし、各部分形状の形状データ等から自動的に判断した値を取得してもよい。なお、本実施形態では、モデル化種別の種類として、（Ａ）シェル、（Ｂ）ソリッド、（Ｃ）非モデル化の三種類を設定できるようにしているが、ビーム等の線要素でのモデル化等の指定を行うことも可能である。なお、（Ｃ）の「非モデル化」は、微小形状等の解析上特に必要ない形状要素をモデル化の対象からはずすという指定である。そして、ＣＰＵ２は、モデル化種別の取得後に、その結果を示すモデル化種別テーブルを作成し、ＲＡＭ４又は記憶装置１０に保存する。例えば、図３に示す部品形状を図４に示す部分形状に分解した場合に、部分形状Ｃ４１、Ｃ４２、Ｃ４３及びＣ４６に対しては（Ａ）のシェルでモデル化が指定され、部分形状Ｃ４４に対しては（Ｂ）ソリッドでモデル化が指定されたとする。また、部分形状Ｃ４５に対しては（Ｃ）の非モデル化が指定されたとする。この場合、ＣＰＵ２は、図１２に示すようなモデル化種別テーブルを作成し、例えば記憶装置１０に保存する。
【００４６】
その後、ＣＰＵ２は、中立面抽出手段として、シェルでモデル化すると設定された部分形状の中立面を抽出し、各部分形状と抽出した中立面との対応関係をテーブルに登録して、ＲＡＭ４又は記憶装置１０に格納する（ステップＳ４）。処理の対象とする各部分形状の中立面は一枚のシート状の面又は一枚のシート状の面にいくつかの穴があいている形状と位相的に同等なものなので、例えば、特許文献１又は２に示されるような方法で容易に抽出することができる。例えば、図７に示す部品形状を図１０に示す部分形状Ｃ８１、Ｃ１０１及びＣ１０２に分解した場合、各部分形状に対してシェルでモデル化すると設定されているときは、図１３に示すように、各部分形状の中立面ＭＳ１３１、ＭＳ１３２及びＭＳ１３３を抽出する。
【００４７】
続いて、ＣＰＵ２は、ステップＳ２で作成した隣接関係テーブルを基に、隣接する中立面を統合した統合中立面を作成する（ステップＳ５）。例えば、ＣＰＵ２は、ステップＳ４において図１３に示す中立面を抽出した場合には、中立面ＭＳ１３１と中立面ＭＳ１３３とが隣接し、中立面ＭＳ１３２と中立面ＭＳ１３３とが隣接しているため、夫々を統合して、図１４に示すように、統合中立面を作成する。このとき、詳細については図３０を参照しながら後述するが、ＣＰＵ２は、統合後の中立面に微小要素が存在しうる場合には、中立面補正手段として、中立面の補正を行う。
【００４８】
次いで、ＣＰＵ２は、シェルメッシュ作成手段として、ステップＳ５で統合した中立面のサーフェスメッシュを作成し、シェルメッシュを作成する（ステップＳ６）。そして、ＣＰＵ２は、統合した中立面と作成したサーフェスメッシュの対応関係をテーブルに登録して、ＲＡＭ４又は記憶装置１０に格納する。例えば、図６に示す統合中立面のサーフェスメッシュに対して、ＣＰＵ２は、図１５に示すようなシェルメッシュを作成する。
【００４９】
その後、ＣＰＵ２は、ソリッドメッシュ作成手段として、ソリッドでモデル化すると設定された部分形状のソリッドメッシュを作成する（ステップＳ７）。そして、ＣＰＵ２は、ソリッドでモデル化すると設定された部分形状とソリッドメッシュとの対応関係をテーブルに登録して、ＲＡＭ４又は記憶装置１０に格納する。例えば、図４中の部分形状Ｃ４４のソリッドメッシュに対して、ＣＰＵ２は、図１６に示すようなソリッドメッシュを作成する。
【００５０】
なお、本実施形態では、ステップＳ６及びステップＳ７において、ＣＰＵ２は、作成されたメッシュの各節点が、メッシュを作成する対象となる形状のどこに存在するかの情報をＲＡＭ４又は記憶装置１０に格納しておく。例えば、ある節点がメッシュ作成の対象形状のどの面にあるかという情報を保存する。このような情報は、従来の方法におけるメッシュを作成する処理でも作成されている。
【００５１】
ステップＳ７の後、ＣＰＵ２は、ステップＳ２で作成した隣接関係テーブルを基に、ソリッドメッシュとシェルメッシュとの間の隣接関係を認識する（ステップＳ８）。そして、隣接するソリッドメッシュとシェルメッシュとの分離境界面及び被分離境界面上の節点間を結ぶ剛体要素、ＭＰＣ等の拘束要素を作成してメッシュを結合する。
【００５２】
図１７は、隣接するソリッドメッシュとシェルメッシュとを結合したメッシュ形状の例を示す図である。図１７には、側面から見た場合の形状を示してある。図１７に示すように、この例では、ソリッド要素ＳＭ１７１とシェル要素ＳＭ１７２との間に４つの拘束要素が作成されている。拘束要素の生成は、例えば、ソリッド要素の分離境界面上にある節点と、その節点をシェルメッシュ上に投影した点に最も最も近いシェルメッシュ上の節点とを結ぶ要素を拘束要素とすることによって実現できる。また、ステップＳ６又はＳ７でシェルメッシュ又はソリッドメッシュを作成する際に、分離境界面上にある節点を隣接する中立面又は部品形状に投影した点（アンカーノード）を作成しておき、隣接する中立面又は部品形状のメッシュを作成するときに、そのアンカーノードを必ず節点とするようなメッシュを作成することによっても実現できる。拘束要素は、この分離境界面上の節点と対応するアンカーノードの間に作成すればよい。
【００５３】
次に、図１８を参照しながらステップＳ１の処理について詳述する。
【００５４】
先ず、ＣＰＵ２は、作業者に入力装置６を用いて部品形状の肉厚値及び肉厚差許容値を入力させ、ＲＡＭ４又は記憶装置１０に保存する（ステップＳ１０１）。
【００５５】
次いで、ＣＰＵ２は、部品形状を構成するすべての面の中から、ステップＳ１０１で取得した肉厚許容値との差が、所定の肉厚差許容値以内の長さの稜線を持つ面を探索して、これを側面候補と認識し、側面候補と認識した面を表示装置８に表示する。その後、作業者に、新たに側面として加えたいものを入力装置６を介して指定させると共に、側面候補と認識した面の中で側面ではないと作業者が判断したものを入力装置６を用いて指定させることによって側面候補から除外する。そして、作業者に入力装置６を介して決定の意思表示をさせることにより、ＣＰＵ２は、側面抽出手段して部品形状の側面を認識し、抽出する（ステップＳ１０２）。ここで、側面とは、薄肉形状における厚み方向の面であり、中立面をとったときには辺に縮退するものをいう。
【００５６】
次いで、ＣＰＵ２は、凸形状分解手段として、ステップＳ１０２で認識した側面を凸形状の面に分解する（ステップＳ１０３）。ここで、凸形状の面とは、面を構成する任意の２頂点を結ぶ線分が面の境界又は面の内側に存在する面をいう。ステップＳ１０３の詳細は、図２３を参照しながら後述するが、ＣＰＵ２は、側面内の頂点間に対角線を挿入することによって分解を行う。
【００５７】
例えば、図１９に示す多角形をなす側面に対し、図２０に示すように、内角が鈍角となっている頂点間に対角線ｅ２０１を挿入する。この結果、図１９に示す側面は、稜線ｅ２０１、ｅ２０２、ｅ２０３及びｅ２０４からなる稜線列を境界ループとする面Ｓ２２２、並びに稜線ｅ２０１、ｅ２０５、ｅ２０６、ｅ２０７、ｅ２０８及びｅ２０９からなる稜線列を境界ループとする面Ｓ２２６に分解される。
【００５８】
また、ＣＰＵ２は、凸形状の分解処理に応じて、形状データを整合性が取れるように更新し、また、凸形状への分解の過程で、新たに挿入された稜線のＩＤリストをＲＡＭ４又は記憶装置１０に保存する。
【００５９】
ステップＳ１０３の処理後、ＣＰＵ２は、面集合取得手段として、部品形状の任意の側面を抽出し、その側面から凸又は平行に隣接している面を辿って得られる面の集合（面集合）を探索する（ステップＳ１０４）。但し、ＣＰＵ２は、面集合の探索の際に、ステップＳ１０３で挿入した稜線を介して隣接している面同士は辿らない。ここで、「凸に隣接している」とは、図２１に示すように、ある稜線の向きの単位ベクトルをｅ、稜線の向きに対して左側に存在する面の法線ベクトルをｎ１、右側に存在する面の法線ベクトルの法線ベクトルをｎ２としたときに、数式（１）が成り立つ状態をいう。なお、ここでいう面の法線ベクトルとは、形状の実体側から外側を向いている法線ベクトルをいう。面の法線ベクトルは、当該面の形状情報から取得することができる。
ｅ・（ｎ１×ｎ２）＞０      （１）
【００６０】
逆に、次の数式（２）が成り立つ状態を「凹に隣接している」という。
ｅ・（ｎ１×ｎ２）＜０      （２）
【００６１】
なお、ＣＰＵ２は、隣接している面を辿ることができなくなった場合には、その隣接している面との境界との稜線のＩＤリストを境界稜線リストとしてＲＡＭ４又は記憶装置１０に保存する。例えば図２２に示すような形状に対して面Ｓ２２１から辿れる面は面Ｓ２２２、Ｓ２２３、Ｓ２２４及びＳ２２５であり、境界稜線リストには稜線ｅ２２６、ｅ２２７、ｅ２２８及びｅ２２９を含ませる。
【００６２】
ステップＳ１０４の処理後、ＣＰＵ２は、分離境界ループ抽出手段として、ステップＳ１０４で取り出した面集合と残りの面集合との分離境界ループを作成する（ステップＳ１０５）。即ち、ステップＳ１０４で保存した境界稜線リストを用いて、ある稜線から同一の頂点を持つ稜線を探して並べていく。図２２に示す例の場合、分離境界ループは、稜線ｅ２２６、ｅ２２７、ｅ２２８及びｅ２２９の並びの稜線列になる。分離境界ループは面集合毎の境界を示す。
【００６３】
次いで、ＣＰＵ２は、ステップＳ１０５で分離したときの分離境界ループが存在するかどうかを判定する（ステップＳ１０６）。そして、分離境界ループ存在しない場合は、分離する部分形状がない判断し、分解処理を終了する。一方、分離境界ループが存在する場合は、ステップＳ１０７の処理を行う。
【００６４】
ステップＳ１０７において、ＣＰＵ２は、境界面作成手段として、ステップＳ１０４で分離した面集合と、残された面集合との間の分離境界ループ上に、夫々、分離境界面、被分離境界面を作成し、部分形状作成手段として、夫々を立体形状にする。これらの分離境界面、被分離境界面は、図８に示す分離境界面ＳＢ８３及び被分離境界面ＳＢ８４に相当する。このステップＳ１０７の詳細は、図２７を参照しながら後述する。
【００６５】
このようにして、ステップＳ１の処理が行われる。
【００６６】
次に、図２３を参照しながらステップＳ１０３の処理について詳述する。
【００６７】
先ず、ＣＰＵ２は、凹頂点抽出手段として、ステップＳ１０２で認識した側面から凹頂点を抽出する（ステップＳ１０３１）。凹頂点は、面の境界ループの回り向きに対して、着目している頂点の前後の稜線の着目頂点における接線の向きと、着目している側面の頂点における法線方向の向きとの関係が以下の条件を満たす頂点をいう。即ち、着目頂点の前後の稜線の境界ループの向きに沿った接線ベクトルを夫々ｄ１、ｄ２、側面の頂点における法線ベクトルをｎとしたときに、数式（３）が成り立つ頂点をいう。
ｎ・（ｄ１×ｄ２）＜−ｅｐｓ      （３）
【００６８】
逆に、次の数式（４）が成り立つ頂点を凸頂点という。
ｎ・（ｄ１×ｄ２）＞ｅｐｓ      （４）
【００６９】
なお、ｅｐｓは予め定められた許容誤差であり、例えばＲＡＭ４又は記憶装置１０に保存されており、ＣＰＵ２は、この値を随時取得することができる。
【００７０】
例えば、図２４に示す例では、側面が、紙面に垂直で紙面から視点方向の法線ベクトルを持っているが、この側面では、頂点Ｖ２４１が凸頂点であり、頂点Ｖ２４２が凹頂点である。また、図２５に示す例では、頂点Ｖ２５１、Ｖ２５２、Ｖ２５３及びＶ２５４が凹頂点として抽出される。
【００７１】
ステップＳ１０３１の処理後、ＣＰＵ２は、凹頂点が存在するか判定する（ステップＳ１０３２）。そして、凹頂点が存在しなければ、分解処理が終了したとして、この処理を終了する。一方、凹頂点が存在すれば、ステップＳ１０３３の処理を行う。
【００７２】
ステップＳ１０３３では、ＣＰＵ２は、ステップＳ１０３１で取り出した凹頂点を、着目している面の境界ループ上で順番に並べた場合に、隣り合い、なおかつ同じ稜線の端点となっていない頂点対を一組取り出して、その二頂点間に対角線を作成する。つまり、ＣＰＵ２は、対角線作成手段として、所定の位置に対角線を作成する。図２６に示す例では、凹頂点Ｖ２６０１及びＶ２６０２を一組の頂点対として抽出し、凹頂点Ｖ２６０３及びＶ２６０４を他の一組の頂点対として抽出する。そして、夫々に、対角線ｅ２６０５、ｅ２６０６を作成する。
【００７３】
次いで、ＣＰＵ２は、側面分割手段として、ステップ１０３３で作成した対角線で着目している面を分割する（ステップＳ１０３４）。また、ＣＰＵ２は、境界ループの回り向きにそって、対角線の開始頂点から終了頂点までの稜線を含む境界を持つ面を「分離面」とし、残された稜線を境界に持つ面を「被分離面」とする。例えば、図２６に示す例では、対角線ｅ２６０５に着目すると、稜線列ｅ２６０５、ｅ２６０７、ｅ２６０８及びｅ２６０９で示される境界ループを持つ分離面Ｓ２６１８、並びに稜線列ｅ２６０５、ｅ２６１０、ｅ２６１１、ｅ２６１２、ｅ２６１３、ｅ２６１４、ｅ２６１５、ｅ２６１６及びｅ２６１７で示される境界ループを持つ被分離面Ｓ２６１９を作成する。対角線ｅ２６０６についても同様である。なお、ＣＰＵ２は、新たに作成した面や隣接する面及び稜線の形状データを、整合性が保たれるように修正する。
【００７４】
その後、ＣＰＵ２は、「被分離面」を分割対象面に再設定して、ステップＳ１０３１からステップＳ１０３４までの分割処理を繰り返す。
【００７５】
このようにして、ステップＳ１０３の処理が行われる。
【００７６】
次に、図２７を参照しながらステップＳ１０７の処理について詳述する。
【００７７】
先ず、ステップＳ１０７０１からステップＳ１０７０６までの一連の処理は、図１８のステップＳ１０５で抽出した分離境界ループに対して、同一の分離境界面を作成する稜線の分類を行う処理である。この一連の処理では、分離境界ループ上の隣接する各稜線対に対して、同じ面を張れるか否かの判定を行う。例えば、図２８に示す形状から図２９に示すように、部分形状Ｃ２９０１を分離する過程では、稜線ｅ２９０８、ｅ２９０９、ｅ２９１０、ｅ２９１１、ｅ２９１２及びｅ２９１３からなる分離境界ループ上に分離境界面を張る必要があるが、例えば隣接する稜線ｅ２９０８と稜線ｅ２９０９とに同一の面を張れるか否かの判定を行う。
【００７８】
具体的には、先ず、ＣＰＵ２は、隣接する稜線対が、分離されて残された面集合において、同一の面又は幾何的に形状が同一とみなせる面に接するか判定する（ステップＳ１０７０１）。そして、同一の面又は幾何的に形状が同一とみなせる面に接する場合には、ステップＳ１０７０３の処理を行い、それ以外の場合はステップＳ１０７０２の処理を行う。例えば、図２９に示す例では、互いに隣接する稜線ｅ２９１１及びｅ２９１２がいずれも、分離されて残される面Ｓ２９１７に接するので、同一の面又は幾何学的な形状が同一とみなせる面に接すると判定する。
【００７９】
ステップＳ１０７０２では、ＣＰＵ２は、隣接する稜線対のいずれかが側面上の稜線であるか判定する。そして、側面上の稜線であれば、ステップＳ１０７０３の処理を行い、それ以外の場合はステップＳ１０７０４の処理を行う。例えば、図２９に示す例では、面Ｓ２９１８を側面とみると、稜線ｅ２９０９が面Ｓ２９１８上の稜線であると判定する。
【００８０】
ステップＳ１０７０３では、ＣＰＵ２は、ステップＳ１０７０１又はＳ１０７０２における判定の対象とした稜線対について、これらが同一の境界面に位置し、これらに同一の面を張ることができると判定する。そして、この判定結果をＲＡＭ４又は記憶装置１０に保存する。
【００８１】
一方、ステップＳ１０７０４では、ＣＰＵ２は、ステップＳ１０７０１又はＳ１０７０２における判定の対象とした稜線対について、これらが互いに異なる境界面に位置し、これらに同一の面を張ることができないと判定する。そして、この判定結果をＲＡＭ４又は記憶装置１０に保存する。
【００８２】
ステップＳ１０７０３又はＳ１０７０４の処理後、ＣＰＵ２は、分離頂点抽出手段として、同一の分離境界面が張れない隣接する稜線間の頂点を「分離頂点」として抽出する（ステップＳ１０７０５）。図２９に示す例では、稜線ｅ２９０８と稜線ｅ２９１３との稜線対、稜線ｅ２９１０と稜線ｅ２９１１との稜線対には同一の面を張ることができないので、その間の頂点Ｖ２９０７及びＶ２９０４を「分離頂点」とする。
【００８３】
次いで、ＣＰＵ２は、「分離頂点」が抽出されたか判定する（ステップＳ１０７０６）。そして、抽出されていなければ、分離境界ループの分割処理を終了し、そうでなければ、ステップＳ１０７０７の処理を行う。
【００８４】
このようにして、上述のように、ＣＰＵ２は同一の分離境界面を作成する稜線の分類を行う。
【００８５】
その後、ＣＰＵ２は、分離境界ループ上で、任意の隣接する分離頂点間を結ぶ分割稜線を作成し、分離境界ループを「分割境界ループ」と「被分割境界ループ」とに分割する（ステップＳ１０７０７）。具体的には、ＣＰＵ２は、分離境界ループの回りに沿って、上記の隣接する分離頂点間の間に他の「分離頂点」がない方の稜線を含むループを「分割境界ループ」とし、それ以外のループを「被分割境界ループ」とする。つまり、ＣＰＵ２は、分離境界ループ分割手段として、上記の隣接する分離頂点以外に分離頂点をもたない分離境界ループを「分割境界ループ」とする。図２９に示す例では、「分離頂点」Ｖ２９０７と「分離頂点」Ｖ２９０４との間に分割稜線ｅ２９１４を作成して、稜線ｅ２９１４、ｅ２９０８、ｅ２９０９及びｅ２９１０からなるループと、稜線ｅ２９１４、ｅ２９１１、ｅ２９１２及びｅ２９１３からなるループとに分割する。この場合、境界ループ上では、「分離頂点」Ｖ２９０４及びＶ２９０７以外に「分離頂点」が存在しないので、どちらを「分割境界ループ」、「被分割境界ループ」に設定してもよい。
【００８６】
続いて、ＣＰＵ２は、ステップＳ１０７０７で作成した分割境界ループのデータを複製し、複製元（複製前）の分割境界ループ及び複製した分割境界ループを、夫々分離する部分形状の分離境界ループ、分離された残りの部分形状の分離境界ループとする。そして、ＣＰＵ２は、分離境界面作成手段及び被分離境界面作成手段として、夫々のループに対して面を作成し、分離する部分形状、残された部分形状の立体データを作成する（ステップＳ１０７０８）。例えば、図２９に示す例において稜線ｅ２９１４、ｅ２９０８、ｅ２９０９及びｅ２９１０からなるループを「分割境界ループ」としている場合には、この「分割境界ループ」の複製を作成し、その後、これらの一方を部分形状Ｃ２９０１のループとし、他方を分離して残される部分形状の境界ループとする。この結果、図８に示すような分離境界面ＳＢ８３及び被分離境界面ＳＢ８４と同様な分離境界面及び被分離境界面が作成される。
【００８７】
次いで、ＣＰＵ２は、ステップＳ１０７０８で作成した「分離境界面」及び「被分離境界面」のＩＤのペアをＲＡＭ４又は記憶装置１０に保存する（ステップＳ１０７０９）。
【００８８】
その後、ＣＰＵ２は、「被分割境界ループ」を新たな分割の対象となる分離境界ループとして設定し（ステップＳ１０７１０）、ステップＳ１０７０１からステップＳ１０７０９までの処理を繰り返す。
【００８９】
このようにして、ステップＳ１０７の処理が行われる。
【００９０】
次に、ステップＳ５の処理の詳細について、図３０を参照しながら説明する。なお、ステップＳ５０１からステップＳ５０７までの処理は、各部分形状を分離するときに作成した「分離境界面」毎に行う。
【００９１】
先ず、ＣＰＵ２は、各部分形状に対して抽出した中立面の各頂点のうち、元の各部分形状の着目分離境界面上にあるものを抽出する（ステップＳ５０１）。各頂点が分離境界面にあるかどうかの情報は、上記で述べたメッシュ作成の処理のときと同様に、中立面を抽出する過程で作成されるが、中立面の各頂点と着目分離境界面との距離を計算し、オンサーフェス判定を行うことによっても判定してもよい。
【００９２】
例えば、図３１に示す部品形状が部分形状Ｃ３１１、Ｃ３１２及びＣ３１３に分割され、図３２に示すように、夫々、中立面ＭＳ３２１、ＭＳ３２２、ＭＳ３２３が抽出されているとする。また、着目している分離境界面が部分形状Ｃ３１１及びＣ３１２の間の分離境界面であるとし、部分形状Ｃ３１１側に分離境界面があるものとする。この場合、着目している中立面ＭＳ３２１の分離境界面上の頂点は頂点Ｖ３２１及びＶ３２２となり、中立面を抽出する過程でこの情報は作られている。
【００９３】
ステップＳ５０１の処理後、ＣＰＵ２は、ステップＳ１０７０９で作成した「分離境界面」及び「被分離境界面」のペアの情報を参照し、更に、着目している分離境界面に隣接する部分形状を参照し、その部分形状の中立面が抽出されているかを判定する（ステップＳ５０２）。そして、抽出されていなければ処理を終了し、それ以外の場合にはステップＳ５０３の処理を行う。図３１及び図３２に示す例では、着目している中立面に隣接する部分形状Ｃ３１１では中立面ＭＳ３２３が隣接しているので、中立面が抽出されていると判定する。
【００９４】
ステップＳ５０３では、ＣＰＵ２は、投影点作成手段として、ステップＳ５０１で抽出した分離境界面上の頂点（分離境界面上頂点）を隣接中立面に投影する。上述のように、本実施形態では、稜線がすべて線分と仮定しているので、投影した頂点間を結ぶ線分列が投影稜線列となる。図３２に示す例では、着目している分離境界面上の頂点Ｖ３２１及びＶ３２２を、隣接する中立面ＭＳ３２３に投影した点はＶ３２１´、Ｖ３２２´であり、これらを結ぶ稜線ｅ３２１´が頂点Ｖ３２１及びＶ３２２を結ぶ稜線ｅ３２１の投影稜線となる。
【００９５】
次いで、ＣＰＵ２は、隣接中立面内に既に他の投影稜線列がある場合に、新たに投影した分離境界面上の頂点が近接しているかを判定する（ステップＳ５０４）。この判定では、例えば、各頂点と既に投影されている稜線との距離を取得し、その値が、作業者が設定した閾値より小さいか否かに基づいて行う。そして、近接している場合には、ステップＳ５０５の処理を行い、それ以外の場合には、ステップＳ５０５を省略してステップＳ５０６の処理を行う。近接している場合には、統合中立面上のメッシュを作成したとき、微小要素が作成されてしまう可能性がある。例えば、図３２に示す例では、隣接中立面ＭＳ３２３に、既に隣接している中立面ＭＳ３２２の投影稜線ｅ３２２´があるので、図３３に示すように、投影点Ｖ３２１´と投影稜線ｅ３２２´との距離ｄ３３１を計算し、作業者が設定した閾値より小さいか判定する。
【００９６】
ステップＳ５０５では、ＣＰＵ２は、ステップＳ５０４で、第２の投影点補正手段及び頂点補正手段として、新たに投影した頂点を既に投影された稜線列に移動させる。この移動処理では、ＣＰＵ２は、着目頂点と稜線列との最短線を求め、稜線列上の最短線の足に着目頂点を移動させる。また、移動した点と、稜線列のいずれかの頂点との距離（間隔）が作業者が設定した閾値（所定値）以下の場合には、その頂点を投影点とする。例えば、図３３に示すでは、投影点Ｖ３２１´と投影稜線ｅ３２２´とが近接しており、投影点Ｖ３２１´の位置を、投影点Ｖ３２１´から稜線ｅ３２２´におろした最短線の足Ｖ３２１´´の位置に移動させる。また、足Ｖ３２１´´と頂点Ｖ３２３´との距離が閾値より小さい場合は、足Ｖ３２１´´の位置を、更に頂点Ｖ３２３´の位置に移動させる。投影点Ｖ３２２´に対しても同様の処理を行う。その後、ステップＳ５０６の処理を行う。また、投影点のほかに他の中立面から作成された投影点が存在する場合、投影点補正手段及び頂点補正手段として、これらの投影点の間隔が所定値以下であれば、いずれか一つの投影点（投影頂点）の位置に残りの投影点の位置を補正することが好ましい。
【００９７】
ステップＳ５０６では、ＣＰＵ２は、分離境界面上の頂点の位置を投影頂点の位置に移動させる。このとき、ＣＰＵ２は、整合性がとれるように着目している部分形状の中立面の位置及び姿勢を変更する処理を行う。例えば、図３４に示す例では、頂点Ｖ３２１及びＶ３２２の位置を、投影点Ｖ３２１´、Ｖ３２２´に移動させる。ステップＳ５０５で投影点を移動している場合は、移動された位置に移動させる。また、投影点の移動の結果、移動後の投影点Ｖ３２１´及びＶ３２２´と元の中立面ＭＳ３２１上の頂点Ｖ３４５及びＶ３４６とが同一の平面上にのらない可能性もある。このような場合は、例えば、投影点Ｖ３２１´、Ｖ３２２´及びＶ３４５で規定される平面にＶ３４６を投影した点Ｖ３４６’に投影した位置に点Ｖ３４６を移動させる。
【００９８】
そして、ＣＰＵ２は、上記で投影した稜線列の情報を中立面毎に登録して、上記の処理に使えるようにする（ステップＳ５０７）。
【００９９】
このようにしてステップＳ５の処理が行われる。
【０１００】
このような本実施形態によれば、板金部品及び樹脂部品等の薄肉部品のＣＡＤ情報から、シェルメッシュ及びソリッドメッシュが混合した有限要素法用の解析モデルを、少ない工数で容易に作成することができる。つまり、シェルが設定された部分形状に対して適切な中立面の統合を行った上でシェルメッシュとソリッドメッシュとの結合を行うので、シェルメッシュとソリッドメッシュが混合した解析モデルの作成を容易に行うことができる。従って、複雑な形状を持つ薄肉部品に対しても解析モデルの作成を容易に行うことができる。
【０１０１】
また、微小要素が存在するような場合でも、投影点の補正等により、これを予め排除することができるため、計算時間が大幅にかかってしまうことを防止することができる。また、微小要素が存在しないように作業者がモデルの修正を行う工数を削減することも可能である。
【０１０２】
また、本実施形態によれば、部品のＣＡＤモデルを基に、当該部品形状の部分形状への分解が行われるため、作業者が行う必要がある工数を削減することができる。例えば、部品形状の部分形状への分解の処理の一部として、側面形状を凸形状に分解する作業工数を削減することができる。更に、各部分形状から抽出した中立面同士の統合、各部分形状をモデル化したシェルメッシュ及びソリッドモデルの統合の際に、隣接関係が保存されるため、このモデルの統合の際に作業者が指示を行う必要がなくなるため、作業工数を削減することができる。また、部分形状の分離の際に、分離する境界の面を特定する情報が作成されるため、作業者の工数を減らすことが可能となる。
【０１０３】
なお、本発明の実施形態は、例えばコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びプログラムプロダクトは、本発明の範疇に含まれる。
【図面の簡単な説明】
【０１０４】
【図１】本発明の実施形態に係る解析モデル作成装置（情報処理装置）の構成を示すブロック図である。
【図２】解析モデル作成装置の動作を示すフローチャートである。
【図３】分解前の部品形状の一例を示す図である。
【図４】図３に示す部品形状の分解を示す図である。
【図５】中立面が位相的に一枚のシートにならない形状の一例を示す図である。
【図６】位相的に一枚のシートとならない中立面の一例を示す図である。
【図７】分離前の部分形状の一例（十字型）を示す図である。
【図８】図７に示す部分形状における分離境界面及び被分離境界面を示す図である。
【図９】ＩＤ対テーブルの一例を示す図である。
【図１０】図７に示す部分形状における分解を示す図である。
【図１１】隣接関係テーブルの一例を示す図である。
【図１２】モデル化種別テーブルの一例を示す図である。
【図１３】抽出された中立面の一例を示す図である。
【図１４】統合された中立面の一例を示す図である。
【図１５】統合中立面のシェルメッシュを示す図である。
【図１６】ソリッドメッシュの一例を示す図である。
【図１７】ソリッドメッシュとシェルメッシュの結合を示す図である。
【図１８】ステップＳ１の内容を示すフローチャートである。
【図１９】凸形状への分解前の側面の一例を示す図である。
【図２０】図１９に示す側面の凸形状への分解を示す図である。
【図２１】凸に隣接か否かの判定方法を示す図である。
【図２２】部分形状の面集合及びその境界稜線を示す図である。
【図２３】ステップＳ１０３の内容を示すフローチャートである。
【図２４】凹頂点か否かの判定方法を示す図である。
【図２５】抽出された凹頂点を示す図である。
【図２６】側面の境界ループの分割を示す図である。
【図２７】ステップＳ１０７の内容を示すフローチャートである。
【図２８】分離前の部分形状の一例を示す図である。
【図２９】分離境界ループの分類方法を示す図である。
【図３０】ステップＳ５の内容を示すフローチャートである。
【図３１】部分形状同士の関係を示す図である。
【図３２】分離境界面上の中立面頂点の隣接中立面への投影を示す図である。
【図３３】隣接中立面への投影頂点の既投影稜線への近接性判定方法及び統合処理の一例を示す図である。
【図３４】中立面の統合処理の一例を示す図である。
【図３５】ソリッドメッシュ及びシェルメッシュが混合したモデルを示す図である。
【図３６】リブの中立面の位置の従来の修正方法を示す図である。
【符号の説明】
【０１０５】
１：データバス
２：ＣＰＵ
３：ＲＯＭ
４：ＲＡＭ
５：入力インタフェース
６：入力装置
７：出力インタフェース
８：出力装置
９：記憶装置用インタフェース
１０：記憶装置
【図１】
0005089478.tif 000002
【図２】
0005089478.tif 000003
【図３】
0005089478.tif 000004
【図４】
0005089478.tif 000005
【図５】
0005089478.tif 000006
【図６】
0005089478.tif 000007
【図７】
0005089478.tif 000008
【図８】
0005089478.tif 000009
【図９】
0005089478.tif 000010
【図１０】
0005089478.tif 000011
【図１１】
0005089478.tif 000012
【図１２】
0005089478.tif 000013
【図１３】
0005089478.tif 000014
【図１４】
0005089478.tif 000015
【図１５】
0005089478.tif 000016
【図１６】
0005089478.tif 000017
【図１７】
0005089478.tif 000018
【図１８】
0005089478.tif 000019
【図１９】
0005089478.tif 000020
【図２０】
0005089478.tif 000021
【図２１】
0005089478.tif 000022
【図２２】
0005089478.tif 000023
【図２３】
0005089478.tif 000024
【図２４】
0005089478.tif 000025
【図２５】
0005089478.tif 000026
【図２６】
0005089478.tif 000027
【図２７】
0005089478.tif 000028
【図２８】
0005089478.tif 000029
【図２９】
0005089478.tif 000030
【図３０】
0005089478.tif 000031
【図３１】
0005089478.tif 000032
【図３２】
0005089478.tif 000033
【図３３】
0005089478.tif 000034
【図３４】
0005089478.tif 000035
【図３５】
0005089478.tif 000036
【図３６】
0005089478.tif 000037