(57)【要約】【課題】要求品質を満たすように六面体メッシュを自動修正する。【解決手段】解析対象の形状モデルデータと解析メッシュモデルの要求品質を含むメッシュ制御データを取り込んで解析対象の表面メッシュを生成する表面メッシュ生成手段１０３と、生成された表面メッシュに基づいて解析対象の内部メッシュを生成する内部メッシュ手段１０４と、表面メッシュの要素品質を算出する手段１０５と、算出された要素品質を要求品質に基づいて評価する品質判定手段１０６と、要求品質を満たさない表面メッシュの節点を品質が改善する方向に移動させるメッシュ修正手段１０７、１０８とを有して構成する。【選択図】  図１
2008107960.tif 000002
【特許請求の範囲】
【請求項１】
解析対象の形状モデルデータと解析メッシュモデルの要求品質を含むメッシュ制御データを取り込んで解析対象の表面メッシュを生成する表面メッシュ生成手段と、該表面メッシュ生成手段により生成された表面メッシュに基づいて解析対象の内部メッシュを生成する内部メッシュ手段と、前記表面メッシュ生成手段により生成された表面メッシュの品質を前記要求品質に基づいて評価する品質評価手段と、該品質評価手段の評価結果に基づいて前記要求品質を満たさない前記表面メッシュの節点を品質が改善する方向に移動させるメッシュ修正手段とを有してなる解析用メッシュ生成装置。
【請求項２】
請求項1において、
前記品質評価手段は、さらに、前記内部メッシュ手段により生成された内部メッシュの品質を前記要求品質に基づいて評価し、
前記メッシュ修正手段は、前記品質評価手段の評価結果に基づいて前記要求品質を満たさない前記内部メッシュの節点を品質が改善する方向に移動させることを特徴とする解析用メッシュ生成装置。
【請求項３】
請求項1又は２において、
前記メッシュ修正手段は、表面メッシュの品質を改善する方向の前記節点の移動方向及び移動量を算出し、移動後の節点の位置が前記形状モデルの外表面と外形線からの許容誤差範囲内に前記節点を移動することを特徴とする解析用メッシュ生成装置。
【請求項４】
請求項３において、
前記メッシュ修正手段は、前記メッシュの節点における内角が９０度から最も離れた節点を選択し、該選択された節点の内角が９０度に近づける方向に前記節点の移動方向及び移動量を算出することを特徴とする解析用メッシュ生成装置。
【請求項５】
請求項３において、
前記メッシュ修正手段は、表面メッシュの品質を改善する対象の前記節点が前記形状モデルの外表面上又は外形線上にあるときは、移動後の節点を前記形状モデルの外表面上又は外形線上に許容誤差範囲で移動することを特徴とする解析用メッシュ生成装置。
【請求項６】
請求項５において、
前記メッシュ修正手段は、表面メッシュの品質を改善する対象の前記節点が、前記形状モデルの外形線上の２つの節点の一つであるとき、該２つの節点を結ぶ線を回転、移動、又は拡大縮小することにより品質を改善する対象の前記節点を移動させ、これに合わせて前記２つの節点を結ぶ線上にある外表面上の節点を移動することを特徴とする解析用メッシュ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解析用メッシュ生成装置に係り、具体的には、ＣＡＤ（Computer Aded Design）データから要求品質を満たす六面体メッシュデータを自動生成する技術に関する。
【背景技術】
【０００２】
有限要素法（Finite Element Method）を用いた解析は、解析対象物を所定の形状を有する微小な要素のメッシュに分割し、メッシュ中の各要素に生じる物理量の変化を求めて構造解析、熱伝導解析、流体解析等において広く利用されている。例えば、解析用のメッシュは、ＣＡＤにより生成された解析対象の形状モデルの表面に四角形のメッシュを生成し、その四角メッシュに基づいて内部を分割して、解析用の六面体（立方体又は直方体）メッシュを生成することが知られている。
【０００３】
また、特許文献１に記載されているように、解析途中においてメッシュ中の要素につぶれが生じて変形したとき、変形を含めた解析対象物の表面を抽出し、抽出された表面を有する形状モデルの全体を対象として新たにメッシュを再生成して、解析演算を続行することが行われている。また、解析作業者の手動により、変形を生じたメッシュの節点を移動したり、必要部分における要素の再分割等、メッシュの局所的な形状操作を繰り返してメッシュを再生成する方法も提案されている。
【０００４】
【特許文献１】特開平９−３１１９５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献1を含め、従来技術においては、六面体メッシュの生成時あるいは再生成時に、要求品質を満たしていない歪などのあるメッシュを抽出して、自動的にメッシュを修正することについて配慮されていない。したがって、例えば、歪んだメッシュが生成された場合、その都度、用手法によりメッシュの節点移動などによって修正するのは、極めて煩雑であるという問題がある。
【０００６】
本発明が解決しようとする課題は、要求品質を満たすように六面体メッシュを自動修正できる解析用メッシュ生成装置を実現することにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、本発明の解析用メッシュ生成装置は、解析対象の形状モデルデータと解析メッシュモデルの要求品質を含むメッシュ制御データを取り込んで解析対象の表面メッシュを生成する表面メッシュ生成手段と、該表面メッシュ生成手段により生成された表面メッシュに基づいて解析対象の内部メッシュを生成する内部メッシュ手段と、前記表面メッシュ生成手段により生成された表面メッシュの品質を前記要求品質に基づいて評価するメッシュ品質評価手段と、該メッシュ品質評価手段の評価結果に基づいて前記要求品質を満たさない前記表面メッシュの節点を品質が改善する方向に移動させるメッシュ修正手段とを有して構成することを特徴とする。
【０００８】
すなわち、本発明によれば、一旦作成したメッシュの品質を要求品質に基づいて評価し、評価結果に基づいて表面メッシュの節点を品質を向上するように移動して修正することにより、要求品質を満たした歪等のないメッシュを自動修正できる。また、節点を移動させた後、境界要素法によりボリューム内部のメッシュ作成し、六面体メッシュを再生成する。これにより、内部メッシュの歪みを、表面上のメッシュを修正することによって一括して修正することが可能である。
【０００９】
ここで、メッシュの品質としては、メッシュの節点における内角、メッシュの歪み、メッシュの捻じれの度合い等である。内角は、メッシュを構成する節点と節点の成す角度であり、内角が９０度に近ければ、歪みの少ないメッシュであり、目標品質に近くなる。
【００１０】
なお、メッシュ修正手段は、メッシュを修正するにあたって、表面上の節点をどの方向へどれだけ移動させればメッシュの要求品質を満たすかを計算し、節点を移動させる。
【００１１】
この場合において、メッシュ品質手段は、さらに、内部メッシュ手段により生成された内部メッシュの品質を要求品質に基づいて評価し、メッシュ修正手段は、品質評価手段の評価結果に基づいて要求品質を満たさない内部メッシュの節点を品質が改善する方向に移動させるようにすることができる。これによれば、メッシュの品質を要求品質に基づいて評価し、評価結果に基づいて表面メッシュの節点を移動させて修正するとともに、内部メッシュを修正するようにしているから、手動でメッシュを修正することなく、目標の要求品質を満たすボリュームメッシュを生成することができる。
【００１２】
また、メッシュ修正手段は、表面メッシュの品質を改善する方向の節点の移動方向及び移動量を算出し、移動後の節点の位置が形状モデルの外表面と外形線からの許容範囲内に節点を移動するようにすることができる。
【００１３】
さらに、メッシュ修正手段は、メッシュの節点における内角が９０度から最も離れた節点を選択し、該選択された節点の内角が９０度に近づける方向に節点の移動方向及び移動量を算出することができる。この場合において、メッシュ修正手段は、表面メッシュの品質を改善する対象の節点が形状モデルの外表面上又は外形線上にあるときは、移動後の節点を形状モデルの外表面上又は外形線上に移動することが好ましい。さらに、メッシュ修正手段は、表面メッシュの品質を改善する対象の前記節点が、前記形状モデルの外形線上の２つの節点の一つであるとき、該２つの節点を結ぶ線を回転、移動、又は拡大縮小することにより品質を改善する対象の前記節点を移動させ、これに合わせて前記２つの節点を結ぶ線上にある外表面上の節点を移動することができる。
【発明の効果】
【００１４】
本発明によれば、要求品質を満たすように六面体メッシュを自動修正できる解析用メッシュ生成装置を実現することができる。
【発明を実施するための最良の形態】
【００１５】
以下、発明を実施するための最良の形態について図面を参照して説明する。
【００１６】
図１は、本発明の一実施の形態の解析用メッシュ生成装置の全体構成図である。図示のように、本実施形態の解析用メッシュ生成装置は、キーボードなどの入力手段、演算処理手段及びディスプレイ等からなるコンピュータ１００と、メッシュのメッシュ制御データである分割制御データが格納される記憶手段１０１と、解析対象物の形状モデルデータが格納される記憶手段１０２と、生成された六面体メッシュデータが格納される記憶手段１１０を備えて構成されている。
【００１７】
コンピュータ１００の演算処理手段には、プログラムを実行して実現される表面メッシュ生成部１０３と、内部メッシュ生成部１０４と、要素品質算出部１０５、品質判定部１０６、節点移動方向算出部１０７、表面メッシュ節点移動部１０８、六面体メッシュ出力部１０９を備えて構成されている。
【００１８】
形状モデルデータとしては、六面体メッシュ生成対象となるＣＡＤシステムなどで生成された解析対象物の形状を表したデータが入力されるようになっている。分割制御データは、メッシュを生成する際の要素寸法、要求品質に関するデータであり、外部から記憶手段１０１に入力設定される。要素寸法は、形状モデルデータに対して、例えば２．０ｍｍなどのサイズで要素分割を指定するための設定値であり、要求品質は、メッシュ要素の内角、歪み、捩じれの度合いを示したものである。内角は、メッシュ要素を構成する節点と節点の成す角度であり、内角が９０度に近ければ、歪みの少ないメッシュであり、要求品質に近くなる。
【００１９】
表面メッシュ生成部１０３では、形状モデルデータ、分割制御データを入力として、形状モデルデータを構成する外形線上及び表面上に複数の節点を配置して四角形の表面メッシュを生成する。内部メッシュ生成部１０４は、表面メッシュ生成部１０３で生成した表面メッシュに基づいて、形状ボリューム内部に外表面上の節点に沿って節点を配置して内部メッシュを作成することによって六面体メッシュを生成する。
【００２０】
この六面体メッシュの生成法は、周知の方法を適用でき、例えば、図２に示すように、まず、解析対象物の形状モデル（ａ）に基づいて、曲線を有する外形線や曲面を有する形状モデルの外表面を、直交３軸の軸線に平行な線分及び面分で近似した近似モデル（ｂ）を生成する。この近似モデルは、形状を示すソリッドモデルであり、形状を構成する外形線を３次元ｘ、ｙ、ｚ軸に対応するξ、η、ζ軸に平行な線に割当てたモデルであり、直方体のブロックから構成されている。
【００２１】
この近似モデルの外形線上及び面上に要求品質の対応するメッシュの大きさに合わせて等間隔に節点を配置し、各節点を直交３軸の軸線に平行な線分で結んで四角形の表面メッシュを作成する。さらに、表面メッシュに基づいて近似モデルの内部に内部メッシュを生成して、立方体又は直方体の六面体メッシュの写像モデル（ｃ）を生成する。
【００２２】
そして、写像モデルの各節点を形状モデル（ａ）の外形線上及び外表面上に写像し、写像された節点を直線の稜線で結んで解析用の六面体メッシュモデル（ｄ）を生成する。この写像の際に、形状モデル（ａ）と近似モデル（ｂ）の非相似形に起因して、六面体メッシュモデル（ｄ）のメッシュに歪みが生じ、要求品質を満たさないメッシュが生成される場合がある。
【００２３】
要素品質算出部１０５は、内部メッシュ生成部１０４で生成した六面体メッシュのメッシュ要素が、それぞれ要求品質を満たすかを判定するための要素品質を算出ないし評価する。ここで、メッシュ要素の評価方法としては、例えば、節点と節点の成す角度（四角形メッシュの４つの内角）、要素の歪みを示すディストーション(体積のヤコビアン)、要素の伸びを示すストレッチがある。このうち、ディストーションは、ヤコビアンが１のときは立方体の体積を示し、１から外れるにつれ、立方体から形状が離れることを評価する指標である。この他にも、メッシュの歪み、捩じれ、反りを示す評価値を要素品質算出のパラメータとして用いることが可能である。
【００２４】
品質判定部１０６は、要素品質算出部１０５で算出した内角、ディストーション、ストレッチの算出結果に基づいて、例えば１つの内角が閾値（例えば、１６０度）以上のメッシュが存在するか否か判定する。そして、閾値以上のメッシュ要素が存在する場合は、要求品質から外れているメッシュをディスプレイ等に表示してユーザヘ提示する。また、品質判定の結果、全てのメッシュが要求品質を満たしている場合、六面体メッシュデータを六面体メッシュ出力部１０９を介してディスプレイ等に表示してユーザヘ提示するとともに、六面体メッシュデータとして記憶手段１１０に格納する。
【００２５】
一方、品質判定部１０６における判定結果に、要求品質を満たさないメッシュが含まれている場合は、そのメッシュのデータが節点移動方向算出部１０７に出力される。節点移動方向算出部１０７は、要求品質を満たさないメッシュに対して、要求品質を改善するためにメッシュを構成する節点を移動させて、メッシュの内角、歪み、ストレッチ等を修正する。このとき、節点移動方向算出部１０７は、節点の移動方向と移動量を求める。節点の移動方向は、節点が形状モデルの外形線上に在る場合は、節点の移動先も外形線上とする。また、節点が形状モデルの外表面上にある場合は、節点の移動先も外表面上とする。このように、節点移動方向算出部１０７は、節点の移動の制約条件に従って、節点の移動方向と移動量を求めて、表面メッシュ節点移動部１０８に出力する。
【００２６】
表面メッシュ節点移動部１０８は、節点の移動方向と移動量に従って表面メッシュの節点を移動させる。これにより、表面メッシュの内角、歪み、ストレッチが要求品質を満たすように修正されて、修正された表面メッシュデータが内部メッシュ生成部１０４に戻される。
【００２７】
内部メッシュ生成部１０４は、修正された表面メッシュデータを入力として、再びボリューム内部の内部メッシュを修正した後、修正した六面体メッシュモデルを要素品質算出部１０５に出力する。そして、要素品質算出部１０５は修正された六面体メッシュモデルのメッシュ要素が、それぞれ要求品質を満たすかを判定するための要素品質を算出ないし評価し、その評価結果を品質判定部１０６に出力する。
【００２８】
このようにして、修正された六面体メッシュモデルのメッシュ要素が、品質判定部１０６の判定で要求品質を満たすまで、表面メッシュ節点の移動修正及び内部メッシュの修正を行い、最終的に生成された六面体メッシュデータが六面体メッシュ出力部１０９から記憶手段１１０に格納されるとともに、ディスプレイ等に表示してユーザヘ提示する。
【００２９】
このように構成される実施形態の詳細な処理動作を、図３、図４に示したフローチャート及び図５〜図９を参照して説明する。図３は、図１の構成図に対応する本実施形態のデータの流れを示したものである。形状モデルデータ２００と分割制御データ２０１のうちの形状データ２０２と要素寸法・要求品質データ２０３が、初期表面メッシュ生成部２０４にインプットされる。初期表面メッシュ生成部２０４では、図２に示した手順によって、形状データと要素寸法データから形状モデルの外表面上に四角形の表面メッシュを生成する。生成した四角形の表面メッシュデータは、初期表面メッシュデータ２０５として、内部メッシュ生成部２０６へ送信される。内部メッシュ生成部２０６では、四角形の表面メッシュデータから、境界要素法を用いて、ボリューム内部に節点を配置して内部メッシュを生成して六面体メッシュを生成する。
【００３０】
ここで、図２の写像モデルの表面上の節点に対応する形状モデル（ソリッドモデル）の外表面上の節点座標値は求めることができる。その節点座標値をもとにして、ボリューム内部の節点を内挿し、内部節点座標値の初期値を計算する。これは、外表面上節点を固定したあと、ボリューム内部の節点座標値を偏微分方程式の解として与える。偏微分方程式として、ラプラス方程式を用い、ソリッドモデル座標（ｘ、ｙ、ｚ）と写像モデル座標の直交３軸（ξ、η、ζ）で表すと、方程式は以下で示される。
【００３１】
【数１】
2008107960.tif 000003
写像を行おうとするソリッドモデルの外表面上の節点座標値は分かっているため、その座標を（ξ、η、ζ）の関数として与え、数１を解くと、ソリッドモデル内部の節点座標値が求まる。解が収束するまで繰り返し計算を行う。
【００３２】
このようにして、内部メッシュ生成部２０６は、六面体メッシュデータ２０７を出力として作成し、要素品質算出部２０８へ送信する。要素品質算出部２０８では、六面体メッシュの要素メッシュが分割制御データの要求品質を満たしているかどうか計算する。
【００３３】
要求品質は、六面体メッシュ要素を構成する節点と節点の内角が９０度から離れているかどうか、六面体メッシュ要素の体積が立方体のヤコビアン値（＝１）から離れているかどうか、六面体メッシュ要素が立方体から直方体に近いかどうかを評価するストレッチ、六面体メッシュ要素の捩じれ度合い、メッシュ要素の反りの度合いなどの評価指標を、要求品質の評価パラメータとして設定することが可能である。内角の計算式については、六面体メッシュ要素の節点の座標値から角度を計算する。また、ディストーションについては、下記の数２のヤコビアンにより六面体メッシュ要素の節点座標値から体積を計算して求める。
【００３４】
【数２】
2008107960.tif 000004
ストレッチについては、六面体メッシュ要素の節点座標値から、節点間距離を計算し、最長辺と最短辺の長さの比を計算することで求まる。アスペクト比は、六面体メッシュ要素の節点座標値から、縦と横の長さの比を計算する。
【００３５】
各六面体メッシュ要素について要求品質を満たすか否かの評価を行った後、品質評価結果２０９を品質判定２１０へ送る。品質判定２１０では、品質評価結果から、要素品質を改善する必要があるかどうかを判定する。判定結果として、要素品質を改善する必要がなければ、生成した六面体メッシュデータ２１５を、六面体メッシュ出力部２１７へ送り、ディスプレイなどに六面体メッシュの画像を表示してユーザヘ提供する。また、表示した六面体メッシュデータ２１５を記憶手段２１６に保存する。
【００３６】
一方、要素品質を改善する必要がある場合は、修正すべきメッシュ要素を示したデータ２１１を節点移動方向算出部２１２へ送信する。要素品質を改善する節点移動方向算出部２１２では、要求品質を満たさないメッシュ要素を構成する節点を移動させ、要求品質を満たすように修正する。この修正は、メッシュ要素の節点の移動方向と移動量を計算することにより行う。
【００３７】
ここで、節点の移動方向は、メッシュ要素を構成する節点のなす内角が９０度になる位置、ヤコビアンが１に近づく位置、節点間距離が要求品質の要素寸法に近くなる位置を満たす方向とする。この場合、メッシュ要素を構成する節点のなす内角が最も９０度から離れている節点を移動対象とし、他節点を固定して、１節点のみの移動方向と移動量のみを計算することで、要素品質を満たす理想的な節点位置を求めることが可能である。理想的な節点位置を求めた後、節点の移動方向・移動量計算結果２１３を表面メッシュ節点移動部２１４へ送信する。
【００３８】
表面メッシュ節点移動部２１４では、移動させるべき節点の移動方向と移動量に従って節点を移動させて、修正した表面メッシュデータ２１８を内部メッシュ生成部２０６へ出力する。内部メッシュ生成部２０６は、修正された表面メッシュデータ２１８からボリューム内部の内部メッシュを生成して、修正した六面体メッシュデータを要素品質算出部２０８に出力する。要素品質算出部２０８は、メッシュ要素の品質を算出し、品質判定２１０において目標とする要素品質を満たす要素が得られたかどうかを判定する。
【００３９】
図４のフローチャートは、六面体メッシュを生成した後、メッシュ要素の品質を算出し、メッシュ要素の品質が要求品質を満たしているかどうかを判定し、品質判定の結果に基づいて要素品質を改善するための節点の移動方向と移動量を算出し、その算出結果に基づいて表面メッシュの節点移動を行う処理の手順を示している。まず、形状モデルの内部メッシュを生成して六面体メッシュモデルとする（ステップ４００）。
【００４０】
次に、要素品質算出部２０８と品質判定２１０で、六面体メッシュモデルについてメッシュ要素の品質評価を行い、要求品質を満たさないメッシュ要素を見つけて、品質修正要素データ２１１を求める（ステップ４０１）。例えば、図５に示すように、形状モデル上に節点を配置して六面体メッシュを生成する場合、形状を構成する外形線５０５上に例えば節点５００〜５０４が等間隔に配置される。これらの節点５００〜５０４の隣接する節点間を稜線５０６で繋いでメッシュを生成する。このとき、外形線５０５が直線の場合は、稜線５０６と外形線５０５の成す角度であるメッシュ要素の内角は９０度に近くなるので、メッシュ要素に歪みは生じにくい。
【００４１】
一方、外形線５０５が自由曲線の場合、等間隔に配置された節点５００〜５０４と隣接する節点を繋ぐと、内角が９０度から外れたメッシュ要素が生成される。この場合は、節点を移動させて内角が９０度に近くなるように再配置する必要がある。ここで、内角は、メッシュ要素を構成する４つの節点の座標値から幾何学的に節点間のなす角度として求める。
【００４２】
また、図６に示す例の３次元の六面体メッシュの場合、外形線上に節点を等間隔で配置すると、外形線が直線の部分６０１は、節点と節点を結ぶ稜線は外形線に平行又は直角に近くなる。しかし、外形線が曲線の部分６０２は、節点と節点を結ぶ稜線のうち、外形線と直角にならない稜線が生じ、内角が９０度からはずれたメッシュが生成される。
【００４３】
図５の例のメッシュ要素の歪みを改善して要求品質を満たす処理について、図７を参照して説明する。図７において、外形線が曲線部分では、内角が９０度から外れたメッシュ要素に対して、内角が９０度に近づくように節点７００、７０３、７０４、７０５を移動させる。ここで、節点７０１、７０２の移動先の位置を求める際に、元々の節点が外形線上にあるため、移動先の点も外形線上に指定された許容誤差範囲内で移動させる必要がある。すなわち、形状モデルの外形線上又は外表面上に節点がある場合は、外形線又は外表面に沿って節点を移動させる。したがって、移動対象の節点が外形線又は外表面上に乗っているかどうかを確認し、節点が外形線上に乗っている場合は節点の内角が９０度に近づくように、外形線上に節点を移動させる。そして、節点を移動させた後、移動後の節点が外形線上又は外表面上に乗っていることを節点の座標で確認する。
【００４４】
図８を参照して、節点の移動方向・移動量を算出する方法の具体例を説明する。要求品質として、内角が９０度に近いことを要求している場合、改善すべきメッシュ要素として図８（ａ）に示す四角形メッシュが抽出される。この場合、四角形メッシュを構成する節点のうち、内角が９０度から最もずれている節点ｄを選択して、修正対象の節点とする（ステップ４０２）。修正対象の節点ｄに対して、同一のメッシュの他の３節点a、b、cの位置を固定し、節点ｄの移動先として内角が９０度に近い理想節点ｄ’を求める（ステップ４０４）。ここで、理想節点ｄ’を求める場合、他の３節点a、b、cのそれぞれの内角が９０度になるものとして固定し、理想節点ｄ’の座標位置を計算して、移動方向と移動量を求める。これにより、図８（ｂ）に示すような修正された表面メッシュが生成される。
【００４５】
理想節点ｄ’の座標は４つの節点の座標値から求める。節点の内積Ｆ（ａ、ｂ、ｃ、ｄ）を数３により求める。これにより、節点ａの内角の余弦ｃｏｓ∠ａは、数４になる。
【００４６】
【数３】
2008107960.tif 000005
【００４７】
【数４】
2008107960.tif 000006
内角が９０度から最も離れている節点を、数５により求める。
【００４８】
【数５】
2008107960.tif 000007
ここで、例えば、節点dがｍａｘ（ｃｏｓ∠ｄ）で１に近いとすると、節点ｄを移動対象節点として、節点a、b、cを固定した状態ｄ（ｃｏｓ∠ａ＝０、ｃｏｓ∠ｂ＝０、ｃｏｓ∠ｃ＝０）として、理想節点ｄ’の座標を計算する。３節点a、b、cの座標を固定した状態で、３節点の内角が９０度に近いとして計算することで、理想節点ｄ’の位置が求まる。
【００４９】
このとき、節点ｄが六面体メッシュモデルの形状モデルに対応する外表面上に乗っている場合は、図８（ｂ）の理想節点ｄ’の形状モデルにおける座標位置が外表面上にあるかどうかをチェックする。この場合、許容誤差範囲を設定しておき、その範囲内であれば、理想節点ｄ’が形状モデルの外表面上に乗っているものとして扱う。
【００５０】
また、節点ｄが六面体メッシュモデルの形状モデルに対応する外形線上に乗っている場合は、理想節点ｄ’も許容誤差範囲内で外形線上に乗っているかどうかをチェックする（ステップ４０５）。理想節点ｄ’が外表面上又は外形線上に乗っている場合は、理想節点ｄ’を移動先とする（ステップ４０６）。また、理想節点ｄ’が外表面上又は外形線上に乗っていない場合は、理想節点ｄ’に近い外表面又は外形線上に理想節点ｄ’’を配置して移動先とする（ステップ４０７）。この理想節点ｄ’’は、理想節点ｄ’から形状モデルの外形線上に近い点を写像して計算により求める。
【００５１】
このようにして、節点移動方向算出部２１２で要素品質を改善する理想節点ｄ’又はｄ’’を移動先の節点として設定し、移動方向・移動量計算結果２１３を表面メッシュ節点移動部２１４に送信する。
【００５２】
表面メッシュ節点移動部２１４では、移動方向・移動量計算結果２１３に従って節点を移動させた後、例えば節点の移動により他のメッシュ要素との干渉が発生するか否か干渉チェックを行う（ステップ４１１）。本実施形態の内角に基づく節点の移動法によれば、干渉は起きないと思われるので、この干渉チェックは省略できる。このようにして修正された表面メッシュに基づいて、境界要素法でボリューム内部に節点を配置し（ステップ４１２）、六面体メッシュを生成する（ステップ４１３）。
【００５３】
図９を参照して、外表面上の節点の移動法を説明する。写像モデル９０２の外形線のメッシュ要素がそれぞれ直交する境界部分の節点ａ’、ｂ’を参照し、節点ａ’、ｂ’に対応する六面体メッシュモデル９０１のメッシュ要素の節点Ａ、Bを求める。そして、六面体メッシュモデル９０１の外形線上にある節点BをＢ’へ移動させる。ここで、写像モデル９０２の直交する境界部分の節点ａ’、ｂ’は六面体メッシュモデル９０１の外形線上にある。六面体メッシュモデル９０１の節点を移動させることにより、六面体メッシュモデル９０１の外表面上の節点も一緒に移動するから、メッシュ要素の一括修正が可能である。
【００５４】
この場合、節点ＢをＢ’へ移動させるのに伴い、外表面上の節点C、Dも移動することになるので、節点Ｃ、Ｄを合わせて移動させて節点C’、Ｄ’の位置を決定する。つまり、節点Ａ、Ｂを結ぶ線を検索し稜線ＡＢを稜線ＡＢ’に移動させて、外表面上の節点の移動方向と移動量を決定する。
【００５５】
この稜線の移動法は、稜線ＡＢ、稜線ＡＢ’のベクトルを計算し、アフィン変換（回転、移動、伸縮）を行うことで稜線の移動方向と移動量とを求め、節点C、Dに対応する節点C’、Ｄ’の位置を決定する。
【００５６】
つまり、表面メッシュの品質を改善する対象の節点が、形状モデルの外形線上の２つの節点の一つであるとき、その２つの節点を結ぶ線を回転、移動、又は拡大縮小することにより品質を改善する対象の節点を移動させ、これに合わせて２つの節点を結ぶ線上にある外表面上の節点を移動する。
【００５７】
図１０に、六面体メッシュモデルをユーザヘ提示するディスプレイ画面１０００の一例を示す。画面１０００の第１の領域１００２には、形状モデル１００１が表示される。つまり、形状モデル読込ボタン１００３を押すと、形状モデル１００１が画面に表示される。形状モデルデータを読み込んだ後、要求品質入力ボタン１００４を押すと、要素寸法、要素品質に係るパラメータ値を設定することが可能である。要素寸法を設定した後、六面体メッシュ生成ボタン１００５を押すと、形状モデル１００１に対して、六面体メッシュモデルを生成する。
【００５８】
図１１は、生成した六面体メッシュをディスプレイ画面１０００に表示する画面の一例であり、領域１１０１に六面体メッシュモデルの画像１１０２をユーザヘ提示する。このとき、ユーザは品質判定ボタン１１０３を押すと、要素品質を満たすメッシュと満たさないメッシュを、図１２の領域１２００に示すように、品質判定結果に基づいて、要素品質を満たさないメッシュ要素１２０１を強調表示などにより、識別可能に表示する。また、図１２のデータ保存ボタン１１０４を押すと、生成した六面体メッシュモデルデータを保存する。
【００５９】
目標要素品質を満たさないメッシュが存在する場合、ユーザがメッシュ修正ボタン１２０２を押すと、要素品質を満たさないメッシュの表面メッシュの節点を移動し、境界要素法を用いて内部メッシュを生成し、修正された六面体メッシュを再生成する。このようにして修正された六面体メッシュは、図１３に示すように、領域１３００に修正された六面体メッシュモデル１３０１が表示される。この修正された六面体メッシュモデル１３０１について、品質判定ボタン１３０２を押すと、再度メッシュ要素の品質チェックが行われる。また、データ保存ボタン１３０３を押すと、修正された六面体メッシュモデル１３０１を記憶手段に保存する。
【００６０】
以上説明したように、本実施形態によれば、一旦作成したメッシュの品質を要求品質に基づいて評価し、評価結果に基づいて表面メッシュの節点を品質を向上するように移動して修正することにより、要求品質を満たした歪等のないメッシュを自動修正できる。
【００６１】
また、節点を移動させた後、境界要素法によりボリューム内部のメッシュ作成し、六面体メッシュを再生成しているから、内部メッシュの歪みを表面上のメッシュを修正することによって一括して修正することが可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施の形態の解析用メッシュ生成装置の全体構成図である。
【図２】六面体メッシュの生成法の一実施形態を説明する図である。
【図３】図１の実施形態におけるデータの流れを示したものである。
【図４】図１の実施形態における主要部の処理の流れを示したものである。
【図５】形状モデル上に節点を配置して生成された六面体メッシュの品質の評価法を説明する図である。
【図６】３次元の六面体メッシュの場合の要素品質の評価法を説明する図である。
【図７】六面体メッシュの品質を改善する方法を説明する図である。
【図８】品質を改善する節点移動方向と移動量の算出方法を説明する図である。
【図９】品質を改善する外表面上の節点移動方向と移動量の算出方法を説明する図である。
【図１０】本実施形態の操作画面の一例を示す図であり、解析用メッシュの生成対象の形状モデルの表示例である。
【図１１】本実施形態の操作画面の一例を示す図であり、生成された六面体メッシュモデルの表示例である。
【図１２】本実施形態の操作画面の一例を示す図であり、生成された六面体メッシュモデルの要求品質を満たさないメッシュを強調表示して示す表示例である。
【図１３】本実施形態の操作画面の一例を示す図であり、要求品質を満たさないメッシュを修正して生成された六面体メッシュモデルの表示例である。
【符号の説明】
【００６３】
１００  コンピュータ
１０１、１０２、１１０  記憶手段
１０３  表面メッシュ生成部
１０４  内部メッシュ生成部
１０５  要素品質算出部
１０６  品質判定部
１０７  節点移動方向算出部
１０８  表面メッシュ節点移動部
１０９  六面体メッシュ出力部
【図１】
2008107960.tif 000008
【図２】
2008107960.tif 000009
【図３】
2008107960.tif 000010
【図４】
2008107960.tif 000011
【図５】
2008107960.tif 000012
【図６】
2008107960.tif 000013
【図７】
2008107960.tif 000014
【図８】
2008107960.tif 000015
【図９】
2008107960.tif 000016
【図１０】
2008107960.tif 000017
【図１１】
2008107960.tif 000018
【図１２】
2008107960.tif 000019
【図１３】
2008107960.tif 000020