テイラー展開で微分方程式を解く【定数係数の2階同次線形微分方程式の一般解】

いきなり指数関数ぶち込むのがすっきりしないので、なんとかボトムアップで解を求める試み。間違いがあったら教えてもらえるとありがたいです。

 

以下のような微分方程式の一般解を求めたい。

\begin{equation*} \frac{d^2x(t)}{dt^2} + a\frac{dx(t)}{dt} + bx = 0 \end{equation*}

以降の話は、x(t)テイラー展開できることを前提に進めていく。
まず、 x(t) t=0においてテイラー展開してみる。それを問題の方程式に代入すると、

\begin{equation*}\sum_{k=0}^{\infty} \frac{\left( x^{(k+2)}(0) + ax^{(k+1)}(0) + bx^{(k)}(0) \right)}{k!}t^k = 0\end{equation*}

となる。ただしここで x^{(k)}はxをk回微分したものを意味する。
無限級数が恒等的に0になるなら、その係数はすべて0になっていると言ってよい。よって以下の式が得られる。

\begin{equation*} x^{(n+2)}(0) + ax^{(n+1)}(0) + bx^{(n)}(0) = 0 \qquad (n \geqq 0)\end{equation*}

 x_n = x^{(n)}(0)とすれば、上の式は数列{x_n}の漸化式になっている。
また、定義から明らかなように、x(t) = \sum_{k=0}^{\infty} \frac{x_k}{k!}t^kなので、 {x_n}の閉じた式が見つかれば、 x(t)テイラー展開が得られる。

よって、問題は、

\begin{equation*} x_{n+2} + ax_{n+1} + bx_n = 0 \qquad (n \geqq 0)\end{equation*}

という隣接三項間漸化式を解くことと言い換えられる。
漸化式を解くために、行列を用いる。漸化式を以下のような式で表す。

\begin{equation*} \begin{pmatrix} x_{n+2} \\ x_{n+1} \end{pmatrix} = \begin{pmatrix} -a & -b \\ 1 & 0 \end{pmatrix} \begin{pmatrix} x_{n+1} \\ x_n \end{pmatrix} \qquad (n \geqq 0)\end{equation*}

この漸化式を限界まで展開すると、項はこのように書けることがわかる。

\begin{equation*} \begin{pmatrix} x_{n+1} \\ x_n \end{pmatrix} = \begin{pmatrix} -a & -b \\ 1 & 0 \end{pmatrix}^n \begin{pmatrix} x_1 \\ x_0 \end{pmatrix} \qquad (n \geqq 0)\end{equation*}

行列のn乗を計算するために、対角化を行ってみる。つまり、

\begin{equation*}A=\begin{pmatrix} -a & -b \\ 1 & 0 \end{pmatrix}\end{equation*}として、

 \begin{equation*} A = P^{-1}\begin{pmatrix} \alpha & 0 \\ 0 & \beta \end{pmatrix} P \end{equation*}

となる二次の正則行列 Pと、\alpha,\betaを求める。こういう風な変形ができれば、

\begin{equation*} A^n = P^{-1}\begin{pmatrix} \alpha^n & 0 \\ 0 & \beta^n \end{pmatrix} P \end{equation*}

のように、楽にA^nを計算することができる。(この変換ができない場合もあるが、それは後述)

\alpha, \betaは一般に A固有値となることが知られており、固有値 Aの固有方程式(特性方程式) を解くことで得られる。つまり、

\begin{equation*} det\left(\begin{pmatrix} \lambda+a & b \\ -1 & \lambda \end{pmatrix}\right) = (\lambda+a)\lambda + b = \lambda^2 + a\lambda +b = 0\end{equation*}

という二次方程式の解が、求めたい \alpha, \betaである。
ここで、固有方程式が重解を持つ場合については、少し話が変わってくるので、いったん\alpha \neq \betaと仮定する。


重解を持たない場合

固有値を求めたら、次はPを求める必要がある。P R^2の標準基底(e_1,e_2)からAの固有ベクトルの基底(v_1,v_2)への基底変換の行列(恒等写像の基底(e_1,e_2)および基底(v_1,v_2)に関する行列表示、つまり、成分ベクトル同士の対応を与える行列)として考えることができる。つまり、

\begin{equation*} (e_1,e_2)\begin{pmatrix} s_1 \\ s_2\end{pmatrix} = (v_1,v_2)P\begin{pmatrix} s_1 \\ s_2\end{pmatrix}\end{equation*}

が成り立つ。このことから、Aの固有ベクトルv_1,v_2を求めれば、Pも求まることになる。
この固有ベクトルは、Av_1=\alpha v_1として成分についての連立方程式を解くと得られる。(候補がいくつもあるので完全には解けないが)ここでは、

