QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3124|回复: 0
打印 上一主题 下一主题

二阶和四阶的泰勒展开法(Taylor's method)来数值求解常微分方程初值问题

[复制链接]
字体大小: 正常 放大

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-12-31 17:55 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
这段 MATLAB 代码实现了使用二阶和四阶的泰勒展开法(Taylor's method)来数值求解常微分方程初值问题,并将结果与精确解进行比较。以下是代码的主要解释:
- {3 K' \. _' t. e) ^function y = Taylor(a, b, N, af)9 ], m/ j4 \/ D% L' |1 A+ D& f" _1 m
    h = (b - a) / N;
6 w, K2 Q/ y. C+ `    x(1) = a;
- A0 p9 T! V4 Q3 n- G- F% |( W    y2(1) = af;
& s: p- ]0 _( p4 V; c    y4(1) = af;6 m& M- {1 |$ \6 k0 D
    jqj(1) = af;
- N% {; g" H/ r2 k
& g+ t7 m9 F4 K: t1 p7 I" ^: _    for i = 2:N
2 @8 b& _$ S/ l& G! W        % 二阶Taylor法# A  s  E" I2 }) P! v# O
        y2(i) = y2(i-1) + h * ((1 - h/2) * (x(i-1) - y2(i-1)) + 1);
$ ]# R" [% O) M7 a4 a% Y6 @* T4 D, V$ ~, g; F3 t8 C/ \
        % 四阶Taylor法
% g) P# w% L( t  c        y4(i) = y4(i-1) + h * ((1 - h/2 + h^2/6 - h^3/24) * (x(i-1) - y4(i-1)) + 1);
0 t; X* M2 l! x2 h+ G3 J9 y
' R; h  |9 J# V" v" r9 i        x(i) = a + (i-1) * h;- d( k7 K1 I. ]2 U1 Q; M( f' G2 |
        jqj(i) = x(i) + exp(-x(i));# X2 U4 b- B& `4 H# `  x
    end
9 ]1 I3 H5 k+ f% M' @/ p  k  L5 p
9 X4 a/ S$ E3 R" Q    % 将结果输出为矩阵形式1 h( B# }/ U* e9 A" v0 \1 o8 R5 _
    result = [x', y2', y4', jqj'];) Q$ s$ c# `2 }3 i+ B' v

* V% v& |* Y% V$ X) a    % 绘制曲线1 s0 [7 x( i5 a4 k' y& X* I
    plot(x, y2, 'r', x, y4, 'b', x, jqj, 'g');
& r4 w' ]# b( ]& {: l* c( j    legend('Taylor2法', 'Taylor4法', '精确解');/ G# @1 V, `8 z
end
- p) o: E1 r( r3 H4 u
2 P# l5 C3 \3 }3 `$ n+ ^  b* y3 ^该函数的输入参数包括求解区间 [a, b]、步数 N 以及初始条件 af。函数使用二阶和四阶的泰勒展开法来逐步求解微分方程。最后,结果以矩阵形式输出,并绘制了二阶Taylor法、四阶Taylor法和精确解的曲线。8 p! `1 j1 V  S2 J0 |
你可以调用这个函数,例如 Taylor(0, 1, 100, 1),其中参数表示解在区间 [0, 1] 上,步数为 100,初始条件为 1。  v" S* I( Z* y: Q& n
' O' h( @8 q" h( e, _/ i6 z2 l4 h
# L' d! _1 Y! h; o& B3 V) c! j6 R3 X
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-7-30 15:39 , Processed in 1.066326 second(s), 51 queries .

回顶部