龙格-库塔法

Runge-Kutta Methods
是一组数值方法,主要用于求解微分方程的初值问题。这些方法通过在数值上近似微分方程的解,提供了一种在特定时间步长下计算函数值的手段。
作为欧拉法的扩展,提供更高阶的精度和更好的稳定性。

基本思想

每个时间步长内,通过在不同的点计算导数的近似值,然后利用这些值的组合来预测下一个时间点的解

将欧拉法的形式抽象出来,类似于拉格朗日中值定理的形式:
如果将 Δx 写为 h,作为采样率,记 y=f(x,y)

yn+1=yn+hf(xn+θh,y(xn+θh))

平均斜率:

k=f(xn+θh,y(xn+θh))

第四阶方法 (RK4)

经典龙格-库塔法 (Classical Runge-Kutta Methods):
如 RK2、RK3、RK4,其中 RK4 是最常用的方法。

经典龙格-库塔第四阶方法的迭代公式为:
k1=hf(xn,yn)
k2=hf(xn+h2,yn+k12)
k3=hf(xn+h2,yn+k22)
k4=hf(xn+h,yn+k3)
yn+1=yn+16(k1+2k2+2k3+k4)

h是步长

特点 (Characteristics)

  1. 多阶段 (Multi-stage): 龙格-库塔法通过多个阶段来近似导数,提高了计算的精度。
  2. 自适应步长 (Adaptive Step Size): 可以根据误差估计调整步长,以控制误差在可接受的范围内。
  3. 稳定性 (Stability): 某些龙格-库塔方法具有良好的稳定性,适用于刚性方程。

龙格-库塔法是数值分析中的核心工具之一,随着计算技术的发展,这些方法在求解微分方程方面变得更加高效和精确。