next up previous
Next: 5 まとめと議論 Up: The Pseudoparticle Multipole Method Previous: 3 PM法

4 テスト計算

上の定式化に基づいた をFORTRAN で書かれたツリー法に 組み込んで、計算時間、計算精度の評価を行なってみた。まず、汎用スカラー 計算機での結果を示し、次に GRAPE-4 での結果を示す。

4.1 汎用計算機での結果

2に見込み角 と計算誤差の関係を示す。ここでは計算誤差は加速度 の相対誤差の2乗平均として定義される。これは時間積分の精度には直接つな がらないという意味であまりよい量ではないが、他の多くの論文でこれがもち いられているのでここではそれに従う。粒子分布は球のなかの一様分布で、粒 子数は 262,144 である。

  
図 2: 法での見込み角と計算精度の関係。上か ら従来のツリー法、

2からわかるように、次数が高いほど計算精度は上がる。計算精度の見込み角 への依存性は大雑把にいって の程度になる。計算量 と見込み角の関係を示したものが図3で、いうまでもなく が小さいほ ど、また次数が高いほど計算量は増える。なお、ここで計算量として書いてい るのは計算時間ではなく、ある粒子が力を受けている粒子(実粒子と疑似粒子 をあわせて)の個数の平均値である。

  
図 3: 法での見込み角と計算量の関係。線、シ ンボルの意味は図 2 と同じ。

さて、先に述べたように、必要な計算精度を決めれば最適な(計算量を最小にする)次数と見込み 角の組合せが存在しているはずである。これは、計算量と計算精度の関係を見 ればわかるので、それを図にしたものが図4である。要求する計算精度を上げて いくと、最適次数は上がっていくことがわかる。逆に、見込み角はほぼ一定の ままであることに注意して欲しい。

  
図 4: 法での計算量と計算精度の関係。線、シ ンボルの意味は図 2 と同じ。

なお、p=1 の場合はダイポールまで表現されていることになり、これは従来 のツリー法では重心だけを使っている場合に相当する。計算量は疑似粒子 を4個必要とするために4倍となっていて、この場合や、その次の p=2 の場 合(疑似粒子 12個が必要)については、汎用計算機で計算するかぎり従来の ツリー法に比べていいことはない。

4.2 GRAPE-4 での実装

GRAPE を使う場合の計算コードも、従来のものを少し手直しするだけで構成で きる。GRAPE を使う場合の基本的な考えは、ホストでツリーをたどっていくのをあるグ ループに対して行ない、それで出来た相互作用リストとグループの中の粒子の リストを GRAPE に送って力を計算してもらおうというものであった[7]。このた めに、一粒子あたりの計算量はグループの中の粒子の数の数倍程度増えている。 GRAPE が相対的に高速なので、この部分はあまり問題にならないわけである。 疑似粒子を使った場合でも、このGRAPE を使うために計算量が増えている分は 変わらないので、結局次数を上げてもそれほど計算量が増えないということが 期待できる。

計算精度、計算時間等の測定結果を図5に示す。粒子分布は前と同じであり、汎 用計算機は Alpha 21164 300 MHz (DEC Alphaserver 8400), GRAPE は GRAPE-4 ボード1枚(32 chip, 10 Gflops)である。上で期待したとおり、次 数を上げても、また見込み角を小さくしても汎用計算機の場合のようには計算 量が増えない。結果として、精度を上げるほど GRAPE を使うメリットは大き くなり、 程度の精度を要求するなら計算速度の差は 100倍近くに なる。GRAPE を使う場合には、もともと計算量が増えているということもあっ て疑似粒子法の計算量が多いという欠点が目立たなくなっていることがわかる。

  
図 5: 汎用計算機と GRAPE-4 での(左)見込み角と計算時間、(右)計算 時間と計算精度の関係。上は汎用計算機、下はGRAPE-4. シンボルの意味は図 2 と同じ。



Jun Makino
Wed Apr 14 20:49:22 JST 1999