QQ登录

只需要一步,快速开始

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

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

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

1186

主题

4

听众

2922

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-12-31 17:55 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
这段 MATLAB 代码实现了使用二阶和四阶的泰勒展开法(Taylor's method)来数值求解常微分方程初值问题,并将结果与精确解进行比较。以下是代码的主要解释:: U+ A! Q* ]' R1 c* Q- c2 C
function y = Taylor(a, b, N, af)
: ?9 J6 n) v0 @6 y$ L9 G. i# t/ N    h = (b - a) / N;
1 O" c) j2 C2 T0 v7 Q6 f& B7 @8 U) R    x(1) = a;/ I  w1 Z1 X  d+ K8 r* g) b, J- p
    y2(1) = af;$ D) S# a+ Z  t: v8 @$ X* F1 _. m
    y4(1) = af;. c1 z; O. k$ a, d( d
    jqj(1) = af;
9 y0 o& m5 _: x& r& e* D* k4 w1 l
    for i = 2:N
' Q' i! H  ^0 }1 h1 ]" T, N% X        % 二阶Taylor法
0 h; Z$ t1 b+ X0 Q  [        y2(i) = y2(i-1) + h * ((1 - h/2) * (x(i-1) - y2(i-1)) + 1);# X) W  |+ P; }

3 `9 j9 p/ W6 V& U0 K; Y        % 四阶Taylor法6 D" M7 b3 O, g* _
        y4(i) = y4(i-1) + h * ((1 - h/2 + h^2/6 - h^3/24) * (x(i-1) - y4(i-1)) + 1);8 S, C- k" }' E  I) k6 R) C

8 f- P& j# }4 c. f7 t        x(i) = a + (i-1) * h;
- t: L9 q1 t! ?0 V3 o, Z0 U        jqj(i) = x(i) + exp(-x(i));9 ^; d  C/ E7 k% f! m
    end
$ u2 X# @4 k4 A# W2 a& R2 w6 n! K2 O
    % 将结果输出为矩阵形式
) m. ?7 E8 I1 @0 d- S4 f* O. M    result = [x', y2', y4', jqj'];1 x5 z" `; x1 b7 u" b/ P. D
9 W. s% {2 a/ o1 L
    % 绘制曲线
: J$ G/ P# b# G/ P5 ]& w    plot(x, y2, 'r', x, y4, 'b', x, jqj, 'g');( p! o% L2 l: A* D/ J/ M
    legend('Taylor2法', 'Taylor4法', '精确解');' p7 S8 [: t, [9 w
end
+ ?0 k8 x) }3 `2 k' e7 R, c8 ^0 P" A
该函数的输入参数包括求解区间 [a, b]、步数 N 以及初始条件 af。函数使用二阶和四阶的泰勒展开法来逐步求解微分方程。最后,结果以矩阵形式输出,并绘制了二阶Taylor法、四阶Taylor法和精确解的曲线。* i: ]: @. |& S3 [, I- S8 p' K
你可以调用这个函数,例如 Taylor(0, 1, 100, 1),其中参数表示解在区间 [0, 1] 上,步数为 100,初始条件为 1。
! i+ K; ]4 \. o; L0 i( m3 d9 e6 X: e+ K" _* P$ g

% p' r, p' H! }$ g4 i) S
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-4-16 15:19 , Processed in 0.828743 second(s), 50 queries .

回顶部