ここでは、a, b, c, d が定数の場合を扱います。y1' = ay1 + by2 + r1(x)
y2' = cy1 + dy2 + r2(x)
変数の数が 2 つよりもっと増えても対応できるように、 ベクトルと行列を使って
とおきましょう。そうすると、連立微分方程式は
y = ( y1 ) 、 A = ( a b ) 、 r (x) = ( r1(x) ) y2 c d r2(x)
というシンプルな形になります。y' = Ay + r (x)
実は、§2.2 で扱った y'' + ay' + by = r (x) という式は、行列を使って
と書けますから、これから述べる方法でも解くことができます。 とくに、階数が高くなると因数分解が難しくなったり、 ややこしい重解があらわれたりするようになりますので、 高階の方程式をコンピュータで解く場合には、 行列を使うことが多いようです。
d
---
dx( y ) = ( 0 1 ) ( y ) + ( 0 ) y' -b -a y' r (x)
さて、このように行列・ベクトルを駆使した書き方になると、 必然的に、線形代数(数学 II)の知識を駆使することになります。 必要な事項は随時説明しますが、詳しい話や、私の説明で不審な点は、名著
の第 8 章〜第 10 章を参照してください。ちなみに私は、 この本を追試の翌日に読みました(^_^;)。薩摩順吉・四ッ谷晶二『キーポイント 線形代数』岩波書店
この形の方程式の解き方は、2 種類あります。最初に紹介するのは、 解が次のような形になっていると仮定して代入する方法です。
ここで k は定数ベクトル、λ は定数です。y = keλx
このような解が 2 つ(3 元の方程式なら 3 つ、4 元の方程式なら 4 つ) あれば、一般解はそれらの線形結合になります。
上の形の式を実際に y' = Ay に代入してみると、次のようになります:
λkeλx = Akeλx
ここで eλx はスカラーですから、 行列と関係なく割り算することができます。そうすると、
となります。つまり、λ と k は行列 A の固有値・固有ベクトルということになります。λk = Ak
さて、例題で具体的に見てみましょう。
【例題】y' = ( 0 1 ) y を解け。 1 0
まずは固有値・固有ベクトルを求めましょう。
上の行列を A と書くことにします。λk = Ak ですから、(A - λE )k = 0 となります(E は単位行列)。ここで k ≠ 0 とすると、det (A - λE ) = 0 でなければなりません。 具体的に成分で書いて計算してみると、
となりますから、固有値は λ = ±1 となります。
det (A - λE ) = ( -λ 1 ) = λ2 - 1 1 -λ
次に固有ベクトル k です。k の第 1・第 2 成分を k(1)、k(2) と書くことにすると、
となります。すなわち、k(1) = k(2) ですから、
( k(1) ) = ( 0 1 ) ( k(1) ) = ( k(2) ) k(2) 1 0 k(2) k(1)
(c1 は任意のスカラー)となります。
k1 = c1 ( 1 ) 1
となります。
k2 = c2 ( 1 ) -1
以上から、一般解は、
となります。
y = k1ex + k2e-x = ( c1ex + c2e-x ) c1ex - c2e-x
固有値 λ がひとつだけでも、それに対応する固有ベクトルが 2 種類(もちろん、一次独立なものが 2 つ)あれば問題ありません。たとえば、 A = E(単位行列)の場合、固有値は λ = 1 だけですが、それに対応する固有ベクトルとしては
のふたつがありますから、一般解は
1x = ( 1 ) 、 1y = ( 0 ) 0 1
と書けますね。あるいは、1x と 1y のかわりにy = (c11x + c21y ) ex
を使って y = (c1145゜ + c21-45゜) ex とも書けますね。
145゜ = ( cos 45゜ ) 、 1-45゜ = ( cos (-45゜) ) sin 45゜ sin (-45゜)
問題は、λ がひとつしか見つからず、しかも固有ベクトルが 1 種類しかない場合です。
この行列を A と書くことにします。A の固有値を計算してみると、λ = 1(重解)だけです。そして、 それに対応する固有ベクトルは、
【例題】y' = ( 0 1 ) y を解け。 -1 2
だけです。ここには未定係数がひとつしかないので、 これが一般解というわけにはいきません。
k = c ( 1 ) 1
そこでここでは、定数変化法を使います。
今までの議論では k は定数ベクトルでしたが、これが x の関数であるとしてみます。y = k(x)ex を元の方程式に代入すると、
となります。両辺を ex で割って、左辺の k(x) を移項すると、[k' (x) + k(x)] ex = Ak(x)ex
となります。k' (x) = (A-E ) k(x)
さて、この式は、行列を使った表示のままでは、 これ以上は変形できません。というのは、A - E という行列は正則ではないので、 単純に逆行列をかけるというわけにはいかないからです。
仕方がないので、成分表示で計算してしまいましょう。 k(x) の第 1・第 2 成分を k(1)、 k(2) とおき、元の方程式に代入します。 ついでに A - E も成分表示にしてしまうと、
となります。
( k(1)' ) = ( -1 1 ) ( k(1) ) = ( k(2) - k(1) ) k(2)' -1 1 k(2) k(2) - k(1)
さて、よく見ると k(1)' = k(2)' となりました。そこで、この右辺を微分してしまえば、全部が k(1)' の定数倍(k(2)' の定数倍としても同じことです)になって、うまくいきそうです。
実際に微分計算してみましょう。1 行目だけを計算することにします。
従って、k(1)' = k(2)' = a (定数)となり、 k(1) = ax + b1、 k(2) = ax + b2 (b1、b2 は定数) ということがわかります。未定係数は 2 つしかないはずですから、 これを元の方程式に代入してみると、b2 = a + b1 とわかります。k(1)'' = k(2)' - k(1)' = 0
従って、一般解は、
となります。
y = ( ax + b ) ex ax + (a+b)
【この部分は講義では扱っていません】
もうひとつ、別の解き方もあります。「行列の対角化」「Jordan の標準形」を利用する方法です。
固有値・固有ベクトルがすべて一次独立ならば上の方法でもよいのですが、 そうではなく、しかも 2 次元ではなく 3 次元、4 次元、… となると、 こちらのほうが機械的に解けるという意味で楽です。
この行列の固有値・固有ベクトルは、
【例題 1】y' = Ay、 A = ( 0 1 ) を解け。 1 0
でしたね。ここでは、c1 = c2 = 1 のものを選ぶことにします。(注)
λ1 = 1、 k1 = c1 ( 1 ) ; λ2 = -1, k2 = c2 ( 1 ) 1 -1
(注)ここでは A は対称行列なので、c1 = c2 = 1/√2 とすれば、下の行列 P が直交行列になります(→『キーポイント 線形代数』)。 しかし今回は、計算を楽にするために c1 = c2 = 1 とすることにします。
さて、このように固有値・固有ベクトルが見つかったとき、
とおけば、P = (k1 k2)
となるのでした。この行列を B とおくことにします。
P -1AP = ( λ1 0 ) = ( 1 0 ) 0 λ2 0 -1
つぎに、y' = Ay という式を、B を使った形に書き直すことを考えます。A = PBP -1 を元の方程式に代入して、
y' = PBP -1y
ここで、右辺を B × (何かのベクトル) という形に書き直したいので、まず手始めに P -1y = z とおき、右辺を(まだ P という係数が残っていますが)Bz という形にします。 y' を z で表すために上の式を微分して、 z' = P -1y' すなわち y' = Pz' ですから、
という単純な形になりました。Pz' = PBz すなわち z' = Bz
以下は成分表示で計算します。
とおくと、
z = ( z(1) ) z(2)
となりますから、すぐに
( z(1)' ) = ( 1 0 ) ( z(1) ) = ( z(1) ) z(2)' 0 -1 z(2) -z(2)
とわかります。y = Pz でしたから、z(1) = c1ex、 z(2) = c2e-x
となり、さきに求めた結果と一致しました。
y = Pz = ( 1 1 ) ( c1ex ) = ( c1ex + c2e-x ) 1 -1 c2e-x c1ex - c2e-x
【例題 2】y' = Ay、 A = ( 0 1 ) を解け。 -1 2
この行列の固有値・固有ベクトルは、
だけでしたね。(ここでも前問と同じく c1 = 1 としておきます。)こういう場合は対角化はできないので、 Jordan の標準形に持ち込むことになります。
λ1 = 1、 k1 = c1 ( 1 ) 1
行列 A を Jordan の標準形に変換するには、まず、 (A - λ1E )k2 = k1 となるようなベクトル k2 を求めてから、P = (k1 k2) とおけば、
が Jordan の標準形になるのでしたね。(→『キーポイント 線形代数』)B = P-1AP
具体的に計算してみましょう。
とおき、さらに A - λ1E と k1 も成分表示にしてしまうと、
k2 = ( k2(1) ) k2(2)
となり、これより k2(2) - k2(1) = 1 すなわち
( -1 1 ) ( k2(1) ) = ( 1 ) -1 1 k2(2) 1
となります。ここでは c2 = 0 としておきましょう。
k2 = ( k2(1) ) = ( c2 ) k2(2) c2 + 1
では、B を計算してみましょう。P = (k1 k2) ですから、
とおくと、
P = ( 1 0 ) 1 1
はたしかに Jordan の標準形になっています。
B = P -1AP = ( 1 0 ) ( 0 1 ) ( 1 0 ) = ( 1 1 ) -1 1 -1 2 1 1 0 1
以下は前問と同じです。z = Py とおくと、 元の方程式は z' = Bz となります。
つづいて成分表示で計算します。
とおくと、
z = ( z(1) ) z(2)
となります。z(1)' = z(1) + z(2) ……(*)
z(2)' = z(2) ……(**)
(**) より z(2) = c2ex となります(→§1.1)から、 (*)は
となり、その一般解はz(1)' = z(1) + c2ex
となります(→§1.3)。z(1) = c1ex + c2x ex
最後に y を計算します。y = Pz でしたから、
となり、やはりこれも前に求めた解と一致しました。
y = ( 1 0 ) ( c1ex + c2xex ) = ( c2x + c1 ) ex 1 1 c2ex c2x + (c1+c2)
【例題】微分方程式この微分方程式の一般解は、前に例題でやったとおり、について、x = 0 における y の値を y0 とするとき、任意の x における y の値を、 y0 を用いて表せ。
y' = Ay、 A = ( 0 1 ) 1 0
でしたね。後の都合があるので、これを
y = ( c1ex + c2e-x ) c1ex - c2e-x
と書いておきます。
y = ( ex e-x ) ( c1 ) ……(*) ex -e-x c2
これに x = 0、y = y0 を代入します。
これより c1、c2 を求めると、
y0 = ( 1 1 ) ( c1 ) 1 -1 c2
となりますから、任意の x での y の値は、これを (*) に代入して、
( c1 ) = ( 1/2 1/2 ) y0 c2 1/2 -1/2
となります。ちなみに、(ex + e-x)/2、(ex - e-x)/2 にはそれぞれ cosh x (hyperbolic cosine)、sinh x (hyperbolic sine) という名前がついていますから、次のように書けます。
y = ( ex e-x ) ( 1/2 1/2 ) y0 ex -e-x 1/2 -1/2 = ( (ex + e-x)/2 (ex - e-x)/2 ) y0 (ex - e-x)/2 (ex + e-x)/2
この右辺の行列を、以下 M と書くことにします。
y = ( cosh x sinh x ) y0 sinh x cosh x
さて、この方程式の解が y = My0 という形に書かれてしまうと、 これが微分方程式の解だということはもう忘れて、行列 M の性質だけに着目して y の振る舞いを議論することができます。そこで、この M という 「y0 にかかっている行列」には、resolvent という名前がついています。
たとえば、
と書くことにすると、上の式から x を消去して (各自で計算してください;私も計算せずに黒板を丸写ししています(^_^;)) y は y(1)y(2) 平面 (この平面を相平面 phase plane とか解平面とかいいます; 3 元の方程式の場合には、同様に y(1)y(2)y(3) 空間を相空間とか解空間とかいいます) の上で
y = ( y(1) ) 、 y0 = ( y0(1) ) y(2) y0(2)
という双曲線(ただし、y0(1) = ±y0(2) の場合は、上の「一定」 がゼロになるので、直線 y(1) = ±y(2))を描くことがわかります。(y(1))2 - (y(2))2 = (y0(1))2 - (y0(2))2 = 一定
x が時間を表しているとすると、これは y が時間とともにどのような軌跡を描くかを表していることになります。 (→『物理のキーポイント 力学編』の「惑星はなぜ楕円軌道を描くか」)
余談ですが、cosh x, sinh x には、cos x, sin x に似た次のような性質があります。
【演習問題】
について、y = aex(a は定数ベクトル)なる特解があるものと仮定して a を決定し、u = y - aex とおいて一般解を求めよ。
y' = Ay + r (x)、 A = ( 1 4 ) 、r (x) = ( 1 ) ex 1 1 1
について、A を Jordan 標準形に変換する行列を P とする。B = P -1AP (この行列が Jordan の標準形)、z = P -1y とおくとき、元の方程式は
y' = Ay + r (x)、 A = ( 0 1 ) 、r (x) = ( 0 ) -1 2 sin x
と表されることを示し、これを z の各成分について解き、これを用いて y を求めよ。z' = Bz + P -1r (x)