Friday, 28 July 2017

映画 Hidden Figures (邦題「ドリーム」)本編

2016年 米国 Directed by Theodore Melfi, Distributed by 20th Century Fox

Euler's Method

日本では2017年9月公開予定の映画です.主役のキャサリン・ジョンソンは、宇宙船を軌道から戻すための計算にオイラーの方法(Euler's Method)を使います.これは常微分方程式 ordinary differential equations (ODEs)の厳密解(解析解)が求められないときに近似解(数値解)を求める方法の一つです.

解こうとする微分方程式が $y'=f(t, y(t))$,初期値が$y(t_0)=y_0$のとき,まずtを幅hで区切って$t_0=0, t_1=h, t_2=2h, t_3=3h,$ …とし,最初はt=0における接線で近似,その後は,$y_{n+1}=y_n+h・f(t_n,y_n)$として,2点$(t_n, y_n)$, $(t_{n+1},y_{n+1})$を結ぶ直線で近似していくという方法です.

簡単な例として,厳密解(解析解)が$y=e^t$になる微分方程式$y'=y$を見てみましょう.初期値は$y_0=1$になります.この例では$f(t_n,y_n)=y_n$なので,$y_{n+1}=y_n+h・y_n$として$(t_n,y_n)$を次々に求めて行き,折れ線グラフを作っていくというイメージです.

$y_1=y_0+h\cdot y_0=1+h\cdot 1=1+h$
$y_2=y_1+h\cdot y_1=(1+h)+h\cdot(1+h)=(1+h)^2$
$y_3+h\cdot y_3=(1+h)^2+h\cdot(1+h)^2=(1+h)^3$

例えば,h=0.5なら,$y_1=1.5$,$y_2=2.25$,$y_3=3.375$,$y_4=5.0625$,…となって,右図のようになります.
(オレンジ色がEuler's methodによる近似解,青色が$y=e^x$)

hの値(分割の幅)が小さいほどより良い近似になりますが,その分,計算は煩雑になります.hの値を変えたらどうなるかわかるものをGeoGebraで作ってみましたので,試してみてください.

因みにEuler's Methodは,世界中最も多くの国で普及している高校カリキュラム「国際バカロレアディプロマプログラム(IB Diploma Program)」のMathematics Higher Level(主に理系向き)のOption科目"Calculus"に登場します。

余談ですが,日本語の方のWikipediaで,1か所間違いを見つけたので訂正しておきました.これでWikipediaの記事を訂正したのは4~5回目ぐらいになのですが,以前に訂正した内容を記録してなくて思い出せないので,今後履歴が残るように今回初めてWikipediaにアカウント登録してみました.

<reference>
Euler method
https://en.wikipedia.org/wiki/Euler_method
オイラー法
https://ja.wikipedia.org/wiki/%E3%82%AA%E3%82%A4%E3%83%A9%E3%83%BC%E6%B3%95

No comments:

Post a Comment