\begin{equation*} v_1=\begin{pmatrix} \alpha \\ 1 \end{pmatrix} ,\space v_2=\begin{pmatrix} \beta \\ 1\end{pmatrix}\end{equation*}

とする。

こうすると、先述の基底変換の式にv_1,v_2を代入して、\begin{equation*} \begin{pmatrix} 1 & 0 \\ 0& 1\end{pmatrix} = \begin{pmatrix} \alpha & \beta \\ 1 & 1 \end{pmatrix}P\end{equation*}が得られる。
よって
\begin{equation*} \begin{pmatrix} \alpha & \beta \\ 1 & 1 \end{pmatrix}^{-1}\begin{pmatrix} 1 & 0 \\ 0& 1\end{pmatrix} =\begin{pmatrix} \alpha & \beta \\ 1 & 1 \end{pmatrix}^{-1} = P\end{equation*}
なので、次は固有ベクトルの行列の逆行列を求める必要がある。
逆行列を一般に求めるには、行列式の余因子展開とかを考えないといけないが、二次程度なら二元の連立方程式を解けばいいだけなので、そこまで深く考える必要もない。
結論だけ述べると、
\begin{equation*}P= \begin{pmatrix} \alpha & \beta \\ 1 & 1 \end{pmatrix}^{-1}=\frac{1}{\alpha - \beta}\begin{pmatrix}1 & -\beta \\ -1 & \alpha \end{pmatrix}\end{equation*}

となる。
これでPとP^{-1}が求められたので、対角化ができた。これでA^nが計算できる。
代入して計算すると、\begin{equation*} A^n = P^{-1} \begin{pmatrix} \alpha^n & 0 \\ 0 & \beta^n \end{pmatrix} P =\frac{1}{\alpha - \beta} \begin{pmatrix} \alpha ^{n+1} - \beta ^{n+1} & -(\alpha^{n+1}\beta - \alpha \beta ^{n+1}) \\ \alpha ^{n} - \beta ^{n} & -(\alpha^{n}\beta - \alpha \beta ^{n}) \end{pmatrix} \end{equation*}
よって、
\begin{equation*}x_n = \frac{\alpha ^n - \beta ^n}{\alpha - \beta}x_{1} - \frac{\alpha ^{n} \beta - \alpha \beta ^{n}}{\alpha - \beta}x_{0}\end{equation*}
これで狙い通りx_nの閉じた式を得ることができた。
これがn\geq 0で問題なく成り立つことに注意して、テイラー展開の係数に代入すると、
\begin{equation*}x(t) = \frac{1}{\alpha - \beta}  \sum_{k=0}^{\infty}\{(\alpha ^k - \beta ^k) x_{1} - (\alpha ^{k} \beta - \alpha \beta ^{k})x_{0} \} \frac{t^k}{k!}\end{equation*}
 e^{at} = \sum_{k=0}^{\infty} a^k \frac{t^k}{k!}であることに注意して、上の式の中身を展開して、整理すると
\begin{equation*}x(t) = \frac{x_1 - \beta x_0}{\alpha - \beta} e^{\alpha t} - \frac{x_1 - \alpha x_0}{\alpha - \beta}e^{\beta t}\end{equation*}
が得られる。これが\alpha \neq \betaの場合の、x(t)の一般解になる。


重解をもつ場合


ここからは話を少し戻して、後回しにしたAの固有多項式が重解をもつ場合、すなわち、\begin{equation*} det\left(\begin{pmatrix} \lambda+a & b \\ -1 & \lambda \end{pmatrix}\right) = \lambda^2 + a\lambda +b = (\lambda-\alpha)^2\end{equation*}
の場合を検討する。
この場合、先程やったような対角化ができない。と、いうのも、対角化できるとすれば、Aは \begin{equation*} A = P^{-1}\begin{pmatrix} \alpha & 0 \\ 0 & \alpha \end{pmatrix} P \end{equation*}

