推荐一份 PIXAR SIGGRAPH 2001 物理模拟课程课件

虽然内容发布的年代较早,但是其中细致讲解了第二节课中的提到的不少知识点:Differential Equations, Numerical Integration (Explicit Euler, Midpoint Method, Runge Kutta, Implicit Euler)。相信在看读前三个课件之后,大家能够好的理解物理模拟和微分方程之间的关系。

链接:http://graphics.pixar.com/pbm2001/
(主要看 Lecture Notes 里的内容吧,Slides 中并没有特别多的细节。)


另外对第二讲的一个疑问:Midpoint Method 好像和 RK-2 是一致的,为什么课中提到 RK 可以分为 Explicit 但 Midpoint 被分为了 Implicit?谢谢!

7 Likes

中点法是用中点的导数估计区间内的导数。但是这个导数的估计也可以有两种方式:

  1. 使用一步前向估计: y[n+1/2]=y[n]+1/2*f(x[n],y[n])
  2. 使用平均值: y[n+1/2]=1/2*(y[n]+y[n+1])

这两种方式都是中点法,但是前者是Explicit算法,后者是Implicit算法。
至于RK2法,其形式与方法1相同,所以是Explicit算法。

5 Likes

我之前没有考虑到平均值这个方法 :ok_hand: 谢谢!