上へ

課題1 求根法

  1. 「二分法」を使ってtan(x)=4/3を満たすxを求めよ。
  2. 「ニュートン法(ニュートン・ラフソン法)」を使って、同じ問題を解け。それぞれ何ステップで収束するか調べよ。
  3. x^2+2x+0.999999 = 0の2解を求めよ。これは非常にたちの悪い問題である。
ちなみに、Wolfram Alphaで答え合わせができる。使い方を覚えておくと便利。
解答例:bisection_method.c
解答例:newton_method.c

課題2 常微分方程式の解法

  1. 「オイラー法」を使って減衰振動\frac{d^2x}{dt^2} + 2\kappa\frac{dx}{dt} + \omega_0^2x = 0の時間発展を調べよ。
  2. 「ルンゲクッタ法」を使って同じ問題を解け。
  3. t=10sでの誤差をオイラー法、ルンゲクッタ法それぞれ厳密解と比較せよ。それぞれΔtを0.2, 0.1, 0.05, 0.025, 0.0125と変えて、誤差にどのような変化があるか調べよ。
\kappa=0.01, \omega=1.0のときの厳密解はe^{-0.01 t} (cos(0.99995 t)+0.0100005 sin(0.99995 t))
解答例:eular.c
解答例:runge_kutta.c

課題3 線形代数

  1. 「ガウスの消去法」でAx=bをみたすxを求めるプログラムを書け。ピボット選択はまだしなくてよい。
  2. 余裕がある人は、ピボット選択を組み込め。
  3. さらに余裕がある人は、解の有無を判定せよ。
解答例:gauss_elimination.c

課題4 ポアソン方程式の解法

  1. 「ガウス・ザイデル法」を実装して、ポアソン方程式\nabla^2f = \rhoを満たすfを求めよ。gnuplot, Mathematicaなどを使って可視化せよ。
解答例:gauss_seidel.c

↑ガウス・ザイデル法で計算させた電気双極子の周りの電位。

課題5 数値積分

台形公式
シンプソン


コメント欄

名前:
コメント:








最終更新:2011年11月17日 01:02