前向欧拉方程

欧拉方法是一种一阶数值方法,用以对给定初值的常微分方程(即初值问题)求解。它是一种解决数值常微分方程的最基本的一类显型方法

\begin{cases} \dot x(t)=v(t) \\ \dot v(t)=a(t) =\frac{F}{m} \end{cases}

我们用上面的方程来控制位置和速度的变化率。

  • 位置的变化率是速度,
  • 速度的变化率是加速度,

按牛顿第二定律,力除以质量,在典型的设置中,我们也知道时间0处的位置和 速度。
现在我们使用计算机来了解这些方程式导致的结果,最简单的方法称为前向欧拉方法。

Small time steps of size h:

\begin{cases} x(h)=x(0)+hv(0) \\ v(h)=v(0)+h\frac{F}{m} \end{cases}

欧拉的思想是通过在很短的时间内来解决这些方程式。如果我们从初始位置——x(0)和初始速度——v(0)开始,那么在一个很的短时间间隔h内会发生什么呢?

位置将大约增加速度的h倍:如果速度是每秒2米,我们等待3秒,位置将改变6米。当然,实际仿真时我们使用的时间步长要小得多。
速度的变化也是类似的,在一些小的时间间隔h之后,速度将是其原始值加上时间步长乘以加速度,即\frac{F}{m}

所以这个方程会使我们获得大概从时刻0到时刻h的解。这里用等号其实并不是很准确,应该是约等于。
\begin{cases} x(2h)=x(h)+hv(h) \\ v(2h)=v(h)+h\frac{F}{m} \end{cases}
以同样的方式,我们可以用另一个时间步长得出从h到2h的结果。我们知道在第一步结束时我们已达到的位置,并且我们继续使用新的速度,这导致了新的位置——速度也是类似的。反复迭代此过程,就可以随时查找位置和速度的估计值。

另一种角度看上面的公式:从当前时刻出发,根据当前时刻的函数值及其导数,可得到下一时刻的值。因此显式欧拉法又称为前向欧拉(Forward Euler)

参考
https://www.youtube.com/watch?v=42-eBNm3rCY

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容