コード開発日記

 最近の研究はひたすらコード書いてます。もちろん他のシミュレーションも走らせてますが、結果の解析は後回しにしています。本当はやらないといけないのだが。

 今週、flux-CT methodの導入部分が出来た。これでコードの必要な部分のほとんどが出来上がった。今はテスト計算フェイズに入っている。このフェイズではRHD/RMHDの基本的なテスト計算(ショックチューブ問題など)をして、計算精度の確認とコードのバグ取りを行うのである。

 始めて出来上がったコードを動かす瞬間は「動けー」なんて心の中で叫んでますが、一回でうまく行った試しが無い。必ずエラーが帰ってくる。一番厄介なのが、エラーが出ないのに計算が動かない場合。この場合はコードの中で何か間違った計算をしているのだが、どこに間違いがあるか探すのがかなりの苦労。ここ数日、これにほとんどの時間を費やしている。これはストレスが溜まる。

 一応私のコードは3次元コードなので1次元問題を3方向全てで行って、同じ計算が出ることを確認。さらに私のコードは異なった座標系(デカルト座標、円柱座標、球座標)での計算もできるのでこれらも問題なく動いていることを確認した。

 今は、このコードの限界をチェックしている。前のコードでも試したのだが、今のところ前のコード以上の成果が出てきている。特に光速に近い速度での計算限界が大分上がった。今のところローレンツ係数が20以上でも計算が安定して行えている。前のコードより改善が見られると新しくコードを作った甲斐があったというものだ。