数学 Libre 30「オイラーに学ぶ」より
「現代数学」2017年11月号(現代数学社), 松谷茂樹
今回から3 回,数値解析の手法について述べ
たいと思います.今回はオイラー法についてで
す.
オイラー法とはオイラーが1768 年に提示した
常微分方程式の数値解法です[1].微分方程式
として
\[
\frac{dx(t)}{dt}=f(t,x(t))
\]
の場合を考えます.$t=0$での初期値を$x(0)=x_0$とします.
$x$の微分の定義が
\[
\frac{dx}{dt}
=\lim_{\varepsilon \to 0}\frac{x(t+\varepsilon)-x(t)}{\varepsilon}
\]
である事を思い出して,微小量$\varepsilon$を導入して
\[
\frac{x(t+\varepsilon)-x(t)}{\varepsilon}=f(t,x(t))
\]
と近似するのがオイラー法です.これにより
\[
x(t+\varepsilon)=x(t)+\varepsilon f(t,x(t))
\]
とみなすことができます.
$t$を時間と見て,時間分割
$t_n:=t_0+n\varepsilon$, $(n=0, 1, 2, 3, \cdots)$に対して,
$x_n$, $n=1, 2, \cdots, $を
\[
x_n=x_{n-1} + \varepsilon f(t_{n-1},x_{n-1})
\]
として$x_n$を上記の常微分方程式の解$x(t)$の$t=t_n$
での近似解と考えるのです.
脚注・・・・・・・
例えば[1]のp.496においてオイラーは
$dy = V(x) dx$に対して,微小量$\omega$に対して,
$x+\omega$に対して,$y+\psi$となる微小量$\psi$
を考察しており,これがオイラー法の原典と思われます.
・・・・・・・・・
自然対数の底$\mathrm{e}$は1827年か28年にオイラーが発見し
ました.
今回は数学史の話ではありませんので,歴史に忠実な
話をするわけではありませんが,オイラーの発見に
至る道筋の本質をオイラー法により再現しましょう.
オイラー法の例として非零な実数$\alpha$を固定して
$f(x)=\alpha x$の考察をするのです.つまり
\[
\frac{dx(t)}{dt}=\alpha x(t)
\]
です.この時,オイラー法を適用すると
\[
x_1=(1 + \varepsilon \alpha) x_0
\]
\[
x_2=(1 + \varepsilon \alpha) x_1
\]
\[
\quad =(1 + \varepsilon \alpha)^2 x_0
\]
\[
x_3=(1+\alpha\varepsilon)^3x_0
\]
\[
\vdots
\]
となり,一般解は
\[
x_n=x_0(1+\alpha\varepsilon)^n
\]
となります.ここで$\varepsilon = t/n$とし,
$n\to\infty$で
収束すれば微分方程式の$x(t)$の解を再現します.つまり
\[
x(t)=\lim_{n\to \infty} x_0\left(1 + \alpha\frac{t}{n}\right)^n
\]
です.$\mathrm{e}$の定義$\mathrm{e}=$
$\displaystyle{
\lim_{s\to \infty}\left(1+\frac{1}{s}
\right)^s
}$
を思い出すと,実際,よく知られた解
\[
x(t)
=x_0\lim_{n\to \infty}
\left(\left(1 + \frac{\alpha t}{n}\right)^{n/\alpha t}
\right)^{\alpha t}=x_0 \mathrm{e}^{\alpha t}
\]
となります.他方,$(1+\alpha\varepsilon)^n$を展開すると
\[
x(t) = \lim_{n \to \infty}x_0 \sum_{r=0}^n\frac{n!}{(n-r)!r!}
\left(\frac{\alpha t}{n}\right)^r
\]
と$\displaystyle{\frac{n!}{(n-r)!r!}
=\frac{n^r(1+O(1/n))(n-r)!}{(n-r)!r!}}$
より
\[
x(t) =x_0 \lim_{n \to \infty}\left(
\sum_{r=0}^n\frac{n^r(n-r)!}{(n-r)!r!}
\left(\frac{\alpha t}{n}\right)^r
+ O\left(\frac{1}{n}\right)\right)
\]
\[\qquad\qquad\displaystyle{
=x_0\sum_{r=0}^\infty \frac{1}{r!}
(\alpha t)^r}
\]
となります.これにより$\mathrm{e}^{\alpha t}$の展開式
\[
\mathrm{e}^{\alpha t}=\lim_{n\to \infty} \left(1 + \alpha\frac{t}{n}\right)^n
=\sum_{r=0}^\infty \frac{1}{r!} (\alpha t)^r
\]
を得ることができます.
自然対数の底$\mathrm{e}$はネイピア数と呼ばれます.
そのためネイピアが発見したとする文面を
見かけますが,
ネイピアではなくオイラーがここで述べた考察に近い考察の
末に発見し,
定義し
$\mathrm{e}$と呼び始めたものです[2].
自分(Euler)のイニシャルから取ったと思われます.
オイラーは展開から2.71828$\cdots$を定めたのです.
オイラー定数と呼ばれる
$\gamma=0.57721\cdots$がなかったら,オイラー数と呼ばれるべきものです.
実際,欧米ではオイラー数と称する事もあるようです.
脚注・・・・・・・
オイラーはある数$a$に対し$a^0=1$より,小さい量$\omega$に
よる$a^\omega$は小さい量$\psi$により
$a^\omega = 1+\psi$と書けると考えました.更に$\psi=k\omega$と
できる事も推察し,$a^{i\omega}=(1+k\omega)^i$
$=\displaystyle{\sum_{r=0}^i \frac{i!}{r!(i-r)!} (k\omega)^i}$
を計算し,$i=1/\omega$として$\omega\to 0$状況を考察しました.
この時,$k=1$となる数は特別な数であるとして$\mathrm{e}$としたのです[2,p.120].
・・・・・・・・・
更に,オイラー法に従って,所謂オイラーの公式を導きましょう.
1748年に発見した例のオイラーの公式です.
運動方程式
\[
\frac{d^2x(t)}{dt^2}=- x(t)
\]
を考えます.初期値として$x(t)=x_0$と
$\displaystyle{\frac{d x}{dt}\Bigr|_{t=0}}=v_0$
とします.速度$v=\displaystyle{\frac{d x}{dt}}$を導入することで
\[
\frac{d}{dt}
\begin{pmatrix}
v(t)\\
x(t)
\end{pmatrix}
=\begin{pmatrix}
-x(t)\\
v(t)
\end{pmatrix}
=J \begin{pmatrix}
v(t)\\
x(t)
\end{pmatrix}
\]
とできます.$\displaystyle{
J=\begin{pmatrix} 0 & -1 \\ 1 & 0 \end{pmatrix}}$.
また$\displaystyle{
I=\begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}}$と
することで,オイラー法を適用し,
\[
\begin{pmatrix} v_n \\ x_n \end{pmatrix}
= (I + \varepsilon J)\begin{pmatrix} v_{n-1} \\ x_{n-1} \end{pmatrix}
\]
とできます.
これから先の例と同様に
\[
\begin{pmatrix} v_n \\ x_n \end{pmatrix}
= (I + \varepsilon J)^n\begin{pmatrix} v_{0} \\ x_{0} \end{pmatrix}
\]
となることが判ります.
$\varepsilon = t/n$として,$n\to \infty$とすると
再び,方程式の解$x(t)$を再現します.
\[
\begin{pmatrix} v(t) \\ x(t) \end{pmatrix}
=\lim_{n\to \infty} \left(I + \frac{t}{n}J\right)^n
\begin{pmatrix} v_{0} \\ x_{0} \end{pmatrix}
\]
より,上記と同じ考察により
\[
\lim_{n\to \infty} \left(I + \alpha\frac{t}{n}J\right)^n
=\sum_{r=0}^\infty \frac{1}{r!} ( tJ)^r
\]
を得,それを$\mathrm{e}^{tJ}$と書くことで
形式的に
\[
\begin{pmatrix} v(t) \\ x(t) \end{pmatrix}
=\mathrm{e}^{tJ} \begin{pmatrix} v_{0} \\ x_{0} \end{pmatrix}
\]
と書けます.この展開は$J^2 = - I$から
\[
\mathrm{e}^{tJ}
=\left(\sum_{\ell=0}\frac{(-)^\ell}{(2\ell)!}t^{2\ell} I +
\sum_{\ell=0}\frac{(-1)^\ell}
{(2\ell+1)!}t^{2\ell+1} J \right)
\]
となり,
$\displaystyle{
\mathrm{e}^{tJ}=
\begin{pmatrix} \cos t & -\sin t\\ \sin t & \cos t
\end{pmatrix}}
$
と解を得ます.$z_n= x_n + \sqrt{-1} v_n$とし,$J$を
$\sqrt{-1}$,$I$を$1$に置き換えれば,
この公式はオイラーの公式
\[
\mathrm{e}^{\sqrt{-1}t} = \cos t + \sqrt{-1} \sin t
\]
に対応します.
このようにオイラー法によって微分方程式の
近似解を考えると,深い数学的真理に
いとも簡単にたどり着くことができます.
歴史に忠実ではありませんが,
これがオイラーの流儀です.
本質を抉る際に躊躇はしてはいけないのです.
参考文献
[1] L. Euler,
nstitutiones Calculi Integrals Volumen-primum,
1768
[2] H. H. Goldstine,
A History of Numerical Analysis from the 16th through
the 19th Century (Studies in the History of
Mathematics and Physical Sciences),
Springer, 1977.