定数係数線形斉次微分方程式

$\def\coldr{\rcol{\mathrm dr}}\def\coldvecx{\xcol{\mathrm d\vec x}}\def\intdx{\opcol{\int \mathrm dx}}\def\E{\mathrm e}\def\I{\mathrm i}\definecolor{opcol}{RGB}{149,139,0}\definecolor{hai}{RGB}{137,137,137}\definecolor{tcol}{RGB}{166,54,109}\definecolor{kuro}{RGB}{0,0,0}\definecolor{xcol}{RGB}{169,103,49}\def\opcol#1{{\color{opcol}#1}}\def\ddx{\opcol{{\mathrm d\over \mathrm dx}}}\def\ddt{\opcol{{\mathrm d\over \mathrm dt}}}\def\xcol#1{{\color{xcol}#1}}\definecolor{ycol}{RGB}{217,61,137}\def\ycol#1{{\color{ycol}#1}}\def\haiiro#1{{\color{hai}#1}}\def\kuro#1{{\color{kuro}#1}}\def\kakko#1{\haiiro{\left(\kuro{#1}\right)}}\def\coldx{{\color{xcol}\mathrm dx}}\def\Odr{{\cal O}}\definecolor{ncol}{RGB}{217,51,43}\def\ncol#1{{\color{ncol}#1}}\definecolor{zcol}{RGB}{196,77,132}\def\zcol#1{{\color{zcol}#1}}\definecolor{thetacol}{RGB}{230,0,39}\def\thetacol#1{{\color{thetacol}#1}}\def\diff{\mathrm d}\def\kidb{\opcol{\mathrm db}}\def\kidx{\opcol{\mathrm dx}}\def\coldy{\ycol{\mathrm dy}}\def\coldtheta{\thetacol{\mathrm d\theta}}\def\ddtheta{\opcol{{\mathrm d\over\mathrm d\theta}}}\def\tcol#1{{\color{tcol}#1}}\def\coldt{\tcol{\mathrm dt}}\def\kidtheta{\opcol{\mathrm d\theta}}\def\dtwodx{\opcol{\diff^2\over\diff x^2}}\def\kokode#1{~~~~~~~{↓#1}}\def\goverbrace{\overbrace}\def\coldz{\zcol{\mathrm dz}}\def\kidt{\opcol{\mathrm dt}}\definecolor{rcol}{RGB}{206,114,108}\def\rcol#1{{\color{rcol}#1}}\def\coldtwox{\xcol{\mathrm d^2x}}\def\PDC#1#2#3{{\opcol{\left(\opcol{{\partial \kuro{#1}\over \partial #2}}\right)}}_{#3}}\def\PDIC#1#2#3{{\opcol{\left(\opcol{\partial \over \partial #2}\kuro{#1}\right)}}_{#3}}\def\PD#1#2{{\opcol{\partial \kuro{#1}\over \partial #2}}}\def\PPDC#1#2#3{{\opcol{\left(\opcol{\partial^2 \kuro{#1}\over \partial #2^2}\right)}}_{#3}}\def\PPDD#1#2#3{{\opcol{{\partial^2 \kuro{#1}\over \partial #2\partial #3}}}}\def\PPD#1#2{{\opcol{{\partial^2 \kuro{#1}\over \partial #2^2}}}}\def\kidy{\opcol{\diff y}}\def\ve{\vec{\mathbf e}}\def\colvecx{\xcol{\vec x}}\definecolor{usuopcolor}{RGB}{237,234,203}\def\usuopcol#1{\color{usuopcolor}#1}\def\vgrad#1{{\usuopcol{\overrightarrow{\opcol{\rm grad}~\kuro{#1}}}}}\def\dX{\rcol{\mathrm dX}}\def\dY{\thetacol{\mathrm dY}}\def\opdf{\opcol{\mathrm df}}\def\coldf{\tcol{\mathrm df}}\def\dtwof{\opcol{\mathrm d^2f}}\def\murasakidb{\zcol{\mathrm d b}}\def\ao{\ycol}\def\aodV{\ycol{\diff V}}\def\aka{\xcol}\def\akadm{\xcol{\diff m}}\def\gunderbrace{\underbrace}$

