ルンゲ・クッタ法(2次・2階常微分方程式)
y''=f(x,y,y') を1階連立に変換し、2次ルンゲ・クッタ法で数値的に解きます。終点での y と y' を求め、解曲線のグラフと各ステップの数表を表示します。
入力
式の例(タップで入力)
変数は x(独立変数)、y(解)、v(= y'、解の傾き)。使える記号:+ - * / ^(べき乗)/関数:sin cos tan exp log(自然対数) ln log10 sqrt abs pow(a,b) など/定数:pi(π), e。
計算結果
x = 10 における近似解 y
y ≒ -0.333058
そのときの傾き y' ≒ 0.189841
ステップ数
100 回
刻み幅 h = 0.1
初期条件
y(0) = 1
y'(0) = 0
終点での解
y = -0.3331
y' = 0.1898
数値解の推移(抜粋)
| x | y | y'(= v) |
|---|---|---|
| 0 | 1 | 0 |
| 0.8 | 0.711093 | -0.663591 |
| 1.7 | -0.019739 | -0.840923 |
| 2.5 | -0.572066 | -0.47327 |
| 3.3 | -0.72085 | 0.105891 |
| 4.2 | -0.386692 | 0.570002 |
| 5 | 0.103275 | 0.58628 |
| 5.8 | 0.462488 | 0.270557 |
| 6.7 | 0.490978 | -0.197022 |
| 7.5 | 0.218389 | -0.439761 |
| 8.3 | -0.136527 | -0.399268 |
| 9.2 | -0.374116 | -0.101006 |
| 10 | -0.333058 | 0.189841 |
y' = -y - 0.2*v を y' = v, v' = f(x, y, v) の連立に変換し、2次ルンゲ・クッタ法で逐次計算しています。
計算方法・使い方
- 2階の微分方程式 y''=f(x,y,y') を、解 y とその傾き y'(v と表記)の2つを同時に追う1階連立に置き換えて解きます。式の中では独立変数 x、解 y、傾き v(=y')の3変数が使えます。
- 右辺の式・初期点 x0・初期値 y(x0)・初期傾き y'(x0)・刻み幅 h・終点 x_end を入力すると、終点での y と y' の近似値が大きく表示されます。
- 刻み幅 h を小さくするほど精度は上がりますが、ステップ数が増えて計算量も大きくなります。結果が振動・発散する場合はまず h を小さくして試してください。
- sin・cos・exp・log・sqrt などの関数や、円周率 pi・自然対数の底 e といった定数を式に含められます。2引数の pow(a,b) も利用できます。
- 単振動 y''=-y、減衰振動 y''=-y-0.2y'、外力のある強制振動など、物理でよく現れる運動方程式の挙動を手早く確認できます。
- 表示される数表は計算ステップを間引いた抜粋で、解曲線のグラフには初期点と終点の位置も合わせて示します。
関連する計算ツール
ルンゲ・クッタ法(4次・1階常微分方程式)
数値解析dy/dx=f(x,y) の右辺の数式と初期値 x0・y0、刻み幅 h、終点 xEnd を入力すると、古典的4次ルンゲ・クッタ法(RK4)で常微分方程式を数値的に解きます。終点での近似解 y、各ステップの k1〜k4 と y の値の表、解曲線のグラフを表示します。
計算する →ルンゲ・クッタ法(4次・2階常微分方程式)
数値解析y''=f(x,y,y') を4次ルンゲ・クッタ法で数値的に解く計算ツール。初期条件と刻み幅を入れるだけで、各ステップの x・y・y' の表と解曲線のグラフを表示します。
計算する →ルンゲ・クッタ法(2次・1階常微分方程式)
数値解析dy/dx=f(x,y) を2次ルンゲ・クッタ法(中点法)で数値的に解き、終点での近似解・数値解の表・解曲線グラフを表示します。
計算する →オイラー法(2階常微分方程式)
数値解析y''=f(x, y, y') の形の2階常微分方程式を、連立1階に変換してオイラー法で数値的に解くツール。初期条件と刻み幅を入れるだけで、終点での y の近似値・解のグラフ・各ステップの (x, y, y') 表を表示します。
計算する →
お客様の声
このツールを使った感想をお聞かせください。
レビューを投稿する
- ホーム
ルンゲ・クッタ法(2次・2階常微分方程式)