2次元の階層メッシュを用いた高速なアダプティブ解析
Introduction
コンピュータグラフィックを作成する時に、3次元の対象物の詳細なメッシュを必要となることがしばしばある。
しかし、そのようなデータを扱うのは、とても時間がかかる作業である。
レンダリングを高速にする一つの方法には、level-of-detail (LOD)近似を用いた近似メッシュによって複雑なメッシュを置き換える方法がある。
LOD近似とは、対象が視点から近い時には、詳細なメッシュを用い、対象が遠ざかるにつれて、徐々に粗い近似メッシュで置き換えていく手法である。
LOD近似は、メッシュ簡略化法を用いて自動的に前処理計算がされている。効率的な保存と転送を行うために、メッシュの圧縮法[3,20]もまた開発されてきた。
Hugues Hoppeがprogressive mesh (PM)表現を紹介して、この新しいメッシュフォーマットによって、この問題に統一的な解答がもたらされた。
本研究は、この手法を有限要素法のアダプティブ解析に応用するものである。
アダプティブ法は、「事後誤差評価」と「誤差評価に基づく要素分割」が必要である。
要素分割は、従来では事後誤差評価が済むたびに、ゼロから頂点密度を再計算して、それを元に全体を再メッシュ化していた。
繰り返し計算を非常に沢山行うような解析では、このように全体を再メッシュ化するのは非効率である。
このような理由から、毎回全体を再メッシュするのではなく、前回のメッシュを利用できる手法が望まれている。
このような問題を解決するために、私達は、レンダリングで用いられてきたPM表現を用いた高速なリメッシング法を提案する。
まず、前処理として、解析形状全体を最も細かい要素サイズを持つ全体メッシュを生成する。このメッシュをマザーメッシュと呼ぶ。
このマザーメッシュに対して、プログレシブメッシュ化を行い、階層メッシュを生成する。
このメッシュのデータ構造を基にして、FEMを解き事後誤差評価を行う。
前処理には計算時間が多く掛かってしまうが、再メッシュの速さは非常に高速で殆ど時間を要しなくなる。
このようにして、本手法は多くの場合有効であり、特に、アダプティブ解析の収束が遅い解析や、長時間に渡る時間発展モデルを解く場合に力を発揮する。
Adaptive analysis
図1(a)は、Flowchart of Adaptive Analysisである。
事後誤差の値が与えられた最大許容誤差よりも大きければ、その値に基づいてリメッシングを行い、そうでなければ解析は終了となる。
図1(b)のあるように、我々の手法は、階層メッシュを生成するという前処理がある。
図1.Flowchart of adaptive analysis.
| (a) Classical method |
(b) Present method |
 |
 |
Hierarchical mesh
Edge collapses and vertex split
階層メッシュを生成するために、図2のような、edge collapseとvertex splitの二つの変換が用いられる。
edge collapseは一つの辺を潰して新しい頂点を生成する変換である。
反対に、vertex splitは、一つの頂点を引き裂いて前の辺に戻す変換である。
図2.Edge collapses and vertex split.
 |
Generation a hierarchical mesh
図2のような、edge collapseをマザーメッシュに対して繰り返し行うことによって、図3のような階層メッシュが生成される。
図3.Generation a hierarchical mesh.
 |
Mesh control
図3のような、階層メッシュを用いて、図4のようなアダプティブメッシュが非常に高速に生成される。
図4.Mesh control
 |
 |
Calculation result of Crack propagation
Tension loading
Model and boundary conditions.
 |
Adaptive mesh and Principal stress.(クリックすれば、別窓で大きな動画が見れます。)
 |
 |
Adaptive mesh and Error norm.(クリックすれば、別窓で大きな動画が見れます。)
 |
 |
Four point shear loading
Model and boundary conditions.
 |
Adaptive mesh and Principal stress.(クリックすれば、別窓で大きな動画が見れます。)
 |
 |
Adaptive mesh and Error norm.(クリックすれば、別窓で大きな動画が見れます。)
 |
 |