☆☆☆数学の基礎概念☆☆☆
微分方程式
-微分方程式-
独立変数xと未知関数yおよびその導関数y',y",・・・を含む方程式を微分方程式という。
yが1変数の関数つまり独立変数が1つならば常微分方程式、多変数の関数とその偏導関数を含み独立変数が2つ以上の方程式ならば偏微分方程式という。
1つの微分方程式の中に含まれる微係数の階数の最大値は、その微分方程式の階数と呼ばれる。階数nの微分方程式はn階微分方程式となる。
微分方程式が未知関数およびその導関数の多項式である時、最高階の微係数の次数を、その微分方程式の次数という。
また、未知関数およびそのすべての導関数について、1次または0次の微分方程式は線形微分方程式と呼ばれる。
一般に、n階微分方程式は、n個の任意の定数を含む解を持つ。そのような解は一般解、そのn個の定数は任意定数という。
n個の任意定数にある特定の値を代入して得られる解は特殊解と呼ばれる。
一般解の中の任意定数にいかなる値を代入しても得られない解があれば、それは特異解となる。微分方程式の一般解と特異解を求めることを、微分方程式を解くという。
1.常微分方程式
変数分離形
次の形の微分方程式は変数分離形と呼ばれている。
dy |
|
dx |
|
= |
f(x)g(y) |
この一般解は,両辺をg(y)[≠0と仮定]で割って、両辺をxで積分する。
|
dy |
|
g(y) |
|
|
= |
|
f(x)dx+c |
ここで、cは定数である。もしも、g(y0)=0となるようなy0が存在するならば、y=y0も解となる。
(変数分離形の事例)
dy |
|
dx |
|
= |
x2(y+1) |
|
y2(x-1) |
|
この式の解を求めてみる。これを次のように変形して、変数が分離した形にする。
dy |
|
dx |
|
= |
x2 |
|
(x-1) |
|
・ |
(y+1) |
|
y2 |
|
y2 |
|
(y+1) |
|
dy= |
x2 |
|
(x-1) |
|
dx |
次に、この左辺と右辺をそれぞれ積分すると、次式を得る。
|
y2 |
|
(y+1) |
|
|
dy |
= |
|
|
dy=(1/2)y2-y+log(y+1) |
|
x2 |
|
(x-1) |
|
|
dx |
= |
|
|
dx=(1/2)x2+x+log(x-1) |
したがって、一般解は、
(1/2)y2-y+log(y+1)=(1/2)x2+x+log(x-1)+c
となる。これを両辺に2を掛けて、右辺を左辺に移項し、変形すると、
(y+x)(y-x-2)+
|
log |
(y+1)2 |
|
(x-1)2 |
|
-2c=0 |
となる。ここで、定数項-2cを改めて、C=-2cと置くと、
(y+x)(y-x-2)+
|
log |
(y+1)2 |
|
(x-1)2 |
|
+C=0 |
となる。なお、y=-1も解となる。
同次形
次の形の微分方程式は同次形と呼ばれている。
これは、y/x=v,すなわち,y=vx とおいて、これを微分すれば、次式を得る。
dy |
|
dx |
|
=v+x |
dv |
|
dx |
|
これらを代入すれば、変数分離形に変形される。
v+x |
dv |
|
dx |
|
=f(v) |
dx |
|
x |
|
= |
dv |
|
f(v)-v |
|
したがって、これを積分すれば、一般解が得られる。
logx= |
|
dv |
|
f(v)-v |
|
|
+c |
ここで、v=y/xとすれば、一般解になる。
(同次形の解法事例)
(x3+y3)dx-3xy2dy=0
これは、両辺をx3で割ってみると、同次形の微分方程式であることがわかる。
ここで、y=xvと置くと、dy=vdx+xdvとなるので、これを代入すれば、次のように展開できる。
(1+v3)dx-3v2(vdx+xdv)=0
(1-2v3)dx-3xv2dv=0
dx |
|
x |
|
- |
3v2 |
|
1-2v3 |
|
dv=0 |
logx+(1/2)log(1-2v3)=c'
logx2(1-2v3)=2c'
x2(1-2v3)=c
但し、v=y/xであるから、
x3-2y3=cx
を得る。
-数値計算による常微分方程式の解法-
最も簡単な1階の常微分方程式は、
dx |
|
dt |
|
= |
f(t.x) |
で与えられる。
数値計算・オイラー法
1階の常微分方程式は、近似的に、次式で与えられる。
dx |
|
dt |
|
≒ |
x(t+h)-x(t) |
|
h |
|
= |
f(t,x) |
x(t+h)=x(t)+hf(t,x)
オイラー法では、上式の微分方程式を数値家計算で近似的に解く。
最初、初期値t0の時、x(t0)(=x0)を与える。
これを与えられた微分方程式に代入すれば、t0における傾きとt0+hでのx(t+h)の推定値が求められる。
次に、t0+hを新たなt0と考えて、同じような手続きを繰り返す。
この場合、キザミ幅hが大きいと、真のx(t0+h)とその推定値の間に大きな差が生じる。
この差はキザミ幅hを十分に小さくすれば、この差を小さくすることができる。
しかし、この計算を繰り返すことで、その累積誤差は次第に大きくなる。
数値計算・ルンゲ-クッタ法
オイラー法では、t0での傾きを利用して、x(t0+h)を推定した。
ルンゲ-クッタ法では、複数の点での傾きを利用する。
tの値をh刻みに取り、
tn=t0+nh(n=1,2,3,・・・)
として、xの値xnを次式で順々に求める。
xn+1=xn+(k1+2k2+2k3+k4)/6
ここで、
k1=hf(tn,xn) |
k2=hf(tn+h/2,xn+k1/2) |
k3=hf(tn+h/2,xn+k2/2) |
k4=hf(tn+h,xn+k3) |
数値計算・ミルン法(予測子修正子法)
さらに常微分方程式の数値解の精度を上げる方法として、ミルン法(予測子修正子法)がある。
この方法は、やはり独立変数tをh刻みに分割し、
tn=t0+nh(n=1,2,3,・・・)
として、xの値xnを順々に求めるが、xn-1まで求めた時に、xnの値を予測し、
fn=f(tn,xn)
を使って修正する。ミルン法では、xnの予測値xnPは、
xnP=xn-4+(4h/3)(2fn-3-fn-2+2fn-1)
で与える。修正されたxnCは、
xnC=xn-2+(h/3)(fn-2+4fn-1+fn)
で与えられる。ただし、右辺のfnは、最初にf(tn,xnP)を使用するが、
その次からは修正値xnCを用いてf(tn,xnC)を求め、修正値xnCを反復計算する。
そして、修正値の変化が予め与えて置いた微少量εより小さくなれば反復を止める。一般的には反復回数が数回で修正値が最終値xnCになるようにする。
2.偏微分方程式
偏導関数を含む方程式を偏微分方程式という。例えば、独立変数がxとyの関数zに関する偏導関数を含む方程式が次のように与えられているとする。
F |
|
x,y,z, |
∂z |
|
∂x |
|
, |
∂z |
|
∂y |
|
, |
∂2z |
|
∂x2 |
|
, |
∂2z |
|
∂x∂y |
|
, |
∂2z |
|
∂y2 |
|
|
=0 |
これは、2階の偏導関数を含む方程式であり、2階偏微分方程式と呼ばれる。もしも、1階の偏導関数しか含まれなければ、1階偏微分方程式と呼ばれる。いま、偏導関数を次のように表示する。
p= |
∂z |
|
∂x |
|
,q= |
∂z |
|
∂y |
|
,r= |
∂2z |
|
∂x2 |
|
,s= |
∂2z |
|
∂x∂y |
|
,t= |
∂2z |
|
∂y2 |
|
すると、2階偏微分方程式は次のように表示することができる。
F(x,y,z,p,q,r,s,t)=0
また、1階偏微分方程式は次のように表示することができる。
F(x,y,z,p,q)=0
なお、偏導関数は次のような記号を用いることもある。
fz= |
∂f |
|
∂z |
|
,Fp= |
∂F |
|
∂p |
|
,Gyq= |
∂2G |
|
∂y∂q |
|
2つの独立変数x,yを持つ偏微分方程式は、恒等的に満足する関数z(x,y)が存在すれば、その関数が方程式の解となる。そして、解を求めることを、その方程式を解く、または積分するという。
この時、偏微分方程式には、次の3種類の解が存在する。
- 完全解 2つの任意定数を含む解
- 一般解 1つの任意定数を含む解
- 特異解 完全解にも一般解にも含まれない解(必ずしも存在しない)
偏微分方程式には、標準形と呼ばれる次に示す形のものがある。そして、これらの形のものは、容易に完全解を求めることができる。
- F(p,q)=0
- F(x,p,q)=0
- F(y,p,q)=0
- F(z,p,q)=0
- F(x,p)=G(y,q)
- z=px+qy+F(p,q)
(1階偏微分方程式の完全解の事例)
いま、x,y,zの間に次の関係があったとする。
(x-a)2+(y-b)2+z2=1 但し、a,bは任意定数
これをxとyについて、偏微分すると、次の式を得る。
2(x-a)+2zp=0
2(y-b)+2zq=0
これらの3つの式から、任意定数a,bを消去する。
z2(p2+q2+1)=1
つまり、この1階偏微分方程式は、次の完全解を持つことを意味する。
(1階偏微分方程式の一般解の解法事例)
いま、次の1階偏微分方程式が与えられたとする。
(y-z)p+(z-x)q=z-y
この方程式は、ラグランジェの微分方程式と呼ばれ、次の形をしている。
P(x,y,z)p+Q(x,y,z)q=R(x,y,z)
この方程式を解くには、最初に、次の補助方程式と呼ばれる常微分方程式を解く。
この場合、その解として、次式が得られる。
u(x,y,z)=a
v(x,y,z)=b
また、任意の2変数uとvの関数f(u,v)から作った次式も解となる。
f(u,v)=0
すなわち、これらが求める一般解となる。したがって、与えられた1階偏微分方程式の補助方程式は、次のようになる。
これから次式を得る。
dx+dy+dz=0
xdx+ydy+zdz=0
これらを積分すると、次式になる。
x+y+z=a
x2+y2+z2=b
したがって、求める一般解は、次のようになる。
f(x+y+z,x2+y2+z2)=0
ここで、fは任意の関数である。
(2階線形偏微分方程式)
p= |
∂z |
|
∂x |
|
,q= |
∂z |
|
∂y |
|
,r= |
∂2z |
|
∂x2 |
|
,s= |
∂2z |
|
∂x∂y |
|
,t= |
∂2z |
|
∂y2 |
|
Rr+Ss+Tt+Pp+Qq+Zz=F
(係数 R,S,・・・,Fはx,yの関数)
これは次の4つの形に分類される。
- r=F, s=F, t=F
- r+Pp=F, s+Pp=F, s+Qq=F, t+Pq=F
- Rr+Ss+Pp=F, Ss+Tt+Qq=F
- Rr+Pp+Zz=F, Tt+Qq+Zz=F
3.差分方程式(階差方程式)
代表的な偏微分方程式として、放物型方程式と楕円型方程式がある。放物型方程式は、熱伝導方程式や拡散方程式が代表される。
∂u |
|
∂t |
|
=k2 |
∂2u |
|
∂x2 |
|
一方、楕円型方程式は、ラプラス方程式やポアソン方程式が代表される。
∂2u |
|
∂x2 |
|
+ |
∂2u |
|
∂y2 |
|
=0 |
∂2u |
|
∂x2 |
|
+ |
∂2u |
|
∂y2 |
|
=ρ |
(放物型方程式の数値解法)
∂u |
|
∂t |
|
=c2 |
∂2u |
|
∂x2 |
|
いま、これを次の初期条件および境界条件で解くことを考える。
初期条件 u(x,0)=f(x)
境界条件 u(0,t)=u(a,t)=0
この時、x軸の領域(0≤x≤a)をM等分して、その刻みをh=a/Mとする。また、t軸の刻みをkで刻むことにする。そして、一般に、umnは次のように表示する。
umn=u(mh,nk)
この場合、放物型微分方程式は、近似的に差分式(階差式)で置き換えることができる。
um,n+1-um,n |
|
k |
|
=c2 |
um-1,n-2um,n+um+1,n |
|
h2 |
|
ここで、簡単のために、
r=kc2/h2
置くと、
um,n+1=rum-1,n+(1-2r)um,n+rum+1,n
が得られる。これを用いれば、um-1,n,um,n,um+1,nから、um,n+1を求めることができる。
なお、m=1,2,3,・・・,M-1であり、u0,n+1とuM,n+1は、境界条件から、常に0である。
この時、rを小さくすると、k=rh2/c2が小さくなり、時間軸の進みは遅くなる。
しかし、rを大きくすると、不安定になる。もしも、r>1/2にすると必ず不安定になることが証明されている。
(楕円型方程式の数値解法)
∂2u |
|
∂x2 |
|
+ |
∂2u |
|
∂y2 |
|
=0 |
これはラプラス方程式と呼ばれ、境界Dに囲まれた領域Cで成立する。これを下記の境界条件の下で解くことを考える。
u(x,y)=Φ(x,y)
いま、平面に間隔hk格子点を設定し、その境界はx軸とy軸の格子点で交わるとする。
領域内の格子点(i,j)について、番号iは1からIMまで、番号jはJLからJUまで与えられているとする。
格子点(i,j)でuijが存在するとすれば、ラプラス方程式は、次式で近似できる。
1 |
|
4h2 |
|
(ui+1,j-2ui,j+ui-1,j)+ |
1 |
|
4h2 |
|
(ui,j+1-2ui,j+ui,j-1)=0 |
これは、整理すると、次式に変形できる。
ui,j=(ui+1,j+ui-1,j+ui,j+1+ui,j-1)/4
これを第k近似ui,jkから第k+1近似ui,jk+1へ、順次求めて行く方法は、緩和法と呼ばれる。
ui,jk+1=(ui+1,jk+ui-1,jk+ui,j+1k+ui,j-1k)/4
しかし、格子点数が多くなると、収束が遅くなる。そこで、加速係数ωを用いて、次のように修正する。この方法は加速緩和法と呼ばれる。
ui,jk+1=ui,jk+ω{(ui+1,jk+ui-1,jk+ui,j+1k+ui,j-1k)/4-ui,jk}
さらに、既に第k+1近似ui,jk+1が求められていれば、それを採用する方法がある。これは逐次式加速緩和法(SOR:Successive Over-Relaxation)と呼ばれる。
ui,jk+1=ui,jk+ω{(ui+1,jk+ui-1,jk+1+ui,j+1k+ui,j-1k+1)/4-ui,jk}
以上
(2013年3月24日)
戻る
|