テイラー展開で微分方程式を解く【定数係数の2階同次線形微分方程式の一般解】
いきなり指数関数ぶち込むのがすっきりしないので、なんとかボトムアップで解を求める試み。間違いがあったら教えてもらえるとありがたいです。
以下のような微分方程式の一般解を求めたい。
\begin{equation*} \frac{d^2x(t)}{dt^2} + a\frac{dx(t)}{dt} + bx = 0 \end{equation*}
以降の話は、がテイラー展開できることを前提に進めていく。
まず、を
においてテイラー展開してみる。それを問題の方程式に代入すると、
\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*}
となる。ただしここで
無限級数が恒等的に0になるなら、その係数はすべて0になっていると言ってよい。よって以下の式が得られる。
\begin{equation*} x^{(n+2)}(0) + ax^{(n+1)}(0) + bx^{(n)}(0) = 0 \qquad (n \geqq 0)\end{equation*}
とすれば、上の式は数列
の漸化式になっている。
また、定義から明らかなように、なので、
の閉じた式が見つかれば、
のテイラー展開が得られる。
よって、問題は、
\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*}
となる二次の正則行列を求める。こういう風な変形ができれば、
\begin{equation*} A^n = P^{-1}\begin{pmatrix} \alpha^n & 0 \\ 0 & \beta^n \end{pmatrix} P \end{equation*}
のように、楽にを計算することができる。(この変換ができない場合もあるが、それは後述)
は一般に
の固有値となることが知られており、固有値は
の固有方程式(特性方程式) を解くことで得られる。つまり、
\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*}
という二次方程式の解が、求めたいである。
ここで、固有方程式が重解を持つ場合については、少し話が変わってくるので、いったんと仮定する。
重解を持たない場合
固有値を求めたら、次はを求める必要がある。
は
への基底変換の行列(恒等写像の基底
に関する行列表示、つまり、成分ベクトル同士の対応を与える行列)として考えることができる。つまり、
\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*}
が成り立つ。このことから、を求めれば、
も求まることになる。
この固有ベクトルは、として成分についての連立方程式を解くと得られる。(候補がいくつもあるので完全には解けないが)ここでは、
\begin{equation*} v_1=\begin{pmatrix} \alpha \\ 1 \end{pmatrix} ,\space v_2=\begin{pmatrix} \beta \\ 1\end{pmatrix}\end{equation*}
とする。
こうすると、先述の基底変換の式にを代入して、\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*}
となる。
これでが求められたので、対角化ができた。これで
が計算できる。
代入して計算すると、\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*}
これで狙い通りの閉じた式を得ることができた。
これがで問題なく成り立つことに注意して、テイラー展開の係数に代入すると、
\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*}であることに注意して、上の式の中身を展開して、整理すると
\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*}
が得られる。これがの場合の、
の一般解になる。
重解をもつ場合
ここからは話を少し戻して、後回しにしたの固有多項式が重解をもつ場合、すなわち、\begin{equation*} det\left(\begin{pmatrix} \lambda+a & b \\ -1 & \lambda \end{pmatrix}\right) = \lambda^2 + a\lambda +b = (\lambda-\alpha)^2\end{equation*}
の場合を検討する。
この場合、先程やったような対角化ができない。と、いうのも、対角化できるとすれば、は \begin{equation*} A = P^{-1}\begin{pmatrix} \alpha & 0 \\ 0 & \alpha \end{pmatrix} P \end{equation*}
のように表示される他ないが、これはがすでに
の対角行列であることを意味している。そして、
は残念ながらそうなってはいない(そもそもなっていないから対角化しようとしている)
ただ、こういう場合でも楽にべき乗を計算できるようないい形に変換することができる。その形を一般にジョルダン標準形という。実のところ、対角化した行列も、このジョルダン標準形に分類される。
細かい説明はしないが、今回の場合であれば、は、
\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*}
とすることができる。
次に対角化した時と同じように、を求める必要があるが、
への基底変換の行列と考えて求める。
ここで問題になるのがとは何なのかということだが、結論だけ述べると、この場合は
の固有ベクトルではないベクトルを一つ選び、それを
とする、
に
を作用させたものを、
とすると、このように決めた
が狙いの基底になる。
基底がそれでいいことの簡単な説明
理屈(らしきもの)を述べると、まず、よって、
\begin{equation*} v_2=\begin{pmatrix} 1 \\ 0 \end{pmatrix} ,\space v_1=\begin{pmatrix} \alpha \\ 1\end{pmatrix}\end{equation*}
などと決めることができる。
基底が分かりさえすれば、は対角化した時と同じように求められるので、
\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*}
結論
以上のことから、の一般解を求めることができた。
\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*}
余談が複素解になるときは、オイラーの定理から、解を三角関数の形で書くことができる。
特に物理学だと軌道の関数の値域が実数範囲という条件が付くことが(多分)多いので、一般解にくっつく虚数部分の係数を消去できる。そうすると軌道が
の和で表せて、合成すれば
一個で表せるので、運動が周期性を持つことがわかる。減衰振動などは、そのあたりの様態がよくあらわれる運動だと思う。