特性方程式

 ここでは線形斉次かつ係数$A_i\kakko{\xcol{x}}$が定数$A_i$である場合、すなわち \begin{equation} \left( A_n\left(\ddx\right)^n +A_{n-1}\left(\ddx\right)^{n-1} +\ldots +A_{1}{\ddx} +A_0 \right)\ycol{y} =0\label{teisuusenkeiseiji} \end{equation} の形の微分方程式を解く一般的な方法を示そう。

 まず、この微分方程式には、$\ycol{y}=\E^{\lambda \xcol{x}}$という形で表せる解がある($\lambda$はこの後決める定数)。なぜなら \begin{equation} {\ddx }\E^{\lambda\xcol{x}}=\lambda\E^{\lambda\xcol{x}},~~ \left({\ddx }\right)^2\E^{\lambda\xcol{x}}=\lambda^2\E^{\lambda\xcol{x}},\ldots, \left({\ddx }\right)^n\E^{\lambda\xcol{x}}=\lambda^n\E^{\lambda\xcol{x}} \end{equation} となることを使うと、微分方程式は \begin{equation} \left( A_n\lambda^n +A_{n-1}\lambda^{n-1} +\cdots+ A_1 \lambda + A_0 \right)\E^{\lambda\xcol{x}}=0 \end{equation} という式に変わる。よって、特性方程式(characteristic equation)と呼ばれる以下の式 \begin{equation} A_n\lambda^n +A_{n-1}\lambda^{n-1}+\ldots +nA_1 \lambda + A_0=0\label{tokusei} \end{equation} を満たす$\lambda$が存在していれば、その$\lambda$を代入した$\ycol{y}=\E^{\lambda\xcol{x}}$が解になるのである。


 $\E^{\lambda\xcol{x}}$という関数の前に来ると、$\ddx$という微分演算子が$\lambda$という(数)に変わる。微分演算子はそのままでは扱いづらいので、後ろに適当な関数を持ってくることで扱いやすくしよう、という狙いが根本にある。なお、このような、(演算子)関数=(数)関数という形はこの後もあちこちで登場する。このような関数を「(演算子)に対する固有関数」、(数)を「(演算子)に対する固有値」と呼ぶ。

 特性方程式に重解がない場合、$n$個の異なる解があるからそれを$\lambda_1,\lambda_2,\ldots,\lambda_n$とすれば、 \begin{equation} \alpha_1\E^{\lambda_1\xcol{x}} + \alpha_2\E^{\lambda_2\xcol{x}} + \alpha_3\E^{\lambda_3\xcol{x}} +\ldots + \alpha_n\E^{\lambda_n\xcol{x}}\label{senkeiseijikai} \end{equation} のような線形結合を作ると未定パラメータ$n$個(上の場合、$\alpha_1,\alpha_2,\ldots,\alpha_n$)を持った解ができて、これで一般解が求められたことになる。ここで特性方程式が解$\lambda_1,\lambda_2,\ldots,\lambda_n$を持つことは、\式{tokusei}が \begin{equation} A_n\left(\lambda-\lambda_1\right)\left(\lambda-\lambda_2\right)\left(\lambda-\lambda_3\right) \ldots\left(\lambda-\lambda_n\right)=0 \end{equation} と「因数分解」できることであり、それはつまり元々の微分方程式が \begin{equation} A_n\left(\ddx-\lambda_1\right)\left(\ddx-\lambda_2\right)\left(\ddx-\lambda_3\right) \ldots\left(\ddx-\lambda_n\right) \ycol{y} =0\label{factorDE} \end{equation} と因数分解(いわば微分演算子の因数分解である)できるただし、こう考えてもよいのはたとえば$\left(\ddx -\lambda_1\right)\left(\ddx -\lambda_2\right)$と、$\left(\ddx -\lambda_2\right) \left(\ddx -\lambda_1\right)$が同じ場合、つまりこの二つの微分演算子が「交換する」場合に限る。今は定数係数なのでもちろん大丈夫。、ということと同じである。この式の解は \begin{equation} \left(\ddx-\lambda_1\right)\ycol{y} =0,~~ \left(\ddx-\lambda_2\right)\ycol{y} =0,~~ \left(\ddx-\lambda_3\right)\ycol{y} =0,~\ldots~, \left(\ddx-\lambda_n\right)\ycol{y} =0 \end{equation} という$n$本の微分方程式のそれぞれの解の線形結合になるのだ、と考えても解が出てくる。

 特性方程式に重解がある場合、微分演算子の因数分解の結果、$ \left(\ddx-\lambda_1\right)\ycol{y} =0$ではなく \begin{equation} \left(\ddx-\lambda_1\right)^2\ycol{y} =0\label{lambdadouble} \end{equation} という式が出てくることになる(たとえば$\left(\left(\ddx\right)^2-2\ddx +1\right)\ycol{y}=0$という微分方程式は$\left(\ddx-1\right)^2\ycol{y}=0$になる)。この式の解は$\ycol{y}=\E^{\lambda_1\xcol{x}}$の他にもう一つ、$\ycol{y}=\xcol{x}\E^{\lambda_1\xcol{x}}$がある。代入して確認すると、 \begin{equation} \begin{array}{rl} & \left(\ddx-\lambda_1\right) \left(\ddx-\lambda_1\right) \left(\xcol{x}\E^{\lambda_1\xcol{x}}\right)\\[4mm] =& \left(\ddx-\lambda_1\right) \biggl( \goverbrace{\E^{\lambda_1\xcol{x}}}^{\xcol{x}を微分した項} + \goverbrace{\lambda_1\xcol{x}\E^{\lambda_1\xcol{x}}}^{\E^{\lambda_1\xcol{x}}を微分した項} -\lambda_1\xcol{x}\E^{\lambda_1\xcol{x}} \biggr)\\ =& \left(\ddx-\lambda_1\right)\E^{\lambda_1\xcol{x}}=0 \end{array} \end{equation} となり、確かに$\ycol{y}=\xcol{x}\E^{\lambda_1\xcol{x}}$(およびこれの定数倍)は、$\left(\ddx-\lambda_1\right)^2\ycol{y} =0$の解である。一般解は今求めた$\ycol{y}=\E^{\lambda_1\xcol{x}}$と$\ycol{y}=\xcol{x}\E^{\lambda_1\xcol{x}}$の線形結合となり、$\ycol{y}=\left(D\xcol{x}+C\right)\E^{\lambda_1\xcol{x}}$と表せる。


 上の答えを出す方法として、 \begin{equation} 任意の関数g\,\kakko{\xcol{x}}に対し、~~ \left(\ddx-\lambda\right)\left( \E^{\lambda\xcol{x}}g\,\kakko{\xcol{x}}\right) = \E^{\lambda\xcol{x}}\ddx g\,\kakko{\xcol{x}}\label{ddxA} \end{equation} を先に証明しておくのも良い方法である。この式を使うと、$\left(\ddx - \lambda\right)^2 \left(\E^{\lambda\xcol{x}}g\,\kakko{\xcol{x}}\right)=0$という方程式は$\E^{\lambda\xcol{x}}\left(\ddx\right)^2 g\,\kakko{\xcol{x}}=0$という方程式に変わるから、解き易い後者の式を解けばよい(この答えは$g\,\kakko{\xcol{x}}=D\xcol{x}+C$である)。


