跳转到主内容
思享编程网:思考分享,玩转编程世界!

阿当姆斯法,微分方程的解法神器?

一、方法背景

大家知道,我们在解微分方程时,常用的欧拉法、梯形法、改进欧拉法和龙格-库塔法都属于单步法,即计算下一个点的时候只用到上一步的信息。但是,这些方法有时候精度不够,怎么办呢?这时候,阿当姆斯法就登场了!

二、算法原理及推导过程

  • 辛普森方法:这个方法大家应该都很熟悉,它是基于二次多项式的插值方法。

  • 汉明方法:这个方法其实跟辛普森方法类似,只是插值的次数不同。

  • 隐式四阶阿当姆斯方法:这个方法比较复杂,它是一个隐式的方法,需要解线性方程组。

  • 预估-校正阿当姆斯法:这个方法结合了预估和校正的思想,可以提高计算的精度。

三、算例实现

了解了原理之后,我们来看看如何实现阿当姆斯法。下面是一个简单的例子:

def adams_method(f, x0, y0, h, t):
                            

相关文章