単振動の公式の天下り無しの導出

はじめに

物理の本を読むとこんな事が起こる

 

単振動は$\frac{d^2x}{dt^2}+\frac{k}{m}x=0$という微分方程式で与えられる←わかる

この解が$e^{\lambda x}$の形で書けるので←は????なんでそう書けることが言えるんですか???それ以外に解は無いことは言えるんですか???

みたいな感じになりがちである。実際に$A\cos{(\omega t)}+B\sin{(\omega t)}$の形で書けるのは分かるんだけど、もやもやとした気持ちは無くならない

 

かつて、自分はこのことがとても納得できなかったので天下り無しの記事を書くことにした。

前提知識

 

$\frac{dx}{dt}=kx$の解は$C\exp{(kt)}$のみである。

これは

$$\frac{dx}{dt}-kx=0$$

$$e^{-kt}\left(\frac{dx}{dt}-kx\right)=0$$

$$\frac{d}{dt}\left(e^{-kt}x\right)=0$$

$$e^{-kt}x=C(C:const)$$

$$x=Ce^{kt}$$

というようにすれば、これ以外に解がないことが分かる。ここで、Cは任意定数である。

ここで、これは$k$が任意の複素数で成り立つことに注意である。

もちろん、複素数上での指数関数についてはみんなが大好きオイラーの公式を使えばOK。

証明

$$\frac{d^2}{dt^2}x=-\omega^2 x$$

という微分方程式の解について考える。これは、

$$\frac{dx}{dt}=y$$

という変数$y=y(t)$を新たに定めて、連立微分方程式にする。

$$\frac{dx}{dt}=y,\frac{dy}{dt}=-\omega^2 x$$

となっている。これを行列のように書くと

$$\frac{d}{dt}\pmatrix{x\\y}=\pmatrix{0&1\\-\omega^2&0}\pmatrix{x\\y}$$

線形代数学的な言葉を使うと、この行列に関する固有ベクトルを求めてから微分方程式を解くのだが、以降ではそれをもっと具体的に書くことにする。

 

kを定数とすると、$$\frac{d}{dt}(x+ky)=y-k\omega^2x$$というような形になる。

ここで、kをうまい具合に定めたら$$\frac{d}{dt}(x+ky)=\lambda (x+ky)$$という形になるはずである。もしそうなったら、$x+ky=Ce^{\lambda x}$ということが言える。

 

では、どのような$k$にすればいいのかというと、それは簡単で、$1:k=-k\omega^2:1$という比例式を解けばよい。これは$$k^2\omega^2=-1$$より、$$k=\pm i/\omega$$ということが言える。

よって

$$\frac{d}{dt}(x+\frac{i}{\omega }y)=-i \omega(x+\frac{i}{\omega }y)$$

$$\frac{d}{dt}(x-\frac{i}{\omega }y)=i \omega(x-\frac{i}{\omega }y)$$

 これを解くと以下のようになる。

 $$x+\frac{i}{\omega} y=A_1e^{-i\omega t}$$

 $$x-\frac{i}{\omega} y=A_2e^{i\omega t}$$

 この2つから$y$を削除すると

$$x(t)=\frac{A_1}{2}e^{-i\omega t}+\frac{A_2}{2}e^{i\omega t}$$

よって、最終的には

$$x(t)=C_1 e^{-i\omega t}+C_2 e^{i\omega t}$$

 という形で書けることが分かる。あとはオイラーの公式を使って整理すれば

$$x(t)=A\cos{\omega t}+B\sin{\omega t}$$

という形で書けることが分かる。

特性方程式とは何か

この手の解説を見ると、「特性方程式」なる謎の概念が突如彗星のごとくやってきて、狐につままれた感じになる場面が多いと思われる。ということで解説する。以降は線形代数の用語が入ってくる。*1 

 

まず、単振動のような微分方程式は、一般化すると以下のように書ける。

$$\frac{d^nx}{dt^n}+a_{n-1}\frac{d^{n-1}x}{dt^{n-1}}+\cdots+a_1\frac{dx}{dt}=a_0x=0$$

これは、行列の形に帰着することができる。つまり、

$$y_k=\frac{d^kx}{dt^k}(k=0,\ldots,n-1)$$

と定めたとき、

