ようやく長い夏休みモードも終わりの予感です。
そろそろ本腰入れて研究を再開せねば。
大気散逸の計算が、Tianらの環境で計算すると発散してうまくいきません。
タイムステップの問題か、人工粘性の問題か、初期条件の問題か、そのあたりだとは思うのですが、やや複雑な計算をやっていて問題を特定するのが面倒なので、しばらく現実逃避してました。
でもこのまま果報を寝て待つわけにもいかないので、もう一度 等温→ポリトロープ→断熱 の簡単な場合でTianらの環境での計算をやってみることにしました。
結果。
うん、とりあえずタイムステップの取り方に問題がありそうです。
3つの移流方程式をそれぞれ分離して解かないといけないのですが、それら全てを発散させないためのタイムステップをきちんと取ることができていなかった模様。
また、途中でCFL条件を決めるための速度そのものが大きく変化してしまって、その後で他の物理量を決めようとするとCFL条件を満たさない状態で計算をするようなことになっていた可能性も出てきました。
ちょっとプログラムを書き直す必要がありそうです。
あと、今までは単純な風上差分で計算していましたが、やはりTianらに倣ってLax-Friedrichs法で解いておいた方が後々よいかもしれません。
(もしくはもう一度CIP法にチャレンジするか・・・)
う〜ん、問題解決までまだもうちょっとかかりそうだな。
今週中に1成分の場合を完全に終わらせたいなあ。
Leave a Reply