龙格-库塔方法
概述
龙格-库塔方法(Runge-Kutta Methods)是一族用于数值求解常微分方程(ODE)初值问题的迭代算法,由卡尔·龙格(1895)和马丁·威廉·库塔(1901)相继发展。相比简单的欧拉方法,龙格-库塔方法通过在一个步长内取多个斜率的加权平均,大幅提高了精度而不显著增加计算量。四阶方法(RK4)是工程和科学计算中最广泛使用的标准算法之一。
关键内容
- 核心思想:在区间 $[t_n, t_{n+1}]$ 内取多个"试探斜率",加权平均后推进数值解
- 四阶 RK4(最常用):每步计算四个斜率 $k_1, k_2, k_3, k_4$,全局误差为 $O(h^4)$,比欧拉方法($O(h)$)高四阶
- 自适应步长:现代实现(如 RK45)通过比较不同阶方法的结果,自动调整步长以控制局部误差,是科学计算库(scipy, MATLAB ode45)的默认ODE求解器
- 显式 vs 隐式:标准 RK4 为显式方法,适合非刚性问题;刚性 ODE 需用隐式 Runge-Kutta(如 Gauss-Legendre 方法)
- 历史:龙格(1895)首先提出二阶形式,库塔(1901)推广至高阶并系统化理论