微分の階数が高くなったら多項式の次数をそれに応じて上げて \begin{equation} \left( \ddx - \lambda \right)^k f\kakko{\xcol{x}}=0~~~の解は~~~ \ycol{y}=\left( C_{k-1}\xcol{x}^{k-1}+ C_{k-2}\xcol{x}^{k-2}+ \ldots+C_1\xcol{x}+C_0\right)\E^{\lambda\xcol{x}}\label{njuukaieq} \end{equation} とすればよい($C_0,C_1,\ldots,C_{k-1}$は未定パラメータ)。証明するには実際に代入してもよいし、上の置き換えを使って考えてもよい。

複素数を使って解く線形微分方程式の例:減衰振動

 特性方程式が複素数解を持つ場合はどうすればよいかを、実例で考えておこう。

 物体の運動を考える。質量$m$の物体に\文中式{復元力$-k\xcol{x}$}と\文中式{空気抵抗$-K\ddt\xcol{x}$}が働くと、運動方程式 \begin{equation} m\left(\ddt\right)^2 \xcol{x}= -K\ddt\xcol{x}-k\xcol{x}\label{Fkvkx} \end{equation} にしたがって運動が起こる。この微分方程式を解いてみよう(重力は考えないことにする)。

 $\xcol{x}=\E^{\lambda\tcol{t}}$として特性方程式を作ると、$m\lambda^2 +K\lambda +k=0$となる。これの解は(二次方程式の解の公式を用いて) \begin{equation} \lambda_\pm={-K\pm\sqrt{K^2-4mk}\over 2m}=-{K\over 2m}\pm{{\sqrt{K^2-4mk}}\over 2m} \end{equation} となる。以下ではバネ定数$k$が非常に大きくて$K^2-4mk$が負になる場合を考えよう。

 $\omega={\sqrt{4mk-K^2}\over 2m}$($\omega$は実数である)を定義すると、 $\lambda_\pm=-{K\over 2m}\pm\I\omega$と書ける。

 こうして解を \begin{equation} \xcol{x}= C_+ \E^{-{K\over 2m}\tcol{t}+\mathrm i\omega\tcol{t}} +C_- \E^{-{K\over 2m}\tcol{t}-\mathrm i\omega\tcol{t}}~~~~(C_+,C_-は任意の定数) \end{equation} この「任意」は「任意の実数」ではなく「任意の複素数」であることに注意。 または$\E^{-{K\over 2m}\tcol{t}}$が共通しているからまとめて、 \begin{equation} \xcol{x}=\E^{-{K\over 2m}\tcol{t}}\left( C_+ \E^{\mathrm i\omega\tcol{t}} +C_- \E^{-\mathrm i\omega\tcol{t}}\right)\label{fukusokai} \end{equation} と表すことができる。この解は一見複素数である。

 この答えは一見複素数に見えるが、実際に欲しいのは実数解である。そこで、以下の二つの処方箋のどちらかにしたがって実数解を得る。

 (1)の方法を取る場合、$C_+=C,C_-=C^*$と調整することで \begin{equation} \xcol{x}= \E^{-{K\over 2m}\tcol{t}}\left( C\E^{\mathrm i\omega\tcol{t}} +C^* \E^{-\mathrm i\omega\tcol{t}}\right) \end{equation} とすれば実数解となる。

 (2)の方法を取る時は、$C_+=|C_+|\E^{\mathrm i\alpha},C_-=|C_-|\E^{\mathrm i\beta}$と極表示し \begin{equation} \xcol{x}=\E^{-{K\over 2m}\tcol{t}}\bigl( |C_+|\E^{\mathrm i(\omega\tcol{t}+\alpha)} +|C_-|\E^{-\mathrm i(\omega\tcol{t}-\beta)}\bigr) \end{equation} としてからこの実数部分を取り出せば、 \begin{equation} \xcol{x}=\E^{-{K\over 2m}\tcol{t}}\bigl( |C_+|\cos\kakko{\omega\tcol{t}+\alpha} +|C_-|\cos\kakko{\omega\tcol{t}-\beta}\bigr) \label{coscos} \end{equation} となる。

 ここで、求めた解のアニメーション を動かした。

