AZNPEULERMETHOD: 数値計算の説明 オイラー法
Return to Top 数値計算の説明 オイラー法 ルンゲ・クッタ法 差分法 図形表現のページ 参考文献 Last Updated 2002-6/01
数値計算の説明 オイラー法 数値計算を行う方法には、 オイラー法、ルンゲ・クッタ法、差分法、有限要素法などがあり、計算対象とする 現象を表現する方程式の種類や、必要とする精度等に応じて使い分けます。 常微分方程式は、オイラー法やルンゲ・クッタ法で数値解を求めることができます。 常微分方程式には、 1階微分方程式 dy/dx=2(x+1)y 連立1階非線形微分方程式 dx/dt=ax-bxy dy/dt=-cy+dxy 2階微分方程式 Md2x/dt2+pdx/dt+qx=0 連立2階微分方程式 M1d2x/dt2+hdx/dt+k1x-k2(y-x)=Asinλt M2d2y/dt2 +k2(y-x)=0 があります。 ------------------------------------------------------------------------------- オイラー法: 導関数 dy/dx=f(x,y)=k が与えられているとき、関数 yを求めることを目的とします。 例えば、y3の値は、位置x2におけるy2の値が前回計算で求められてあり、 位置x2における傾き k は与えられた導関数dy/dxから計算できるので、 刻み幅h を傾き k に乗算することにより、 y2をこれに加えて、y3の値とする。以下同様の手順を限界まで繰り返す。 [ y3の値 = 位置x2におけるy2の値 + 位置x2における傾き k * 刻み幅h ] この手順において、x0におけるy0の値を初期値として与える必要がある。 初期値を与えれば、全てのxに対してyの値が算出可能である。 なお、初期条件の個数としては、1階の微分方程式では1つ。2階の微分方程式では2つ必要です。 計算手順: 1.x1=x0+h, y1=y0+k0・h 2.x2=x1+h, y2=y1+k1・h 3.x3=x2+h, y3=y2+k2・h ・・・ N.xn+1=xn+h, yn+1=yn+kn・h ただし、 kn は下式にて求める。 kn=k1 ここで、 k1=f(xn,yn) の計算を行う。 必要回数にて、計算を終了する。 算出された(x1,y1),(x2,y2),(x3,y3),(x4,y4),,,(xi,yi),,,(xn,yn)を 平面上にプロットすると図形が描かれる。 こうして解としての関数 y が図形上に求められたことになる。 以上がオイラー法です。考え方や、プログラミングは大変簡便ですが、 計算精度を必要とする場合は、ルンゲ・クッタ法が使われます。 -------------------------------------------------------------------------------
参考文献 //数値計算 //鷹尾「数値計算のはなし」日科技連 //登坂「偏微分方程式の数値シミュレーション」東京大学出版会 //水本「FORTRANによる数値計算法入門」近代科学社 //山崎「偏微分方程式の数値解法入門」森北出版
AZURE Return to Top