のように表示される他ないが、これはAがすでに\alphaの対角行列であることを意味している。そして、Aは残念ながらそうなってはいない(そもそもなっていないから対角化しようとしている)
ただ、こういう場合でも楽にべき乗を計算できるようないい形に変換することができる。その形を一般にジョルダン標準形という。実のところ、対角化した行列も、このジョルダン標準形に分類される。
細かい説明はしないが、今回の場合であれば、Aは、
\begin{equation*} A = P^{-1}\begin{pmatrix} \alpha & 1 \\ 0 & \alpha \end{pmatrix} P \end{equation*}
のような形に変換できる。
\begin{equation*} \begin{pmatrix} \alpha & 1 \\ 0 & \alpha \end{pmatrix}^n = \begin{pmatrix} \alpha ^ n & n \alpha ^{n-1} \\ 0 & \alpha ^n \end{pmatrix} \end{equation*}なので、
\begin{equation*} A^n = P^{-1}\begin{pmatrix} \alpha ^ n & n \alpha ^{n-1} \\ 0 & \alpha ^n \end{pmatrix}  P \end{equation*}
とすることができる。
次に対角化した時と同じように、Pを求める必要があるが、 R^2の標準基底(e_1,e_2)からとある基底(v_1,v_2)への基底変換の行列と考えて求める。
ここで問題になるのが(v_1,v_2)とは何なのかということだが、結論だけ述べると、この場合はA固有ベクトルではないベクトルを一つ選び、それをv_2とする、v_2A-\alpha E_2を作用させたものを、v_1とすると、このように決めた(v_1,v_2)が狙いの基底になる。

基底がそれでいいことの簡単な説明 理屈(らしきもの)を述べると、まず、A = \alpha E_2 + (A- \alpha E_2)である。ここで、対角行列(対角行列で表される線形変換)は、どのように基底を取り換えても表示が不変であることに注意すると、Aジョルダン標準形にできる基底とは、線形変換A-\alpha E_2を、\begin{equation*}\begin{pmatrix}0 & 1 \\ 0 & 0\end{pmatrix}\end{equation*}にできる基底ということになる。そうすると、そのような基底(v_1,v_2)は、(A-\alpha E_2)v_2 = v_1になる必要があり、v_1 \neq oとなるように、v_2固有ベクトル以外から選ぶ必要があった。

よって、

\begin{equation*} v_2=\begin{pmatrix} 1 \\ 0 \end{pmatrix} ,\space v_1=\begin{pmatrix} \alpha \\ 1\end{pmatrix}\end{equation*}

などと決めることができる。
基底が分かりさえすれば、P,P^{-1}は対角化した時と同じように求められるので、
\begin{equation*} P^{-1}=\begin{pmatrix} \alpha & 1 \\ 1 & 0 \end{pmatrix} ,\space P=\begin{pmatrix} 0 & 1 \\ 1 & -\alpha \end{pmatrix}\end{equation*}
となる。これを代入して、
\begin{equation*} A^n = \begin{pmatrix} \alpha & 1 \\ 1 & 0 \end{pmatrix}  \begin{pmatrix} \alpha ^ n & n \alpha ^{n-1} \\ 0 & \alpha ^n \end{pmatrix}  \begin{pmatrix} 0 & 1 \\ 1 & -\alpha \end{pmatrix} = \begin{pmatrix} (n+1)\alpha ^{n} & -n\alpha ^{n+1} \\ n\alpha ^{n-1} & -(n-1)\alpha ^{n}\end{pmatrix}\end{equation*}
よって、
\begin{equation*} x_n = (n\alpha ^{n-1})x_1 - ((n-1)\alpha ^{n})x_0 = (x_1-\alpha x_0)n\alpha ^{n-1} + \alpha ^{n} x_0\end{equation*}
これをテイラー展開に代入して、\begin{align*} x(t) &= (x_1 - \alpha x_0) (\sum_{k=0}^{\infty}\frac{k}{k!} \alpha^{k{-}1} t^{k})+x_0(\sum_{k=0}^{\infty}\frac{1}{k!}\alpha ^{k}t^{k}) \\ &=(x_1-\alpha x_0)te^{\alpha t} + x_0 e^{\alpha t} \\ &= \left( (x_1 {-} \alpha x_{0})t + x_0 \right) e^{\alpha t}\end{align*}

 

結論


以上のことから、x(t)の一般解を求めることができた。
\begin{equation*}
x(t)=
\left\{
\begin{array}{2}
\frac{x_1 - \beta x_0}{\alpha - \beta} e^{\alpha t} - \frac{x_1 - \alpha x_0}{\alpha - \beta}e^{\beta t} & (a^2 - 4b \neq 0) \\
\left( (x_1 {-} \alpha x_{0})t + x_0 \right) e^{\alpha t} & (a^2 -4b = 0)
\end{array}
\right .
\end{equation*}

余談
\alpha, \betaが複素解になるときは、オイラーの定理から、解を三角関数の形で書くことができる。
特に物理学だと軌道の関数x(t)の値域が実数範囲という条件が付くことが(多分)多いので、一般解にくっつく虚数部分の係数を消去できる。そうすると軌道が\cos,\sinの和で表せて、合成すれば\sin一個で表せるので、運動が周期性を持つことがわかる。減衰振動などは、そのあたりの様態がよくあらわれる運動だと思う。