Skip to main content
QUICK REVIEW

[論文レビュー] Efficient discontinuous Galerkin finite element methods via Bernstein polynomials

Robert C. Kirby|arXiv (Cornell University)|Apr 15, 2015
Advanced Numerical Methods in Computational Mathematics参考文献 25被引用数 4
ひとこと要約

本稿では、双曲型保存則に対する効率的な不連続ガラーキン(DG)有限要素法を、局所形状関数としてベルンシュタイン多項式を用いて提示する。要素質量行列の再帰的ブロック構造を活用することで、質量行列を含む線形系を解くための最適計算量アルゴリズムを構築し、O(n^{d+1})の計算量を達成するとともに、多項式次数10まで高い精度を維持する。

ABSTRACT

We consider the discontinuous Galerkin method for hyperbolic conservation laws, with some particular attention to the linear acoustic equation, using Bernstein polynomials as local bases. Adapting existing techniques leads to optimal-complexity computation of the element and boundary flux terms. The element mass matrix, however, requires special care. In particular, we give an explicit formula for its eigenvalues and exact characterization of the eigenspaces in terms of the Bernstein representation of orthogonal polynomials. We also show a fast algorithm for solving linear systems involving the element mass matrix to preserve the overall complexity of the DG method. Finally, we present numerical results investigating the accuracy of the mass inversion algorithms and the scaling of total run-time for the function evaluation needed in DG time-stepping.

研究の動機と目的

  • 高次不連続ガラーキン(DG)法における密行列の要素質量行列の逆行列計算という計算上のボトル neck を解消すること。
  • ベルンシュタイン多項式の幾何学的・代数的構造を活用し、DG項の最適計算量計算を可能にすること。
  • 質量行列を含む線形系を解く高速かつ高精度なアルゴリズムを構築し、全体のO(n^{d+1})の計算量を維持すること。
  • 実用的なDG時間積分シナリオにおける質量行列逆行列計算手法の精度と性能を調査すること。
  • 構造的テンソルベース手法とノードベースDG手法の間のギャップを、最適なアルゴリズム的計算量を持つ離散化に依存しない基底を用いることで埋めること。

提案手法

  • 単体要素上にベルンシュタイン多項式を局所有限要素基底として用い、次元的に再帰的なブロック構造を活用する。
  • Kirby(2011)の再帰的ブロック構造を応用し、定数係数質量行列を含む線形系を解くO(n^{d+1})のアルゴリズムを設計する。
  • 直交多項式のベルンシュタイン表現を用いて、質量行列の固有値および固有空間を特徴付ける。
  • 2次元および3次元において、低次元のコレスキー分解を再帰的に用いるブロックごとのコレスキー分解戦略を実装する。
  • 反復回数を固定(n+1回)とした共役勾配ソルバーを用い、精度および収束性をコレスキー法と比較する。
  • CythonおよびDOLFINを用いて高性能実装を行い、構造的メッシュ上でのタイミング測定を実施する。

実験結果

リサーチクエスチョン

  • RQ1ベルンシュタイン多項式は、双曲型保存則に対するDG項(質量行列逆行列を含む)の最適計算量計算を可能にするか?
  • RQ2ブロックごとの因子分解アルゴリズムは、直接的なコレスキー分解と比較して、DG質量行列を含む線形系を解く際にどの程度の精度を達成するか?
  • RQ3実際のメッシュおよび多項式次数における、ベルンシュタイン多項式に基づくソルバーを用いたDG関数評価の実際の実行時間スケーリングはどのようになるか?
  • RQ4反復回数を固定(n+1回)とした共役勾配法は、高次DGシミュレーションにおいて十分な精度に達するか?
  • RQ5質量行列の再帰的ブロック構造は、精度を損なわず、高性能かつ低計算量のDGソルバーを実現するためにどの程度の貢献を果たせるか?

主な発見

  • 提案されたブロックごとの因子分解アルゴリズムは、コレスキー分解と同等の相対的精度を達成し、多項式次数10まで少なくとも10桁の精度を維持する。
  • 相対残差許容誤差10^{-12}を設定した共役勾配ソルバーは、1次元、2次元、3次元のあらゆる空間次元でほぼ10桁の精度を達成する。
  • 正確にn+1回の反復に制限された場合、共役勾配法の精度は著しく低下し、特に高次多項式次数において顕著に顕在する。
  • タイミング結果から、32×32メッシュ上でのDG関数評価は、勾配が約1.7であることが示され、2次元における理論的O(n^3)の計算量と比較して、予想を上回る性能を示している。
  • ブロックアルゴリズムは、実装の複雑さを低減しながらも高い精度を維持しており、完全なコレスキー因子分解と比較して最小限の精度損失にとどまる。
  • 現在のアルゴリズムは計算量において最適であるが、実装が複雑であり、高性能ハードウェアに完全に最適化されていないため、さらなる最適化の余地がある。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。