Newton方程式の数値解法 (Verlet法)


Newtonの運動方程式を有限差分近似で解く方法を説明する。

1. 有限差分法とは

有限差分法 (finite difference method)とは、導関数を有限差分を使った代数式で近似して微分方程式を解く方法である。

$$\frac{df(t)}{dt} = \frac{f(t+h)-f(t)}{h}+O(h)$$

これは、\( t \)から\( h\)だけ先に進んだ地点(時点)の値を使って傾きを計算しているので、前進差分近似と呼ばれる。逆に後ろの地点(時点)の値を使って

$$\frac{df(t)}{dt} = \frac{f(t)-f(t-h)}{h}+O(h)$$

と近似することもできる。これを後退差分近似と呼ぶ。

\( t +h\)の値と\( t-h\)の値の両方を使って近似する方法を、中央差分近似と呼ぶ。

$$\frac{df(t)}{dt} = \frac{f(t+h)-f(t-h)}{2h}+O(h^2)$$

中央差分近似は、前進差分や後退差分と比べて誤差が\(h^2\)のオーダーとなり、近似精度が良い。

2階の導関数は次のように有限差分で近似できる。

$$\frac{d^2f(t)}{dt^2} = \frac{f(t+h)-2f(t)+f(t-h)}{h^2}+O(h^2)$$

2. Verlet法

Verlet法は、Newton方程式の数値解法としてシンプルかつ実用的な方法として広く用いられている方法である。

時刻\(t\)における粒子の位置ベクトルを\(\boldsymbol{r}(t)\)としたとき、時刻\(t+\Delta t\)の位置ベクトル\(\boldsymbol{r}(t+\Delta t)\)を、次式で決定する。

$$ \boldsymbol{r}(t+\Delta t) =2   \boldsymbol{r}(t)  – \boldsymbol{r}(t-\Delta t)+\Delta t^2   \frac{\boldsymbol{f}(t)}{m}$$

ここで\(\boldsymbol{a}(t)\)は時刻\(t\)において粒子に加わる力を表す。\(m\)は粒子の質量である。

最初に\(\boldsymbol{r}(0)\)と\(\boldsymbol{r}(\Delta t)\)を与えれば、上の式を繰り返し適用することで\(\boldsymbol{r}(\Delta t), \boldsymbol{r}(2\Delta t), \boldsymbol{r}(3\Delta t), \boldsymbol{r}(4\Delta t)\cdots\)と時間間隔\(\Delta t\)で次々と位置座標の時系列データが生成される。