next up previous
Next: 2 波動方程式 Up: 現象数理特論B 1次元波動方程式の初期値境界値問題 Previous: 現象数理特論B 1次元波動方程式の初期値境界値問題

1 サンプル・プログラム

http://www.math.meiji.ac.jp/~mk/program/
から1 wave1d-glsc.c を入手する。
oyabun% ccmg wave1d-glsc.c

でコンパイルできるはず。

波動方程式は熱方程式と異なり、 安定性の条件が緩いので (陽解法で $ \tau/h^2\le 1/2$ $ \tau/h
\le 1$ となる)、 ともすると速すぎて「良く見えない」。 そこでグラフを描くのに待ち時間をはさむための msleep.c も置いてあります。
oyabun% ccmg wave1d-glsc.c msleep.c -DUSESLEEP
のようにコンパイルすること。

N= に対しては $ 100$ あるいは $ 1000$ のような大きめの数を、 λ= に対しては特に理由がなければ $ 1$ を、 Tmax= に対しては周期が $ 2$ であることを考慮した上で適当な数を 入力する。 最後に用意してある初期値を番号で選択することになる。 (初期値は一通り試してみることを勧める。)

oyabun% ./wave1d-glsc
N=100
λ=1
Tmax=10
1: 定常波, 2: 割れる山, 3: 滑かな山, 4: ホイヘンスの原理反例
nfunc(初期値の種類 1..5)=1
終りました。X の場合はウィンドウをクリックして下さい。
oyabun%


next up previous
Next: 2 波動方程式 Up: 現象数理特論B 1次元波動方程式の初期値境界値問題 Previous: 現象数理特論B 1次元波動方程式の初期値境界値問題
Masashi Katsurada
平成19年7月21日