第3回レポートの解答と講評
第2回レポートの提出者は28名でした。5問のうち,問題1,2および問題3(1)の
正答率は非常に高く,ラグランジュ補間,台形公式,リチャードソン加速法,オイ
ラー法など,今までに学んだ基本的なアルゴリズムがしっかり理解してもらえたこと
が確認できました。ただ,問題3(2)のホイン法については,アルゴリズムに関して
思い違いをしている解答が1/3近くありました。これについては以下で詳しく説明し
ます。また問題4も,60%程度と予想外に低い正答率でした。これは,計算間違いに
加えて,打切り誤差と丸め誤差の概念を理解していなかった解答がいくつかあった
ためです。問題5,6を選んだ人はそれぞれ3名,1名でしたが,全員正解でした。
解答に代えて,森下浩二君のレポートと鳥越武史君のレポートを載せておきます
ので,ぜひ見てください。森下君は問題4を,鳥越君は問題6を選択しています。
また,問題5については,奥田淳君作成のCプログラムを載せておきます。時間の
ある人は自分で実行してみると,二重指数型積分公式の威力が実感できると思い
ます。
なお,各問の考え方,間違いが多かった箇所などを以下にまとめておきます。
問題1
(1) 正答率 100%
これは,ラグランジュ補間の公式をそのまま適用するだけです。
(2) 正答率 100%
上記(1)の式をそのまま微分してもできますが,後で x=z を代入するので,x-z の
多項式として整理してから微分したほうが,計算が簡単になります。
(3) 正答率 100%
これも(2)と同様です。
問題2
正答率 92%
台形公式による I_h とI_2h の式を書き,台形公式の誤差が O(h^2) であることに
注意してリチャードソン加速の公式を適用します。結果を偶数点,奇数点に分けて
整理するとシンプソン公式になることがわかります。
問題3
(1) 正答率 92%
これは,オイラー法の公式をそのまま適用するだけです。オイラー法が理解できて
いなかった人は授業ノートを見直してみてください。
(2) 正答率 68%
これもホイン法の公式を適用すればよい問題です。ただ,ホイン法の計算において
オイラー法で求めた解を使うという点について,思い違いをしている解答がいくつか
ありました。ホイン法では,y_i から y_{i+1} を求めるため,まずオイラー法で y_{i+1}
の近似値を求めますが,このときは,ホイン法で求めた y_i を出発点とします。
このようにせず,上記(1)で求めたオイラー法の解をそのまま使っている解答がいく
つかありましたが,これでは正しい答が得られません。授業ノートのホイン法の式を
見直してみてください。なお,正しいホイン法を使うと,この場合は誤差がオイラー法
の1/5程度になります。
問題4 (選択者21人)
(1) 正答率 62%
授業でやった前進差分の場合と同じ考え方で,中心差分の場合は誤差が O(h^2)
となる点のみが異なります。なお,最小値を求めるのに相加・相乗平均を使おうと
していた人がいましたが,この場合は使えず,微分して最小値を求める必要があり
ます。
(2) 正答率 57%
これも考え方は同じですが,2階微分の中心差分は分子に4個の項が来る(2f(x)を
2つ分と数えて)ので,丸め誤差が 4|f(x)|ε/(h^2) 程度になることに注意してください。
(3) 正答率 67%
これは,(1),(2)ができていれば,最小値を与える h を代入するだけで計算できます。
問題5 (選択者3人)
(1) 正答率 100%
変数変換の結果については,教科書(水島二郎,柳瀬眞一郎:「理工学のための
数値計算法」,数理工学社,2002.)の p.63 を参照してください。これに台形公式を
適用すれば,求める数値積分公式が得られます。
(2) 正答率 100%
上記の奥田淳君のプログラムでは,h を小さくしていったときの誤差として,次の
結果が得られています。
h=1 のとき 誤差 1.92E-3
h=0.5 のとき 誤差 1.97E-8
h=0.25 のとき 誤差 4.44E-16
このように,刻み幅を半分にすると誤差が2乗で減っていくというのが2数指数型
積分公式の典型的な振る舞いです。したがってこの公式は,台形公式,シンプソ
ン公式などに比べて計算効率が極めて良いことがわかります。
問題6 (選択者1人)
(1) 正答率 100%
1変数の場合と同様,x,y に関する常微分方程式をそれぞれ t_i から t_{i+1} まで
積分し,右辺の積分を台形公式により近似します。被積分関数の f,g はそれぞれ
x,y を通じても t に依存しているので,台形公式の適用には x(t_{i+1}),y(t_{i+1})
が必要ですが,これは1変数の場合と同様,オイラー法により求めます。鳥越君の
解答では x_i + k_{1f},y_1 + k_{1g} がそれぞれオイラー法により求めた x(t_{i+1}),
y(t_{i+1}) を表しています。
(2) 正答率 100%
授業でやったように,新しい変数 y=dx/dt を導入し,連立微分方程式に直して (1)
の結果を適用します。
2003年度応用数学のページに戻る