線形非斉次方程式の例:強制振動

 はじめに長さの違う振り子を一本の棒につけたものを振ってみせて、「振り子の振動数と同じ振動数で棒を動かすことで特定の振り子だけを揺らせられる」というのを見せました。

線形非斉次な方程式の例として、バネ振り子に外から力$F_0\cos \omega\tcol{t}$を加えた場合の運動方程式 \begin{equation} m\left(\ddt\right)^2 \xcol{x}= -k\xcol{x}+F_0\cos \omega\tcol{t} \end{equation} を解いてみよう。非斉次方程式の一般解を得るには斉次方程式の一般解と非斉次方程式の特解を足せばよい。そのためには特解を求める必要がある。

 $\xcol{x}=A\cos\omega \tcol{t}$ではないかと予想して代入してみると、 \begin{equation} -mA\omega^2 \cos \omega\tcol{t}= -k A\cos\omega\tcol{t}+F_0\cos\omega\tcol{t} \end{equation} となるから、 \begin{equation} (k-m\omega^2)A = F_0 \end{equation} として、$A={F_0\over k-m\omega^2}$という答えが出る。つまり振幅$A$ が一つの値に決まってしまう(たまたま、$k=m\omega^2$だったら分母が0になって困るが、それは極限などを使って考える)。

 $k=m(\omega_0)^2$とすると$A={F_0\over m((\omega_0)^2-\omega^2)}$となり、この式は$\omega=\omega_0$でやばいことになる(そうなる状況では実は、振幅がどんどん大きくなっていくことがわかる。詳しい計算は教科書参照)。

 斉次にした方程式 \begin{equation} m\left(\ddt\right)^2 \xcol{x}= -k\xcol{x} \end{equation} の一般解は \begin{equation} \xcol{x}=B\cos\omega_0\tcol{t}+C\sin\omega_0\tcol{t} \end{equation} である(ここで、$\omega_0=\sqrt{k\over m}$)。よって非斉次方程式の一般解は \begin{equation} x\kakko{\tcol{t}}=\gunderbrace{B\cos\omega_0\tcol{t}+C\sin\omega_0\tcol{t}}_{斉次方程式の一般解}+\gunderbrace{{F_0\over k-m\omega^2}\cos\omega \tcol{t}}_{非斉次方程式の特解} \end{equation} になる(二種類の解が、それぞれ違う角振動数($\omega_0$と$\omega$)で振動することに注意)。

 ここで、求めた解のアニメーション を動かした(授業ではこのページが表示できなかったので、同等の別のプログラムを見せた)。

受講者の感想・コメント

 青字は受講者からの声、赤字は前野よりの返答です。

線形結合はあまり解ける気がしない。がんばります。
いや、線形結合は解くものではないです。

複素数が出てからわからなくなった。
これから先、複素数とは友達になってもらわないと困ります。あと、わからなかったら質問を!

定数係数の線形斉次も、解き方さえ覚えれば簡単だということがわかった。
そうなんです。でも「覚える」んじゃなくて「理解」してください。

複素数が初めて役にたった。
初めてじゃないと思うし、もちろん最後でもない(これからめっちゃ役に立つ)。

線形が楽だということを実感した。
楽でしょ。逆に言うと、非線形だとたいへんなんです。

重解を出すところが今日一番スッキリした。
うまく答えが出てきているでしょ。

予習しておかないとついていけない。ききんと予習する。
予習も復習も、よろしく。

λが複素数になったり、知らなかった知識がたくさんでてきておもしろかった。
いろいろ新しいことがわかってくると、楽しいですね。

手で動かして振動させる手品が数学で表せるのが面白かった。
まぁ、物理現象ってのは数学で表せるものなのです(だいたいは)。

寒かった(多数)。
ついクーラーつけちゃったんですが、寒いと思ったら切ってね。