銀河と銀河をぶつけてみれば

--- 専用計算機による数値天文学の世界 ---

はじめに --- 数値天文学って何?

天文に限らず,「○○学」というと何かしら難しい気がしませんか

天文(に限らずいろんなこと)は趣味でやってるうちは楽しいのだけれど,いざそれを学問の対象にすると式だの定理だのとつまんないことがたくさんあって,どうも面白くない.僕自身,小学生の頃から天文に興味があったけれど,中学の時の「星の運動」とかいった勉強はつまらなかった記憶があります.そんなわけで一般の人には学問としての天文の何が面白いのかわからないのではないでしょうか.普通の,正しい人生を進むであろう人々には縁がないと思われる天文「学」の世界のほんの端っこを,ちょっと紹介してみましょう.

観測こそ天文屋の命綱

さて,天文学が他の自然科学(物理とか生物とか)と大きく違う点はなんでしょう?

僕が思うに,大きな違いの1つに「(基本的に)実験ができない」ということが挙げられるでしょう.地球のすぐそばで超新星爆発を起こしたり,実験室にブラックホールを作ったり.そんなことはできないし,できたところで地球がなくなってしまいます.気が遠くなるほど遠くで起こっている壮大な現象を,天文屋さんたちは「観測」して,そして正しいと思う「理論」を作って,宇宙を知っていこうとしているのです.

一口に「観測」といっても,その方法はいろいろ.眼で見える光(可視光)だけでなく,赤外線や電波,X線等の波長での観測もするし,望遠鏡も小さいのから大きいのまで,衛星から観測する事もよくあることなのです.

ところで,次のような銀河の写真を見たことはないでしょうか?これは「車輪銀河」と呼ばれる銀河の写真で,2つの銀河が衝突した結果このような形になったと考えられています.銀河同士の衝突という,とてつもなく雄大な出来事.それを目に見える形で再現する方法,そんな方法の1つが「数値天文学」なのです.

車輪銀河の画像

車輪銀河 --- 銀河同士の衝突によってできたと考えられている

