(57)【要約】【課題】数百万から数千万要素規模の大規模解析メッシュを高速に生成する。【解決手段】大規模解析メッシュ生成プログラム１０２の形状表面３角形メッシュ生成部１０４は、メッシング対象形状の表面を目標要素寸法に従ってメッシュ分割して形状表面３角形メッシュを生成する。規則メッシュ生成部１０５は、メッシング対象形状を包含する直方体形状を仮定して、それを節点間距離が表面３角形メッシュとほぼ同一密度である６面体要素でメッシュ分割して規則メッシュを生成し、形状表面３角形メッシュの内部に位置する規則メッシュを４面体メッシュに分割する。そして、殻部メッシング領域抽出部１０６は、内部４面体メッシュと形状表面３角形メッシュとの間の殻状の空間を抽出する。殻部メッシュ生成部１０７は、殻状の空間を４面体メッシュで埋め尽くすことでメッシング対象形状全体の４面体メッシュを生成する。【選択図】図１
2008257591.tif 000002
【特許請求の範囲】
【請求項１】
計算機を用いて解析対象の解析をするための前処理として、前記解析対象の３次元形状モデルの解析メッシュを生成する解析メッシュ生成装置であって、
前記解析対象の３次元形状モデル内部の第１の部分には前記計算機により規則的な構造を有する４面体メッシュを配置し、
前記第１の部分以外であって、前記規則的な構造を有する４面体メッシュの表面と、前記３次元形状モデルの表面とで挟まれた第２の部分には前記計算機により逐次的に４面体メッシュを生成する
ことを特徴とする解析メッシュ生成装置。
【請求項２】
請求項１記載の解析メッシュ生成装置において、
前記解析対象の３次元形状モデルの表面を、前記計算機によりメッシュ生成時の平均的な節点間距離を示す目標要素寸法に従った３角形要素でメッシュ分割して表面３角形メッシュを生成する手段と、
前記解析対象の３次元形状モデルを包含する直方体形状を、前記計算機により節点間距離が前記表面３角形メッシュの目標要素寸法と同一である６面体要素でメッシュ分割して６面体要素の規則メッシュを生成する手段と、
前記６面体要素の規則メッシュが前記表面３角形メッシュの内部にあるか外部にあるか又は交差しているかを、前記計算機により判定する手段と、
前記表面３角形メッシュの内部にあると判定された前記第１の部分には、前記６面体要素の規則メッシュを、前記計算機により４面体メッシュに分割して、規則的な構造を有する内部４面体メッシュを生成する手段と、
前記内部４面体メッシュと前記表面３角形メッシュとの間の殻状の前記第２の部分には、前記計算機により逐次的に４面体メッシュを生成する手段と、
を備えたことを特徴とする解析メッシュ生成装置。
【請求項３】
請求項２記載の解析メッシュ生成装置において、
前記表面３角形メッシュの内部の第１の部分には、予め作成して記憶部に記憶されている４面体メッシュを前記計算機により配置する
ことを特徴とする解析メッシュ生成装置。
【請求項４】
請求項２に記載の解析メッシュ生成装置において、
前記表面３角形メッシュの内部にあると判定された第１の部分に生成される内部４面体メッシュの節点と、前記表面３角形メッシュとの最低間隔を、前記表面３角形メッシュの目標要素寸法を元にして前記計算機により設定し、
前記最低間隔を制約条件として、前記内部４面体メッシュと前記表面３角形メッシュとの間の殻状の前記第２の部分に４面体メッシュを前記計算機により生成する
ことを特徴とする解析メッシュ生成装置。
【請求項５】
請求項２に記載の解析メッシュ生成装置において、
前記表面３角形メッシュの内部にあるとの判定は、前記表面３角形メッシュから前記表面３角形メッシュの目標要素寸法の０．５倍以上内側に離れた前記６面体要素の規則メッシュを含むものである
ことを特徴とする解析メッシュ生成装置。
【請求項６】
請求項２に記載の解析メッシュ生成装置において、
前記表面３角形メッシュと交差しているとの判定は、前記表面３角形メッシュを包含する３次元ボックスであって３次元方向に前記表面３角形メッシュの目標要素寸法だけ大きいものの内部に、前記６面体要素を構成する８節点のうちのいずれかの節点が含まれる前記６面体要素の規則メッシュを含むものである
ことを特徴とする解析メッシュ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機を用いて製品の設計開発支援を行うＣＡＥ（Computer Aided Engineering）技術に属し、特に、大規模解析メッシュを高速生成するための解析メッシュ生成装置に関するものである。
【背景技術】
【０００２】
スーパーコンピュータやＰＣ（Personal Computer）クラスタ等の解析シミュレーション計算機環境の高度化により、製品丸ごと解析やマルチフィジックス解析への期待が高まっている。これに伴い、数千万から億クラスの解析メッシュの生成が必須になっており、大規模メッシュ生成時におけるメッシュ生成時間をいかに抑えるかが課題である。
【０００３】
３次元形状の解析メッシュを自動生成する方法としては、デローニ法、アドバンシング・フロント法、八分木法等がよく知られている（非特許文献１参照）。すなわち、デローニ法は解析対象を包含する直方体をまず作って、これを対角線で割った５つのテトラをスタートとする。
【０００４】
そして、予め、表面や内部に生成した節点群の中から一点を選んで、この節点を含むボロノイ多角形を作ってメッシュを再分割する。再分割されたメッシュは、同じように一点ずつ選んで再分割を繰り返した後、最初のダミー点が削除される。
【０００５】
また、アドバンシング・フロント法は、既に生成された要素と干渉をしないように、基面と要素寸法だけ離れた節点を結び、逐次要素生成を行うものである。また、八分木法は、領域を包含する６面体において、８つの６面体に分割する方法である。この八分木法では、分割された各６面体をそれぞれ８つに分割する。以後各６面体のうち、境界面を含む６面体のみを再分割することを繰り返す。
【０００６】
また、賽の目状にメッシュ分割するボクセルメッシュはそれに特化した解析プログラムで用いられる。また、ボクセルメッシュや八分木法で用いられる直交メッシュにおいて、形状表面近傍に現れる微細な辺や面を除去するために、隣接する内部節点を形状表面に移動する方法が提案されている（特許文献１参照）。
【特許文献１】特開平７−３３４５４１  「数値解析用要素作成システム」
【非特許文献１】ISBN:9781903398005 “Mesh Generation”
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来方法では大規模メッシュの生成は可能であるが、メッシュ生成に時間が掛かるため、大規模解析メッシュの高速生成が難しい。
また、特許文献１に記載の技術のように、ボクセルメッシュは短時間で生成できるが、表面が滑らかではなく、解析適用範囲が限られるという不都合が生じてしまう。
【０００８】
また、ボクセルメッシュや八分木法のような直交メッシュにおいて、表面の凹凸を無くして、形状境界に沿うように節点を移動させる方法では、形状表面近傍のメッシュがいびつになる可能性がある。
【０００９】
そこで、本発明は、品質の良い大規模メッシュの高速生成を可能とする解析メッシュ生成装置の提供を目的とするものである。
【課題を解決するための手段】
【００１０】
本発明は、上記目的を達成するために、本発明の解析メッシュ生成装置は、計算機を用いて解析対象の解析をするための前処理として、解析対象の３次元形状モデルの解析メッシュを生成する解析メッシュ生成装置に適用される。
【００１１】
すなわち、解析対象の３次元形状モデル内部の表面近傍以外の第１の部分には計算機により規則的な構造を有する４面体メッシュを配置し、第１の部分以外であって、規則的な構造を有する４面体メッシュの表面と、３次元形状モデルの表面とで挟まれた第２の部分には計算機により逐次的に４面体メッシュを生成する。
【００１２】
本発明では、ボクセル状の４面体の規則メッシュを解析対象形状モデルの内部に配置し、形状表面と規則メッシュとの間にできる隙間部分のみを逐次メッシュ生成することにより大規模メッシュを高速に生成できる。
【００１３】
手順としては、まずメッシング対象形状の表面を目標要素寸法に従ってメッシュ分割して形状表面３角形メッシュを生成する。次に、メッシング対象形状を包含する直方体形状を仮定して、それを節点間距離が表面３角形メッシュとほぼ同一密度である６面体要素でメッシュ分割して規則メッシュを生成する。
【００１４】
そして、形状表面３角形メッシュの内部に位置する規則メッシュを４面体メッシュに分割する。さらに、内部４面体メッシュと形状表面３角形メッシュとの間の殻状の空間を４面体メッシュで埋め尽くすことでメッシング対象形状全体の４面体メッシュを生成する。
【００１５】
ここで、形状モデルの内部に配置するメッシュは規則メッシュでなくとも良い。すなわち、形状表面３角形メッシュに、予め作成しておいた４面体メッシュを当て嵌めて、内部メッシュとして利用すれば規則メッシュの場合と同様のことができる。なお、形状境界と内部メッシュとの間に最低でも目標要素寸法の１／２程度の距離の空間を設けることにより、表面近傍においても品質の良いメッシュが生成できる。
【発明の効果】
【００１６】
本発明によれば、逐次的にメッシュの生成を行うのは、殻状の隙間部分のメッシングだけですむのでメッシング対象領域が極めて小さくなる。これにより、メッシング時間を大幅に短縮することができる。具体的には、モデルによるが１／５以下の短縮効果があることが分かっている。
【００１７】
また、この規則メッシュ部分は実際には表面のみのデータをメモリに保持すればよく、メッシュ生成時の必要メモリサイズを小さくすることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の一実施の形態を、図１〜１１を参照して説明する。
図１は、本実施の形態例の大規模解析メッシュ生成装置の構成例を示す模式図である。
図１に示す大規模解析メッシュ生成装置は、計算機１０１と大規模解析メッシュ生成プログラム１０２で構成されている。計算機１０１は演算装置、記憶装置、キーボードやディスプレイ等の入出力装置、外部記憶装置１１０等から構成されている。
【００１９】
また、大規模解析メッシュ生成プログラム１０２は、形状モデル読み込み部１０３、形状表面３角形メッシュ生成部１０４、規則メッシュ生成部１０５、殻部メッシング領域抽出部１０６、殻部メッシュ生成部１０７、メッシュリファイン部１０８、メッシュ出力部１０９から構成されている。
【００２０】
形状モデル読み込み部１０３では、３次元ＣＡＤ（Computer Aided Design）等で作成された解析対象の形状モデルを計算機の記憶装置上に読み込む処理を行う。形状表面３角形メッシュ生成部１０４では、４面体の解析メッシュを生成する前段階として、解析対象形状モデルの表面を３角形メッシュで分割する。
【００２１】
規則メッシュ生成部１０５では、形状表面３角形メッシュの内側に規則的な構造を有する４面体メッシュを配置する。殻部メッシング領域抽出部１０６では、規則メッシュ表面の３角形を検索して取り出し、その規則メッシュ表面３角形と、形状表面３角形メッシュとで挟まれた空間を抽出する。この殻部メッシング領域抽出部１０６により抽出された空間を本実施の形態例においては「殻部」と呼ぶ。
【００２２】
殻部メッシュ生成部１０７は、既知の４面体メッシュ生成手法（デローニ法、アドバンシング・フロント法等）により、殻部に４面体メッシュを生成する。メッシュリファイン部１０８は、解析に適さないメッシュがあればそれを修正する処理を行うものである。メッシュ出力部１０９は、最終的に完成した解析メッシュを外部記憶装置に出力するものである。以下、形状表面３角形メッシュ生成から殻部メッシュ作成までの手順の詳細を示す。
【００２３】
図２は、図１の１０２で示した大規模解析メッシュ生成プログラムの本実施の形態に関わる部分の処理内容を示したものである。ステップＳ２０１は、形状モデル読み込み処理である。すなわち、解析メッシュ生成対象の形状モデルを３次元ＣＡＤ等を使用して別途作成しておき、それを入力データとする。ステップＳ２０２は、メッシング対象形状の表面を計算機１０１により目標要素寸法に従った３角形要素でメッシュ分割して形状表面３角形メッシュを生成する処理である。
【００２４】
４面体メッシュを生成するために、まず形状モデルの表面を３角形メッシュで分割する。３角形メッシュを生成する手法は、４面体と同様にデローニ法やアドバンシング・フロント法等を用いる。目標要素寸法とは、メッシュ生成時における平均的な節点間距離（要素の辺長）であり、メッシュ規模、すなわち解析時間と解析精度を左右する重要なファクタである。
【００２５】
ステップＳ２０５は、メッシング対象形状を包含する直方体形状を、計算機１０１により６面体要素の辺長が表面三角形要素の辺長と同じになるようにメッシュ分割して規則メッシュを生成する処理である。このため、まず、ステップＳ２０３では、形状表面３角形メッシュを包含する最小の６面体を仮定する。
【００２６】
これは、形状表面３角形メッシュのＸ座標の最小値Ｘｍｉｎ、最大値Ｘｍａｘ、Ｙ座標の最小値Ｙｍｉｎ、最大値Ｙｍａｘ、Ｚ座標の最小値Ｚｍｉｎ、最大値Ｚｍａｘをそれぞれ調べ、それらの座標値から６面体の８頂点を下記の数１の通り定義する。
【００２７】
［数１］
頂点１：（Ｘｍｉｎ、Ｙｍｉｎ、Ｚｍｉｎ）
頂点２：（Ｘｍａｘ、Ｙｍｉｎ、Ｚｍｉｎ）
頂点３：（Ｘｍａｘ、Ｙｍａｘ、Ｚｍｉｎ）
頂点４：（Ｘｍｉｎ、Ｙｍａｘ、Ｚｍｉｎ）
頂点５：（Ｘｍｉｎ、Ｙｍｉｎ、Ｚｍａｘ）
頂点６：（Ｘｍａｘ、Ｙｍｉｎ、Ｚｍａｘ）
頂点７：（Ｘｍａｘ、Ｙｍａｘ、Ｚｍａｘ）
頂点８：（Ｘｍｉｎ、Ｙｍａｘ、Ｚｍａｘ）
【００２８】
そして、ステップＳ２０４では、表面３角形メッシュの１辺の長さの平均値を求めて、この長さで上記の６面体の縦、横、高さ方向長さを割って６面体の分割数（四捨五入して整数化したもの）を決める。この分割数で６面体を分割して、６面体要素から成る規則メッシュを生成する。
【００２９】
ステップＳ２１２は、形状表面３角形の内部にある６面体規則メッシュを４面体メッシュに分割する処理である。このため、一旦、ステップＳ２０６で、全ての６面体について表面３角形内外の検査が終了したか否かを判断する。判断ステップＳ２０６で全ての６面体について表面３角形内外の検査が終了していないときは、ステップＳ２０７に移行する。
【００３０】
そして、まず、ステップＳ２０７で、ある６面体要素は形状表面３角形のどこにあるかを判断する。すなわち、規則メッシュが形状表面３角形メッシュの内部にあるか外部にあるか、あるいは交差しているかを計算機１０１により判定する。
【００３１】
形状表面３角形メッシュは閉じた空間になっている。このため、その内部に６面体要素の８節点が全て入っていれば「内部」（内側）であると判定し、逆に８節点全てが表面３角形メッシュ内に入っていなければ「外部」（外側）であると判定する。
【００３２】
判断ステップＳ２０７で「内部」（内側）であると判定されたときは、さらにステップＳ２０９で表面近傍であるか否かを判断する。判断ステップＳ２０７で「外部」（外側）であると判定されたときは、ステップＳ２０８で検査中の要素を「外部」（外側）あると判定する。
【００３３】
判断ステップＳ２０９で表面近傍であるとき、ステップＳ２１１で検査中の要素を「交差」と判定する。すなわち、８節点のうち、何れかの節点が内部か３角形の面上であり、その他の節点が外部であるときは、「交差」と判断する。ただし、判断ステップＳ２０９で表面近傍でないとき、ステップＳ２１０で検査中の要素を「内部」と判定する。
【００３４】
すなわち、メッシュ品質を考慮して、表面３角形の極めて近傍に６面体要素の節点が存在すると、必然的に扁平な４面体が生成される。このため、「内部」と判断するために閾値を設けておくようにする。例えば、表面３角形から目標要素寸法の０．５倍（１／２）以上内側に離れたものを「内部」と判断する。これにより、表面３角形と内部メッシュとの間に不適切な狭部ができなくなるようにして、メッシュ品質を悪化させる要因を排除している。
【００３５】
ステップＳ２０８での「外部」（外側）判定、ステップＳ２１０での「内部」判定、ステップＳ２１１での「交差」判定の後に、判断ステップＳ２０６へ戻る。
ここで、内部判定の方法の詳細な処理を説明する。
【００３６】
まず、ある節点が形状表面３角形メッシュの内部にあるか外部にあるかの判定方法としては、以下の方法がとられる。すなわち、６面体要素を構成する８節点の内の何れかの節点を始点とする半無限直線を推定する。
【００３７】
この半無限直線と表面３角形メッシュとの交差回数が奇数回ならば、その節点は表面３角形メッシュの内部であると判定し、交差回数が０または偶数回ならその節点は表面３角形メッシュの外部と判定する。
【００３８】
残りの７節点についても同じ検査をして、全ての節点が内部と判定されれば、その６面体要素は表面３角形メッシュの内部ということになる。ここで暫定的に内部と判定した規則メッシュについてさらに次の判定を行う。
まず、ある３角形を構成する３節点をＰ１、Ｐ２、Ｐ３とし、その座標値をそれぞれ下記の数２のように仮定する。
【００３９】
［数２］
Ｐ１：（Ｘ１、Ｙ１、Ｚ１）
Ｐ２：（Ｘ２、Ｙ２、Ｚ２）
Ｐ３：（Ｘ３、Ｙ３、Ｚ３）
この３角形を包含する３次元のボックスの８頂点をＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６、Ｓ７、Ｓ８とする。それらの頂点の座標値は下記の数３のようになる。
【００４０】
［数３］
Ｓ１：（ＴＸｍｉｎ、ＴＹｍｉｎ、ＴＺｍｉｎ）
Ｓ２：（ＴＸｍａｘ、ＴＹｍｉｎ、ＴＺｍｉｎ）
Ｓ３：（ＴＸｍａｘ、ＴＹｍａｘ、ＴＺｍｉｎ）
Ｓ４：（ＴＸｍｉｎ、ＴＹｍａｘ、ＴＺｍｉｎ）
Ｓ５：（ＴＸｍｉｎ、ＴＹｍｉｎ、ＴＺｍａｘ）
Ｓ６：（ＴＸｍａｘ、ＴＹｍｉｎ、ＴＺｍａｘ）
Ｓ７：（ＴＸｍａｘ、ＴＹｍａｘ、ＴＺｍａｘ）
Ｓ８：（ＴＸｍｉｎ、ＴＹｍａｘ、ＴＺｍａｘ）
ただし、
ＴＸｍｉｎ＝Ｍｉｎ（Ｘ１、Ｘ２、Ｘ３）
ＴＸｍａｘ＝Ｍａｘ（Ｘ１、Ｘ２、Ｘ３）
ＴＹｍｉｎ＝Ｍｉｎ（Ｙ１、Ｙ２、Ｙ３）
ＴＹｍａｘ＝Ｍａｘ（Ｙ１、Ｙ２、Ｙ３）
ＴＺｍｉｎ＝Ｍｉｎ（Ｚ１、Ｚ２、Ｚ３）
ＴＺｍａｘ＝Ｍａｘ（Ｚ１、Ｚ２、Ｚ３）
とする。
【００４１】
そして、例えば、表面３角形から目標要素寸法の０．５倍（１／２）以上内側に離れたものを「内部」と判断する。このため、上記の３角形を包含する３次元のボックスよりＸ方向、Ｙ方向、Ｚ方向に目標要素寸法だけ大きい下記の数４の８節点Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８からなるボックスを仮定する。
そして、このボックスの内部に規則メッシュを構成する８節点の内の１つでも含まれれば、その規則メッシュは「交差」と判定する。ここで目標要素寸法をＴＳとする。
【００４２】
［数４］
Ｖ１：（ＴＸｍｉｎ−ＴＳ／２、ＴＹｍｉｎ−ＴＳ／２、ＴＺｍｉｎ−ＴＳ／２）
Ｖ２：（ＴＸｍａｘ＋ＴＳ／２、ＴＹｍｉｎ−ＴＳ／２、ＴＺｍｉｎ−ＴＳ／２）
Ｖ３：（ＴＸｍａｘ＋ＴＳ／２、ＴＹｍａｘ＋ＴＳ／２、ＴＺｍｉｎ−ＴＳ／２）
Ｖ４：（ＴＸｍｉｎ−ＴＳ／２、ＴＹｍａｘ＋ＴＳ／２、ＴＺｍｉｎ−ＴＳ／２）
Ｖ５：（ＴＸｍｉｎ−ＴＳ／２、ＴＹｍｉｎ−ＴＳ／２、ＴＺｍａｘ＋ＴＳ／２）
Ｖ６：（ＴＸｍａｘ＋ＴＳ／２、ＴＹｍｉｎ−ＴＳ／２、ＴＺｍａｘ＋ＴＳ／２）
Ｖ７：（ＴＸｍａｘ＋ＴＳ／２、ＴＹｍａｘ＋ＴＳ／２、ＴＺｍａｘ＋ＴＳ／２）
Ｖ８：（ＴＸｍｉｎ−ＴＳ／２、ＴＹｍａｘ＋ＴＳ／２、ＴＺｍａｘ＋ＴＳ／２）
【００４３】
なお、ここで内部か交差かの検査をした節点は、通常は複数の規則メッシュに属する。このため、一度でもこのような検査をした節点は、その結果を計算機１０１の内部のメモリに記憶しておくようにする。これにより、このメモリに記憶されている節点を含む規則メッシュについては、重複した計算をしなくて済むので、計算効率を上げることができる。
【００４４】
また、ここで生成した規則メッシュは、この後のステップＳ２１３〜ステップＳ２２０の４面体メッシュの逐次生成処理において、節点や要素の検索処理を高速化するためにも用いることができる。例えば、ある座標値近傍の節点を検索するという場合に、従来は全ての節点との距離計算が必要であった。
【００４５】
しかし、メモリに記憶されている節点を含む規則メッシュを使えば、その座標値を内包する６面体要素は自明である。このため、その６面体に隣接する別の６面体も自明であるので、検索したい節点がすぐに求まり、計算を高速化する効果がある。
【００４６】
そして、ステップＳ２１２では、６面体メッシュを６個の４面体メッシュに分割する。すなわち、判断ステップＳ２０７で形状表面３角形メッシュの内部（内側）にあると判定された６面体の規則メッシュを計算機１０１により４面体メッシュに分割する。これにより、規則的構造を有する内部４面体メッシュを生成する。
【００４７】
本実施の形態の特徴とする点は、４面体メッシュを生成することである。このため、最終的には６面体の規則メッシュを４面体に分割する必要がある。そこで、殻部のメッシュ生成のためには、規則メッシュ表面の３角形メッシュが必要になる。このため、ここで６面体の規則メッシュを４面体に分割する。
【００４８】
ここで、メモリを効率よく使用するためには、以下のような方法をとりうる。すなわち、６面体規則メッシュ表面の４角形を３角形に分割して、表面３角形メッシュだけを生成しておき、後から４面体に分割しても良い。
【００４９】
ステップＳ２１３は、殻部メッシング領域を抽出する処理である。すなわち、内部４面体メッシュと形状表面３角形メッシュとの間の殻状の空間（殻部）を殻部メッシング領域抽出部１０６により抽出する。この段階での規則メッシュは４面体であるので、その表面は３角形である。この規則メッシュの表面３角形と形状表面３角形メッシュとで挟まれた空間を殻部メッシング対象領域として定義する。
【００５０】
ステップＳ２１４では、４面体に属していない表面３角形、あるいは、２個の４面体に属していない内部３角形を検索する。すなわち、殻部メッシング対象領域で４面体の生成に使用できる内部３角形を検索する。
【００５１】
ステップＳ２１５では、ステップＳ２１４の検索条件を満たす３角形が存在するか否かを判断する。判断ステップＳ２１５でステップＳ２１４の検索条件を満たす３角形が存在するときは、判断ステップＳ２１６へ移行する。
【００５２】
判断ステップＳ２１６では、判断ステップＳ２１５で検索された３角形と既存の節点を使って品質の良い４面体が生成できるか否かを判断する。判断ステップＳ２１６で先に検索された３角形と既存の節点を使って品質の良い４面体が生成できるときは、ステップＳ２１７へ移行する。そして、ステップＳ２１７で、既存の節点を使って４面体を生成する。
【００５３】
判断ステップＳ２１６で先に検索された３角形と既存の節点を使って品質の良い４面体が生成できないときは、ステップＳ２１８へ移行する。そして、ステップＳ２１８で、節点を追加して４面体を生成する。
【００５４】
すなわち、ステップＳ２１７、ステップＳ２１８は、殻部メッシュ生成部１０７により殻部に４面体メッシュを生成する処理である。４面体メッシュ生成手法は、既知のデローニ法やアドバンシング・フロント法等を用いる。
【００５５】
デローニ法では、節点の勢力圏に応じて空間を分割したボロノイ図を用い、隣接したボロノイ多面体に属する節点同士を結んで４面体の辺を作成するようにする。アドバンシング・フロント法では、境界部分から内部に向かって逐次節点を発生させながら４面体要素を生成していくようにする。これらのメッシュ生成手法の詳細についてはここでは省略する。
【００５６】
ステップＳ２１７での既存の節点を使った４面体生成、Ｓ２１８での節点を追加した４面体生成の後に、判断ステップＳ２１５へ戻る。
ステップＳ２１９では、品質の悪い４面体が存在するか否かを判断する。この判断ステップＳ２１９で品質の悪い４面体が存在するときは、ステップＳ２２０で品質の悪い４面体メッシュを修正する。
【００５７】
すなわち、ステップＳ２２０はメッシュのリファイン処理である。ここでは、ストレッチやアスペクト比といったメッシュ品質指標を用いて、生成された４面体メッシュの品質を評価して、解析に適さない品質の悪いメッシュがあれば改善する。ストレッチとアスペクト比の計算方法については後で述べる。
【００５８】
品質の悪いメッシュの改善方法としては、節点間距離の平滑化（スムージング）や、扁平な要素を含む要素群を選択して節点の結合状態を組み替えて扁平な要素を除去する方法などを用いる。
【００５９】
ステップＳ２２０での品質の悪い４面体メッシュの修正の後に、判断ステップＳ２１９へ戻る。
最後に生成されたメッシュをステップＳ２２１で出力して処理を終了する。
【００６０】
以下、図２で示した手順を単純な形状モデルを使って図解する。図３〜図１０に示す形状モデル及びメッシュは２次元の平面状の多角形を示しているが、実際には、３次元の立体状の多面体である。
【００６１】
図３は、メッシュ生成対象の形状モデルの一例を示す図である。本実施の形態は、３次元形状モデルを対象とするものであるが、３次元モデルで図示すると非常に複雑になる。また、２次元モデルに対しても本実施の形態の基本的な処理は全く同じようにして適用することができる。
【００６２】
このため、便宜上、２次元のモデルで示すようにする。図３の３０１は形状モデルの境界線を表し、３０２はメッシュ分割した一部分を示す。このメッシュ分割３０２は、３次元においては図２で示したステップＳ２０２の表面３角形メッシュ生成に相当する。
【００６３】
図４は、表面３角形メッシュに規則メッシュを被せた状態を示す図である。
図３に示した表面３角形メッシュ分割した形状モデルに、図４の４０１で示す規則メッシュを被せる。規則メッシュの格子間隔は上述した図２で示したステップＳ２０４のとおり、表面３角形の辺の長さの平均値である。
【００６４】
ここでは、表面３角形生成処理と４面体生成処理を各々独立した処理とするために、表面３角形の辺の長さに平均値を用いているが、表面３角形を生成する際に用いた目標要素寸法値を用いても良い。
【００６５】
図５は、規則メッシュの形状内外を判定した結果を示す図である。
すなわち、図２で示したステップＳ２０７のとおり、規則メッシュが形状表面３角形メッシュの内部にあるか外部にあるか、あるいは交差しているかを判定した結果の例である。図５の５０１が外部の規則メッシュであり、５０３は内部の規則メッシュ、５０２は交差している規則メッシュを表している。
【００６６】
図３で示した形状モデルの境界線３０１に近接する規則メッシュは、もし内部にあっても交差と判定するようにしている。これは、メッシュの品質を考慮して、扁平なメッシュが生成されることを抑止するためである。
【００６７】
図６は、形状内に生成された規則メッシュを示す図である。
すなわち、図２で示したステップＳ２１２のとおり、図５において内部と判定された規則メッシュを３角形（３次元では４面体）に分割する例である。図６では１個の４角形を２つの３角形に分割しているが、３次元の場合であれば、１個の６面体を６個の４面体に分割する。
【００６８】
６面体は５個または６個の４面体に分割することができるが、ここでは、まず６面体を２つの３角柱に分割し、３角柱をそれぞれ３個ずつの４面体に分割することで、６面体を６個の４面体に分割している。
【００６９】
図７は、殻部メッシング領域を抽出した例を示す図である。
すなわち、図２で示したステップＳ２１３のとおり、殻部メッシング領域抽出部１０６により、形状表面３角形メッシュ７０１と規則メッシュ表面３角形７０２とで挟まれた殻部７０３を抽出した例である。
規則メッシュ表面３角形７０２は、規則メッシュの表面が３角形面で構成されている。従って、その規則メッシュの表面３角形面上に同一パターンの３角形メッシュを新たに作成する。
【００７０】
図８は、殻部メッシング領域をメッシュ分割している途中の例を示す図である。
図８で示すように、殻部メッシュ生成部１０７により、殻部に逐次的に４面体メッシュを生成する。図８はメッシング途中の図であるが、４面体メッシュ生成の方法はデローニ法やアドバンシング・フロント法を用いる。
【００７１】
図５あるいは図２で示したステップＳ２１２の説明で示したように、規則メッシュと表面３角形とは狭部ができないように１要素以上の間隔を空けている。殻部メッシング領域は、目標要素寸法の０．５倍〜１．５倍の隙間が適切な間隔である。
【００７２】
図２で示したステップＳ２１７のとおり、４面体の頂点には原則として既存の節点を使用するが、それだけでは要素品質を満足できない場合がある。４面体の要素品質はストレッチやアスペクト比といったメッシュ品質指標という尺度で評価する。
【００７３】
ストレッチというのは、４面体の内接球の半径と、４面体の最大辺長（４面体を構成する辺のうち、最も長い辺の長さ）との比を正規化したものである。アスペクト比というのは、４面体の最小辺長と最大辺長との比を正規化したものである。
【００７４】
既存の節点のみを使用することにより品質の悪いメッシュが生成される場合には、図２で示したステップＳ２１８のとおり、８０１に示すように品質の良い要素が生成される位置に節点を追加して４面体を生成する。
【００７５】
図９は、殻部に生成されたメッシュの例を示す図である。
すなわち、殻部メッシング領域に殻部メッシュが生成し終わった状態であり、図２で示した判断ステップＳ２１５のＮｏの分岐がこの状態に該当する。
【００７６】
図１０は、殻部メッシュと規則メッシュを融合させて完成したメッシュの例を示す図である。
すなわち、図１０で示すように、図９で生成された殻部メッシュ９０１に図６の６０１で示した規則メッシュを合わせて最終的な全体メッシュが完成する。図２で示したステップＳ２２１がこの状態に該当する。
【００７７】
図１１は、３次元形状におけるメッシュ生成例を示す図であり、図１１（ａ）は形状モデル、図１１（ｂ）はメッシュ生成結果、図１１（ｃ）は一部メッシュ非表示である。
すなわち、図１１は、実際の３次元の形状モデルでの生成例である。図１１（ａ）は３次元ＣＡＤを用いて作成した形状モデルであり、図１１（ｂ）はメッシュ生成結果である。
【００７８】
また、図１１（ｃ）は図１１（ｂ）の一部分の、例えば、表面中央のメッシュを非表示にして内部中央のメッシュが見えるようにしたものである。これにより、形状内部に配置した規則メッシュの配置の模様を確認することができる。
【００７９】
この例では内部メッシュに規則メッシュを使用したが、規則メッシュ以外の既存のメッシュを計算機１０１の内部のメモリに記憶しておいて内部メッシュとして用いても良い。その方法としては、球や直方体のようなプリミティブな形状に予め高品質な４面体メッシュを複数生成したものをメモリに記憶して用意しておく。
【００８０】
そして、それらを目標要素寸法が合うように拡大・縮小して表面３角形メッシュの内部に挿入しても良い。あるいは、予め十分大規模なメッシュを生成してメモリに記憶しておく。そして、表面３角形メッシュを包含するようにして内部メッシュ部分を抽出して使用すれば良い。
【００８１】
これにより、新規にメッシュを生成しなければならない領域が減らせるので、規則メッシュを使用した場合と同等のメッシュ生成時間短縮の効果がある。
【００８２】
なお、上述した本実施の形態例に限らず、本発明の要旨を逸脱しない限り、適宜変更しうることは言うまでもない。
【図面の簡単な説明】
【００８３】
【図１】本発明の一実施の形態による大規模解析メッシュ生成装置の構成例を示す模式図である。
【図２】プログラムの処理フローを示した図である。
【図３】メッシュ生成対象の形状モデルの一例を示す図である。
【図４】表面３角形メッシュに規則メッシュを被せた状態を示した図である。
【図５】規則メッシュの形状内外を判定した結果の例を示した図である。
【図６】形状内に生成された規則メッシュの例を示した図である。
【図７】殻部メッシング領域を抽出した例を示した図である。
【図８】殻部メッシング領域をメッシュ分割している途中の例を示した図である。
【図９】殻部に生成されたメッシュの例を示した図である。
【図１０】殻部メッシュと規則メッシュを融合させて完成したメッシュの例を示す図である。
【図１１】３次元形状におけるメッシュ生成例を示した図であり、図１１（ａ）は形状モデル、図１１（ｂ）はメッシュ生成、図１１（ｃ）は一部メッシュ非表示である。
【符号の説明】
【００８４】
１０１…計算機、１０２…大規模解析メッシュ生成プログラム、１０３…形状モデル読み込み部、１０４…形状表面３角形メッシュ生成部、１０５…規則メッシュ生成部、１０６…殻部メッシング領域抽出部、１０７…殻部メッシュ生成部、１０８…メッシュリファイン部、１０９…メッシュ出力部、１１０…外部記憶装置、Ｓ２０１…形状モデル読み込み処理、Ｓ２０２…形状表面３角形メッシュ生成処理、Ｓ２０５…６面体規則メッシュ生成処理、Ｓ２１２…形状表面３角形メッシュの内部にある６面体規則メッシュを４面体メッシュに分割する処理、Ｓ２１３…殻部メッシング領域抽出処理、Ｓ２１７、Ｓ２１８…殻部に４面体メッシュを生成する処理、Ｓ２２０…メッシュリファイン処理、Ｓ２２１…メッシュ出力処理、３０１…形状モデルの境界線、３０２…メッシュ分割した一部分、４０１…規則メッシュ、５０１…形状外部の規則メッシュ、５０２…形状と交差している規則メッシュ、５０３…形状内部の規則メッシュ、６０１…形状内部の分割後の規則メッシュ、７０１…形状表面３角形メッシュ、７０２…規則メッシュ表面３角形、７０３…殻部のメッシング対象領域、８０１…殻部メッシュに生成された節点、９０１…殻部メッシュ
【図１】
2008257591.tif 000003
【図２】
2008257591.tif 000004
【図３】
2008257591.tif 000005
【図４】
2008257591.tif 000006
【図５】
2008257591.tif 000007
【図６】
2008257591.tif 000008
【図７】
2008257591.tif 000009
【図８】
2008257591.tif 000010
【図９】
2008257591.tif 000011
【図１０】
2008257591.tif 000012
【図１１】
2008257591.tif 000013