マルチグリッド法をだらだらとまとめる。

 旅行にずっと行っていたんだけど、そろそろ研究に戻ろうと思いまする。まず最初はマルチグリッド法を勉強する。

 とはいうものの、結構分からない。マルチグリッド法は、ポワソン方程式をとくための近似法であり、粗いグリッドので近似して、そのグリッドを細かくしていくことで精度を高める、というものだろう。最終的にはCUDAにのっけるつもりなので、ここのサイトを参考にしてまとめていく。

http://shatterednirvana.wordpress.com/2007/12/20/multigrid-methods-with-cuda/

 Red-Black Gauss Seidel法
 線形システム方程式をとく一番簡単な方法は、ヤコビ法、ガウス-ザイデル法、Red-Black ガウスザイデル法である。この中でも、Red-Black ガウスザイデル法が一番反復回数が少ない。さらに、CUDAに都合がよいことに、並列化しやすい。通常のガウスザイデル法では、すべての点が毎回更新される。これは並列計算にとってあまり賢い選択ではない。赤黒ガウスザイデル法では、まず奇数の点が更新され、次に偶数の点が更新される。更新は、となりの点の平均をとることでなされる。

 まぁ、まとめようと思ったんだけど
 この他はあまり有用な情報がなかったかな。っていうか、結局CUDAでやるよりCで実装した方が早い、みたいな結論になってて残念過ぎる。

 V cycleってなんなんだろうか
 もともと読んでた論文の中にマルチグリッド法と一緒にVcycleの言及があった。これが全然理解できない…理解しとかないと前に進めない気がするので、一応やっとこう。

 ガウス・ザイデル方って何よ。
 ここをはっきりさせておかないと始まらない。といっても、結局は連立方程式をとくだけなので深入りはする必要はない(したくない。。。)。漸化式はここにのってます。

 http://www.akita-nct.ac.jp/~yamamoto/lecture/2006/5E/Linear_eauations/concrete_relax_html/node2.html


 もうやめ。実装進めるわ、今日は。