蛙跳积分法

维基百科,自由的百科全书
跳转至: 导航搜索

蛙跳积分法是一种对微分方程进行积分的简单方法,尤其是在动力系统的情况下。这个方法在不同学科中有不同的名字。特别是它与速度Verlet方法等同,后者是Verlet积分法中的一个变体。

蛙跳积分法相当于在交错的时间点计算位置和速度,在时间上相互交错,所以他们相互'跃过'对方。例如,位置为整数的时间步长而速度为整数加一半的时间步长。

蛙跳积分法是一个二阶的方法因此通常要好于一阶的欧拉方法。不同于欧拉方法,它对振荡运动稳定,只要满足 dt < 1/\omega[1].

蛙跳积分法的方程可写为:

x_{i+1} = x_i + v_{i+1/2}\, dt
v_{i+1/2} = v_{i-1/2} + a_{i}\, dt

这些方程可被处理为速度为整数步长的形式:

x_{i+1} = x_i + v_i\, dt + a_i\, \frac{dt^2}{2}


v_{i+1} = v_i + \frac{a_i + a_{i+1}}{2}\,dt. [2]

这第二种形式通常要求解隐式的第二个方程,因为a可能依赖于v.

这个方程的一个应用是重力模拟,因为在这种情况下加速度只依赖于引力质量的位置;虽然更高阶的积分器(如龙格-库塔法)更常用。

参考[编辑]

  1. ^ The Leap-Frog Method
  2. ^ 4.1 Two Ways to Write the Leapfrog

参见[编辑]