(画像は http://www.aao.gov.au/images/captions/aatccd002.html より.オリジナルの原稿の画像がリンク切れのため,この画像はオリジナルとは違うものになっています.)

で,数値天文学って?

自然科学の研究の手段には,実験(天文の場合は先に述べたように観測)と理論の2つがあります.そして,理論の中でもコンピュータを使ってひたすら計算する分野,それが「計算機科学」です.(計算方法の改良やコンピュータの開発も含まれるけど.)

たとえば天文学の場合,ガスの流れや星の運動などをデータとして与え,あとは物理の法則にしたがってコンピュータに計算させれば,「きっとこんなことが起こっているんだろう」という結果が出てくるわけです.数値天文学とはすなわち,計算機による理論的な天文学のことなのです.

たとえば --- 銀河団はどのように進化するのか?

銀河団って?

星図を広げてみましょう.多くの星図では銀河は横長の楕円で描かれています.おとめ座からかみのけ座のあたりを見てみると,実に多くの銀河があります.このように,数十から数百個の銀河が集まっているものを「銀河団」と呼びます.おとめ座銀河団は巨大な銀河団で,1000個以上の銀河が含まれています.

おとめ座銀河団の画像

おとめ座銀河団

(画像はおとめ座銀河団について解説されたサイト(英語)より.他の画像もたくさん集められています.)

このような銀河団,いったいどのように進化してきたのでしょう?

コンピュータで銀河団を再現するのこと

何度も言うように,銀河団を使った実験などできるはずもありません.かといって,観測から進化を調べようとしても,100万年,1000万年といった時間がかかります.(観測で調べる時には,近くのものを新しいもの,遠くのものを昔のものと考えて歴史を組み立てます.)というわけで,その進化を直接追おうとしたらコンピュータに頼るしかないのです.なお,次に書くように手計算ではほぼ不可能です.

計算時間は莫大なり

銀河団はたくさんの銀河からできていて,1個1個の銀河には数十万から数千億もの数の星が含まれています.この星1個1個の様子を追えればかなり真実に近い結果が得られるでしょうが,そんなたくさんの粒子の運動を計算するととんでもなく時間がかかってしまいます.

話を簡単にするために,銀河や銀河団の進化は重力だけに支配されていると考えましょう.重力は2つの星の間がどんなに離れていてもはたらきます.(遠ければ遠いほど弱くはなるけど,とにかくはたらく.)星がAとBの2つしかなければ,AはBから受ける力だけを,逆にBはAから受ける力だけを計算すればよくて,これは簡単.ところが星が10個(A, B,..., J)になると,AはB, C,...,Jから受ける力を,BはA, C,...,Jから受ける力を,…JはA, B,..., Iから受ける力を,それぞれ計算しなければならなくなって,計算の手間はさっきの45倍.さらに星が1000億個にもなったときには…計算の手間は2つしかないときの実に約5,000,000,000,000,000,000,000倍!

N体計算の計算量が爆発的に増加することをを示す図

2個だけなら簡単だけど,数が増えると….

1回計算するだけでこんなに大変なのに,実際は時間の流れに沿って何度も何度も計算しなければいけないので,もっともっと大変です.どうあっても手計算はできないし,計算機を使うにしても時間がかかります.

時間を短くする工夫

計算時間を短くするにはどうすればいいのでしょうか.

  1. 粒子数を減らす

    当たり前のことながら,粒子数を減らせば計算時間は短くなります.だからといって減らしすぎると,正しく物理現象を追えない可能性があります.1つの銀河をどのくらいの粒子数で表現するか,その銀河を何個使って銀河団を表現するか,いろいろと試行錯誤が必要なのです.

  2. 計算機を速くする

    これまた当たり前のことながら,計算機が速くなれば計算時間は短縮されます.現在こういった計算のために用いられる計算機は,計算しかできない,したがって文字を表示することも音を鳴らすこともできない,まさに「計算のための」専用計算機です.ちなみに僕たちの研究室で開発されている専用計算機は「GRAPE」シリーズという名前です.専門的な用語の略語であると同時にAPPLE社も意識しているんだそうな.

  3. 計算方法を工夫する

    素直に全部の粒子からの力を計算するのではなくて,近くにある(影響の大きい)粒子からの力は正確に,遠くの(影響の小さい)粒子からの力はある程度近似的に,などとすることでも計算時間を短くすることができます.

そして銀河団はこうなった

実際に計算してみるとどうなるでしょうか.初期条件では,1つの銀河は512個の粒子で構成されていて,その銀河が128個あったことにします.つまり全部で65536個の粒子集団の運動の様子を調べているわけです.

シミュレーション開始時の粒子の分布図

t = 0(最初)の状態

「銀河をたった512個の粒子で表してもいいの?」と思うかもしれませんが,計算時間のことなどを考えるとこれだけの粒子数しか使えません.16000回の計算にかかった時間は約10時間,専用計算機でもこんなに時間がかかってしまうのです.

さて10時間の計算の後,銀河団は次のように進化しました.

シミュレーション終了時の粒子の分布図

t = 200(最後)の状態

中央にとても大きな銀河ができていますが,これは最初の銀河が運動しながらお互いに衝突や合体を繰り返し,できあがったものです.このような巨大な銀河は実際の銀河団でも観測されていて,たとえばおとめ座銀河団の場合,M 87という巨大な銀河が中心にあります.計算の結果から,「M 87のような銀河団中心の巨大な銀河はたくさんの銀河が集まってできたのではないか」と考えられるのではないでしょうか.

最後に --- 理論と観測との融合

銀河同士の衝突や合体という,おそらく宇宙でもっとも大規模な事件.それをコンピュータの画面の中に再現してしまう数値天文学ってすごいと思いませんか.確かな理論と計算機があれば,超新星の爆発もブラックホールの構造も,いろんなものが「見てきたように」見えてしまうのです.

一方で,確かに観測では細かいことまではなかなかわかりません.しかし,しっかりした理論を作ったり,その理論が正しいかどうかを判定したりするのは,すべて観測にかかっているのです.先の計算結果でも,進化にかかる時間が短すぎたり銀河の大きさが大きすぎたりしては,正しい結果とは言えないでしょう.観測結果と矛盾しないような初期条件を設定し,その上で得られる計算結果もまた観測結果と矛盾しないようにすることが大切なのです.(ときには理論で予想されたものが実際に観測された,なんてこともあるんだけどね.)

そして,観測の最大のメリット,それは「今しか見えないものを見ている」ということではないでしょうか.人類誕生よりも昔に宇宙の片隅で起きた出来事を,今,まさにこの瞬間に見ているということは,とても貴重で,幸運なことなのです.

将来,専用計算機はますます速くなり,もっとたくさんの粒子を扱うことができるようになると思います.そうすれば,銀河や銀河団がどのようにして生まれ,進化してきたのか,今よりもっと正確にわかるようになるでしょう.

その時コンピュータは僕たちにどんな宇宙を見せてくれるのでしょう?