欧拉方法计算器
使用欧拉方法数值求解任何一阶常微分方程 y' = f(x, y)。查看迭代步骤表、叠加在斜率场上的欧拉折线图,以及在 h、h/2 和 h/4 步长下的实时收敛对比——包含可选的精确解误差分析。
检测到广告拦截,导致我们无法展示广告
MiniWebtool 依靠广告收入免费提供服务。如果这个工具帮到了你,欢迎开通 Premium(无广告 + 更快),或将 MiniWebtool.com 加入白名单后刷新页面。
- 或升级 Premium(无广告)
- 允许 MiniWebtool.com 显示广告,然后刷新
欧拉方法计算器
这款 欧拉方法计算器 使用经典的(前向)欧拉方法数值求解任何形式为 \( y' = f(x, y), \; y(x_0) = y_0 \) 的一阶初值问题。它提供完整的迭代表,在实时斜率场上绘制欧拉折线图,比较三种不同步长下的解以便您直观地观察方法的收敛过程,并且如果您提供精确的闭式解,它还会生成每步误差分析。
什么是欧拉方法?
欧拉方法是近似求解初值问题的最简单算法。从解曲线上的已知点 \( (x_0, y_0) \) 开始,它沿着局部斜率 \( f(x, y) \) 重复推进大小为 h 的小步:
从几何角度看,每一步都是一段短直线,其斜率等于当前点处微分方程的值。由此产生的折线 —— 即 欧拉折线 —— 是对真实(通常是曲线)解的一种近似。
它的准确性如何?
欧拉方法是一种 一阶 方法。每步的局部截断误差为 \( O(h^2) \),而在固定区间内积分后的全局误差为 \( O(h) \)。在实践中:
- 将步长减半大致会使全局误差 减半。
- 误差随积分区间的长度线性增长。
- 在解的曲率较高的位置,误差最为严重。
内置的步长比较(h, h/2, h/4)让您可以直接看到这种线性收敛:启用该选项并检查三个最终值是否趋向于一个共同极限,且每个值与极限的距离大约是前一个值的一半。
如何阅读图表
可视化功能在单个坐标平面上叠加了四种信息:
- 灰色斜率场 —— 短线段,其倾斜度等于该点处的 \( f(x, y) \)。可以将其视为“ODE 规定的流向”。任何解曲线都必须在每一点与该场相切。
- 靛蓝色欧拉折线 —— 逐步数值解。每段都从上一个网格点开始,并沿 \( f(x_n, y_n) \) 方向延伸距离 h。
- 绿色虚线精确解曲线 —— 仅在您提供闭式解时出现。垂直的橙色虚线段是带符号的局部误差 \( y_n - y_{\text{exact}}(x_n) \)。
- 橙色和绿色比较曲线 —— 在步长比较启用时显示,反映了在 h/2 和 h/4 条件下重新运行同一问题的结果。
如何使用此计算器
- 输入 ODE 的右侧表达式,在标有 y' = 的字段中输入。使用
x和y作为变量。支持的运算符包括+ − × ÷ ^,支持的函数包括sin, cos, tan, asin, acos, atan, exp, ln, log, log10, log2, sqrt, abs。 - 设置初始条件:起始值 x₀、该点处的初始 y₀、步长 h(正值表示前向积分,负值表示后向积分)以及步数 n。
- (可选)提供精确解 y(x)。计算器将计算每一步的 \( |y_n - y(x_n)| \),并报告最大误差和最终误差。
- 切换可视化选项:斜率场默认开启;步长比较会额外叠加两条 h/2 和 h/4 处的曲线。
- 点击“运行”。结果部分将显示统计摘要、图表、收敛比较面板以及完整的迭代表。将鼠标悬停在行上会突出显示图表上相应的点(反之亦然)。
计算实例
考虑 \( y' = x + y, \; y(0) = 1 \),步长 h = 0.1,共 10 步。精确解为 \( y(x) = -x - 1 + 2e^x \)。应用欧拉公式可得:
最终误差约为 0.249。将 h 减半至 0.05,最终误差降至约 0.13;再次减半至 0.025,误差降至约 0.067 —— 呈现出清晰的线性收敛,正如理论所预言的那样。
欧拉方法与其他数值方法对比
| 方法 | 阶数 | 每步评估次数 | 全局误差 | 备注 |
|---|---|---|---|---|
| 欧拉方法 (前向) | 1 | 1 | O(h) | 最简单的方法;最适合教学和原型开发。 |
| 改进欧拉法 (Heun) | 2 | 2 | O(h²) | 平均步首和步末的斜率。 |
| 中点法 (RK2) | 2 | 2 | O(h²) | 评估每步中点处的斜率。 |
| 龙格-库塔法 (RK4) | 4 | 4 | O(h⁴) | 通用的主力求解器;每步精度极高。 |
| 后向 (隐式) 欧拉法 | 1 | 1 (外加求根) | O(h) | 无条件稳定;对刚性 ODE 至关重要。 |
当欧拉方法出现问题时
前向欧拉方法在以下三种情况下可能会表现不佳:
- 步长过大 —— 折线会发生震荡或发散。解决方法是减小 h;h, h/2, h/4 的比较功能让这一点变得直观可见。
- 刚性 ODE —— 同时包含快速衰减和缓慢衰减模式的方程会迫使 h 变得极小以维持稳定性。此时应切换到隐式(后向欧拉)或 BDF 方法。
- f(x, y) 中的奇点 —— 除以零、负数开平方
sqrt或非正数求对数ln都会停止积分。计算器会清楚地报告出错的步骤。
常见应用
- 物理学 —— 转化为一阶方程组的牛顿第二定律、放射性衰变 \( \dot{N} = -\lambda N \)、牛顿冷却定律。
- 生物学与流行病学 —— 逻辑回归增长 \( \dot{y} = r\,y(1 - y/K) \)、仓室 SIR 模型。
- 经济学 —— 连续复利、简单的索洛增长模型。
- 化学 —— 一阶反应动力学 \( \dot{c} = -k c \)。
- 教学 —— 在转向 RK4 或自适应求解器之前引入数值积分的概念。
常见问题解答
什么是欧拉方法?
欧拉方法是求解初值问题 y' = f(x, y), y(x0) = y0 的最简单的数值程序。在每一步中,它通过 y_{n+1} = y_n + h · f(x_n, y_n) 推进解,实际上是在短距离 h 内遵循当前点的斜率。它是具有一阶精度的,意味着全局误差为 O(h)。
欧拉方法的准确性如何?
欧拉方法的局部截断误差为 O(h²),全局误差为 O(h)。将步长减半大致会使全局误差减半。这就是为什么此计算器中 h, h/2 和 h/4 的收敛性比较非常有意义:您可以观察到误差随 h 大致呈线性缩小。
欧拉方法什么时候会失效?
对于刚性问题或步长相对于解的局部曲率过大时,欧拉方法可能会变得不稳定。您可能会看到数值解发生震荡、发散至无穷大或明显偏离真实解。减小 h 通常会有所帮助;对于刚性方程,通常更倾向于使用隐式欧拉等隐式方法。
如何选择步长?
首先选择一个在感兴趣的区间内能产生约 10 到 50 步的 h。如果欧拉折线明显偏离斜率场或您的精确解,请将 h 减半并重新运行。使用内置的 h, h/2, h/4 比较功能来检查三条曲线是否趋于一致。
欧拉方法和龙格-库塔法 (RK4) 有什么区别?
四阶龙格-库塔法在每步中评估四个点的斜率,并以权重 (1, 2, 2, 1)/6 进行组合,其全局误差为 O(h⁴) —— 在步数相同的情况下,比欧拉方法的 O(h) 高出好几个数量级。欧拉方法在教授数值积分概念以及非常简单或低精度应用中仍具价值。
我可以将其用于微分方程组吗?
此计算器处理单个标量一阶常微分方程 y' = f(x, y)。对于方程组或高阶 ODE,您可以将方程改写为一阶方程组并使用专门的系统求解器,或者将二阶方程转换为两个一阶方程并逐个分量求解。
我可以进行反向积分吗?
可以 —— 输入负步长 h 即可。计算器将从 x₀ 开始沿负方向推进 n 步。这对于从已知当前状态重建过去状态非常有用。
延伸阅读
引用此内容、页面或工具为:
"欧拉方法计算器" 于 https://MiniWebtool.com/zh-cn//,来自 MiniWebtool,https://MiniWebtool.com/
由 miniwebtool 团队开发。更新日期:2026年4月22日
您还可以尝试我们的 AI数学解题器 GPT,通过自然语言问答解决您的数学问题。