オイラー法(2階常微分方程式)
y''=f(x, y, y') の形の2階常微分方程式を、連立1階に変換してオイラー法で数値的に解くツール。初期条件と刻み幅を入れるだけで、終点での y の近似値・解のグラフ・各ステップの (x, y, y') 表を表示します。
入力
y''=
例題(タップで入力)
単振動 y''=-y
減衰振動 y''=-0.2v-y
自由落下 y''=-9.8
右辺で使える変数:x(独立変数), y(解), v(=y')/記号:+ - * / ^(べき乗)/関数:sin cos tan exp log(自然対数) ln log10 sqrt abs pow など/定数:pi(π), e。三角関数の角度はラジアンで扱います。
計算結果
x = 6.25 における y の近似値
y ≒ 1.168029
y'' = -y(このとき y' ≒ 0.0449)
ステップ数
125 回
刻み幅 h
0.05
初期条件
y(0) = 1
y'(0) = 0
数値解の推移(抜粋)
| n | x | y | y'(v) |
|---|---|---|---|
| 0 | 0 | 1 | 0 |
| 9 | 0.45 | 0.910786 | -0.439539 |
| 18 | 0.9 | 0.636337 | -0.800653 |
| 27 | 1.35 | 0.227648 | -1.008918 |
| 36 | 1.8 | -0.23612 | -1.018969 |
| 45 | 2.25 | -0.662932 | -0.824279 |
| 54 | 2.7 | -0.966093 | -0.459357 |
| 63 | 3.15 | -1.081809 | 0.00626 |
| 71 | 3.55 | -1.004095 | 0.430994 |
| 80 | 4 | -0.725077 | 0.833883 |
| 89 | 4.45 | -0.293866 | 1.078189 |
| 98 | 4.9 | 0.206258 | 1.111165 |
| 107 | 5.35 | 0.676257 | 0.921376 |
| 116 | 5.8 | 1.020907 | 0.541935 |
| 125 | 6.25 | 1.168029 | 0.044858 |
計算方法・使い方
- 右辺 f(x, y, y') と、初期値 x0・y0・y'0、刻み幅 h、終点 xend を入力すると、y''=f(x, y, y') を v=y' とおいて連立1階系に直し、オイラー法で逐次計算します。終点での y の近似値を大きく表示します。
- 右辺では変数として x(独立変数)・y(解)・v(=y')が使えます。使える記号は + - * / と ^(べき乗)、丸括弧、単項マイナスで、2x や 2sin(x) のような掛け算記号の省略にも対応します。
- 関数は sin・cos・tan・asin・acos・atan・sinh・cosh・tanh・exp・log(自然対数)・ln・log10・sqrt・cbrt・abs・pow(底,指数) に対応し、定数は pi(π)と e が使えます。三角関数の角度はラジアンで扱います。
- 結果には解 y(x) のグラフ(終点を色つきマーカーで表示)と、各ステップの (x, y, y') の値の表(抜粋)が並びます。刻み幅 h を小さくするほど近似精度が上がります。
- 単振動 y''=−y、減衰振動 y''=−0.2y'−y、自由落下 y''=−9.8 などの例題をタップすると、式と初期条件がまとめて入力されます。
- 入力した式や初期条件は外部に送信されず、すべてブラウザ内で計算されます。eval などを使わない独自の数式パーサで安全に評価します。
関連する計算ツール
関数 f(x) のグラフ描画
数値解析sin(x) や x^2-2 などの数式を入力すると、指定した x の範囲で関数のグラフを自動描画。最大・最小・ゼロ点や代表点の値も同時に確認できます。
計算する →関数 f(x), g(x) のグラフ描画
数値解析2つの数式 f(x) と g(x) を同じ座標平面に色分けで重ねて描画。区間内の最大・最小値や交点も自動で求めます。
計算する →データ点 f(x) のグラフ描画
数値解析(x, y) のデータ点を入力するだけで、折れ線+点のグラフを自動描画。点数・y の最小最大・平均も同時に確認できます。
計算する →データ点 f(x), g(x) のグラフ描画
数値解析2系列の(x, y)データ点を入力すると、f(x)とg(x)を色分けで重ねた折れ線グラフを描き、各系列の点数・最大最小を表示します。
計算する →