微分方程数值解法1-Euler法和Runge-Kutta法
Euler法
欧拉法为一阶泰勒展开逼近局部函数(隐式方程),通过调整步长不断靠近零点
使用
- 欧拉法:每步计算1次
,为一阶方法,误差为 - 改进欧拉法:每步计算2次
,为二阶方法,误差为
Runge-Kutta法
Runge-Kutta法要求解析解具有较好的光滑性
一阶Runge-Kutta法:
- 利用一阶欧拉法思想,每步计算区间
内多个点的斜率值,然后将其加权平均作为平均斜率,也不必计算更高阶的泰勒项
二阶Runge-Kutta法:
- 对改进欧拉法的进一步改进,满足一定条件的计算格式簇统称为二阶龙格-库塔格式,其包含改进欧拉法
四阶经典龙格-库塔格式
应用实例,定步长
显然解析解:
令斜率
Adams 亚当姆斯法
将已知节点值加权平均
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)