$$\frac{dy_0}{dt}=y_1,\ldots,\frac{dy_{n-2}}{dt}=y_{n-1},\frac{dy_{n-1}}{dt}=-a_{n-1}y_{n-1}-\cdots -a_0y_0$$

というように書けば、

$$\frac{d}{dt}\pmatrix{y_0\\y_1\\\vdots\\y_{n-3}\\y_{n-2}\\y_{n-1}}=\pmatrix{0&1&0&\cdots&0&0\\0&0&1&\cdots& 0&0\\\vdots&\vdots&\vdots&\ddots&\vdots&\vdots\\0&0&0&\cdots&1&0\\0&0&0&\cdots &0&1\\-a_0&-a_1&-a_2&\cdots&-a_{n-2}&-a_{n-1}}\pmatrix{y_0\\y_1\\\vdots\\y_{n-3}\\y_{n-2}\\y_{n-1}}$$

 で書ける。以降はベクトルを$y$,行列を$A$として$\frac{dy}{dt}=Ay$と書く。

これについて、転置行列$A^t$の固有値固有ベクトルを$\lambda_k,v_k$とおく。

すると、$A^t v_k=\lambda_k v_k(k=0,\ldots,n-1)$となるが、両辺の転置を取ると、

$$v_k^t A=v_k^t \lambda_k$$

となる。ここで、$\frac{dy}{dt}=Ay$の左から$v_k^t$を掛けると、

$$v_k^t \frac{dy}{dt}=v_k^t Ay$$

$$\frac{d}{dt}(v_k^t y)=\lambda_k (v_k^t y)$$

となる。$\langle ,\rangle$を$\mathbb{R}^n$上の内積とすると、

$$\frac{d}{dt}\langle v_k,y\rangle =\lambda_k\langle v_k,y\rangle$$

となる。つまり、$\langle v_k,y\rangle$は$\mathbb{R}$内の値を取るような関数であることを考えると、

$$\langle v_k,y\rangle = C_k e^{\lambda_k t}$$

というように書けるはずである。(ここで、$C_k$は$t$に依存しない定数)

つまり、最終的には$y$は$e^{\lambda_k\cdot t}$の線形結合で書けるはずである。(注:固有値に重複がある場合は危ない。後述)

では、$\lambda_k$は何だったのかというと、$A^t$の固有値であるが、これは$A$の固有値に等しい。*2固有値ということはつまり、$A$の固有多項式の解である。

$A$の固有多項式というのは、この場合、

$$\lambda^n +a_{n-1}\lambda^{n-1}+\cdots +a_1\lambda +a_0=0$$

となっているのである!

 

これが、特性方程式なるものが突然出現してくる理由である。

 

最終的には、$\langle v_k,y\rangle$の線形結合だけで$y_0$を表現できるかという問題に帰着されるが、それはまさに$A$が対角化可能であるかどうかを判定していることになっている。

固有多項式が重解を持たない場合は問題なし。重解を保つ場合は、$\langle v_k,y\rangle$が全て一次独立であることの保証がないため、$y_0$を表現できるか問題が発生する。もし対角化できない場合はジョルダン標準形というものを使えばOK。特性方程式が重解をもつ場合は$(C_1+C_2 t)e^{\lambda t}$みたいなのが出現してくるが、それはジョルダン標準形が基になっている。

 

余談だが、一般の$n$次正方行列$A$に対して、$\frac{d}{dt}y=Ay$という行列微分方程式の解は

$$y=\exp{(At)}y_0$$

と書くことができる。ここで、

$y_0$は任意の$n$次元ベクトルを取ることができる。

$\exp{(At)}$は行列指数関数というものである。定義は以下の通り

$$\exp{(At)}:=\sum_{n=0}^{\infty}\frac{t^n}{n!}A^n$$

( まあ、expのマクローリン展開を知っていれば自然な定義に見えるよね。)

これの何が面白いかというと、これは一次元についての微分方程式

$$\frac{dx}{dt}=ax,\quad x=e^{at}x_0$$

という解と同じようなノリで書けることである。ただし行列指数関数を求めるのは固有値固有ベクトルを求めるよりもだるい(個人の感想です)

*1:そういえば、n項間漸化式で書かれた数列の一般項を求めるときも特性方程式が出てくるけど、これも同じように行列を使った議論をすることができる。

*2:何故か気になるって?「転置 行列式」で検索!