乗車日記

自転車ときのこ

宇宙の大域構造の形成

以前に作った銀河の形成のプログラムでは不満な点が一つあった。宇宙は本来無限に続いて中心がないのに、このプログラムでは空間が限られているのでどうしても中心があり、そこが重力の中心になって物質が集まってくる。本来ならば、物質の初期配置の揺らぎに従って、空間の各所で物質の集積が生じ、それによって宇宙の大域構造が出来るべきだ。

  一週間ほど前、周期境界条件を導入することで無限に続く空間が出来るだろうことを思いついた。周期境界とは端と端がつながっている空間。これでどこかに中心が出来ることはない。しかし、周期境界などは仕事では日常茶飯事のように使っているのに、粒子シミュレーションでもそういう発想が使えることに気がついていなかった。

 それで昨日の晩と、今日の晩とで実装。処理が重くなったので、最近のMTBシミュレータで蓄積した最適化技術を適用しそこそこの速度で動くようにした。いくつかルーティンを省略したので、物質が集まりすぎると計算誤差がたまって爆発してしまう。しかし、超新星爆発のようにみえて楽しいので、そのまま残しておくことにする。