適合格子細分化法(てきごうこうしさいぶんかほう、英語: Adaptive Mesh Refinement)は、アダプティブ計算における格子生成法の一つである。AMR法と呼ばれることが多く、解適合格子(Solution Adaptive Mesh/Grid)とも呼ばれる[1][2]数値流体力学の分野において、1984年にMarsha Bergerらによって提案された手法である[3]

特徴 編集

 
解適合格子法(AMR法)における格子細分化の様子

数値解析では多くの場合に空間格子(メッシュ)で離散化を行うが、その際に空間分解能の高さが計算結果の精度の善し悪しに大きく影響することが知られている。均等に細かい格子を用いると高い空間分解能で計算を行うことが出来るが、必要とされる計算機のメモリ量と計算時間は膨大となってしまう。そこで、計算領域内の計算解の勾配が急な場所(高い分解能つまり計算精度が必要な場所)に関して細かい格子を配置し、勾配が緩やかな場所には粗い格子を配置することで格子点分布を最適化し、限られた計算機リソース内で計算精度をできるだけ高めることができる。このように効率的に空間格子を細分化する方法が解適合格子法である。

長所と短所 編集

長所 編集

  • 少ない格子で高分解能を実現し,効率的に計算を行うことが可能である。
  • 並列化との相性が良く、大規模な計算にも適応が可能である。
  • 現象のスケール差が大きい場合に有効である。

短所 編集

  • プログラミングに手間がかかり、導入が困難である。
  • 隣接領域とデータ交換を行うガードセル(guard cell)を設ける都合上、問題設定によってはメモリ量が急増する場合がある。
  • 可視化ツールが少ない。

解適合格子の方式 編集

解適合格子法における格子の細分化にはいくつかの方式があり、代表的なものとして知られるのはセルベース方式ブロックベース方式である。それぞれの特徴を以下に示す。

 
セルベース方式とブロックベース方式による細分化のイメージ

セルベース方式 編集

  • 高分解能が必要な場所の格子を再帰的に細分化するため、形状適合性に優れている。
  • 物理現象の変化の激しい場所が時々刻々と移っていくような場合に、機能的に対応が可能である。
  • データ構造が複雑であり、一般的に隣接格子点のメモリ番地が不連続であるため、メモリ分散型の並列計算で効率がでにくい。

ブロックベース方式 編集

  • 高分解能が必要な箇所をブロック単位で細分化する。
  • 構造格子系で培われた利便性,高精度化スキームの適応性に優れている。
  • ブロック間は境界値のみでやりとりするためデータ構造が単純であり、並列化が容易である。
  • 各ブロックのメモリサイズの統制が若干困難である。

出典 編集

  1. ^ 適合格子細分化法”. 天文学辞典. 2019年6月3日閲覧。
  2. ^ 松本倫明(法政大学) (2012年8月8日). “適合格子細分化法(AMR法)による磁気流体シミュレーション - 宇宙磁気流体・プラズマシミュレーション サマースクール@千葉大学”. 千葉大学. 2019年6月3日閲覧。
  3. ^ Berger, Marsha J; Oliger, Joseph (1984-03-01). “Adaptive mesh refinement for hyperbolic partial differential equations”. Journal of Computational Physics 53 (3): 484–512. doi:10.1016/0021-9991(84)90073-1. ISSN 0021-9991. http://www.sciencedirect.com/science/article/pii/0021999184900731. 

参考文献 編集

  • 小林敏雄 編『数値流体力学ハンドブック』丸善、2003年。 
  • 松尾裕一、AMRによる流体解析について,数値計算タウンセミナー in 九州大学,2009,11,9.([1][リンク切れ]

関連項目 編集