dy/dx = y,y(0) = 1,h = 0.1 → y(1) ≈ 2.718280(误差约 2×10⁻⁶) RK4 每步算四个斜率并按 1:2:2:1 加权。对 y' = y,x = 1 处结果为 2.718280,与精确值 e = 2.718282 相比绝对误差约 2×10⁻⁶——仅 10 步就达到四阶精度。Classical fourth-order Runge-Kutta (RK4)
dy/dx = f(x, y) = y
Start: x0 = 0, y0 = 1 → target x = 1, n = 10 steps, h = 0.1
i x_i y_i |error|
0 0.000000 1.000000 0.000000
…
10 1.000000 2.718280 0.000002
Stage detail, step 1 (x = 0 → 0.1):
k1 = f(0, 1) = 1
k2 = f(0.05, 1.05) = 1.05
k3 = f(0.05, 1.0525) = 1.0525
k4 = f(0.1, 1.10525) = 1.10525
y1 = 1 + h/6·(k1 + 2k2 + 2k3 + k4) = 1.105171
Final estimate: y(1) ≈ 2.718280
Exact y(x) = e^x: y(1) = 2.718282, |error| ≈ 0.000002
高斯衰减 dy/dx = −2x·y,y(0) = 1 → 仅 4 步得 y(1) ≈ 0.367934 非自治方程 y' = −2xy 的精确解为 y = e^(−x²)。即使只用 4 步(h = 0.25),RK4 也得到 y(1) ≈ 0.367934,与精确值 0.367879 相比误差约 5.5×10⁻⁵。Classical fourth-order Runge-Kutta (RK4)
dy/dx = f(x, y) = -2x*y
Start: x0 = 0, y0 = 1 → target x = 1, n = 4 steps, h = 0.25
Final estimate: y(1) ≈ 0.367934
Exact y(x) = e^(-x^2): y(1) = 0.367879, |error| ≈ 0.000055