查看“︁反向欧拉法”︁的源代码
←
反向欧拉法
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[数值分析]]与[[科学计算]]中,'''反向欧拉法'''或'''隐式欧拉法'''是求解[[常微分方程]]最基本的[[常微分方程#数值方法|数值方法]]之一。其类似于(标准)[[欧拉法]],不过是一种[[隱式方法]]。反向欧拉法的时间误差为一阶。 == 描述 == 考虑[[常微分方程]] :<math> \frac{\mathrm{d} y}{\mathrm{d} t} = f(t,y) </math> 有初值<math> y(t_0) = y_0. </math>此处函数<math>f</math>与初值数据<math>t_0</math>、<math>y_0</math>均未知;函数<math>y</math>取决于实变量<math>t</math>,同样未知。数值方法产生一个序列<math> y_0, y_1, y_2, \ldots </math>,使<math> y_k </math>近似于<math> y(t_0+kh) </math>,其中<math> h </math>称为步长。 反向欧拉法计算近似值的方法是 :<math> y_{k+1} = y_k + h f(t_{k+1}, y_{k+1}). </math> <ref name="未命名-20240110220741">{{harvnb|Butcher|2003}}</ref>{{rp|57}} 异于(正向)欧拉法,后者用的是<math> f(t_k, y_k) </math>而非<math>f(t_{k+1}, y_{k+1})</math>。 反向欧拉法是一种隐式方法:新近似值<math> y_{k+1} </math>在方程两侧都出现,因此该方法要求解未知<math> y_{k+1} </math>的代数方程。对非[[刚性方程|刚性]]问题,这可采用[[定点迭代]]法: :<math> y_{k+1}^{[0]} = y_k, \quad y_{k+1}^{[i+1]} = y_k + h f(t_{k+1}, y_{k+1}^{[i]}). </math> 若序列收敛(在给定精度内),则该方法会将其极限作为新的近似 <math> y_{k+1} </math>。<ref name="未命名-20240110220741"/>{{rp|57}} 或者,也可以使用[[牛顿法|牛顿–拉斐森法]]求解代数方程。 == 推导 == 将微分方程<math> \frac{\mathrm{d} y}{\mathrm{d} t} = f(t,y) </math>自<math> t_n </math>积分到<math> t_{n+1} = t_n + h </math>,有 : <math> y(t_{n+1}) - y(t_n) = \int_{t_n}^{t_{n+1}} f(t, y(t)) \,\mathrm{d}t. </math> 现在用右手[[黎曼和|矩形法]]近似计算右式的积分: : <math> y(t_{n+1}) - y(t_n) \approx h f(t_{n+1}, y(t_{n+1})). </math> 最后,用<math> y_n </math>应近似于<math> y(t_n) </math>的性质,就得到了反向欧拉法公式。<ref name="未命名-20240110220741"/>{{rp|57}} 若用左手矩形法,同样的推导会得到(标准)欧拉法。 == 分析 == [[File:Stability region for BDF1.svg|thumb|圆盘外的粉色区域是反向欧拉法的稳域。]] 用[[大O符号]]表示反向欧拉法的局部[[截断误差]](LTE)(定义为迭代一步产生的误差)为<math> O(h^2) </math>。特定时刻<math> t </math>的误差为<math> O(h^2) </math>,这是说该方法的阶数为1。一般来说,具有<math> O(h^{k+1}) </math>LTE的方法定义为k阶。 反向欧拉法的绝对稳域是以1为圆心,半径为1的圆盘在平面内的补集,如图所示。<ref name="未命名-20240110220741"/>{{rp|70}}这包括整个复平面的左半部,使其适于求解[[刚性方程]]。<ref name="未命名-20240110220741"/>{{rp|71}}事实上,反向欧拉法甚至是[[L-稳定]]的。 利用反向欧拉法求解离散'''稳定'''系统的区域是半径为0.5的圆,位于z平面的(0.5, 0)处。<ref>Wai-Kai Chen, Ed., Analog and VLSI Circuits The Circuits and Filters Handbook, 3rd ed. Chicago, USA: CRC Press, 2009.</ref> == 推广与改进 == 反向欧拉法是(前向)[[欧拉法]]的一种变体。其他变体还有[[半隐式欧拉法]]和指数欧拉法。 反向欧拉法可视为1阶段的[[龙格-库塔法]],可用Butcher表描述: :<math> \begin{array}{c|c} 1 & 1 \\ \hline & 1 \\ \end{array} </math> 该方法也可看作是1步的[[线性多步法]],是Adams–Moulton法族中的第一个方法,也是[[后向微分法]]的第一个方法。 ==另见== *[[克兰克-尼科尔森方法]] == 注释 == {{reflist}} == 参考文献 == * {{Citation | last1=Butcher | first1=John C. | author1-link=John C. Butcher | title=Numerical Methods for Ordinary Differential Equations | publisher=[[John Wiley & Sons]] | location=New York | isbn=978-0-471-96758-3 | year=2003}}. {{常微分方程数值方法}} [[Category:数值微分方程]]
该页面使用的模板:
Template:Citation
(
查看源代码
)
Template:Harvnb
(
查看源代码
)
Template:Reflist
(
查看源代码
)
Template:Rp
(
查看源代码
)
Template:常微分方程数值方法
(
查看源代码
)
返回
反向欧拉法
。
导航菜单
个人工具
登录
命名空间
页面
讨论
不转换
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息