QQ登录

只需要一步,快速开始

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

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

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

1186

主题

4

听众

2922

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-12-31 17:55 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
这段 MATLAB 代码实现了使用二阶和四阶的泰勒展开法(Taylor's method)来数值求解常微分方程初值问题,并将结果与精确解进行比较。以下是代码的主要解释:1 |6 ^" }! H, L1 r+ j/ [2 m7 I
function y = Taylor(a, b, N, af)* F8 e/ J9 G" j. N$ B
    h = (b - a) / N;
6 D, G  X" u- B4 Q; X/ b    x(1) = a;
, `2 {, O! o' T    y2(1) = af;
" M, _1 ]/ y7 E3 E    y4(1) = af;
" N5 U4 r& ~: d% z) @9 }1 ^3 V    jqj(1) = af;' y4 {4 f7 U. n9 s7 V
* }' o/ M! h+ R
    for i = 2:N! {3 f: E5 ^* K2 c) J
        % 二阶Taylor法0 A$ z7 Q4 C% I6 v2 H3 ~4 {( Q8 l% ]
        y2(i) = y2(i-1) + h * ((1 - h/2) * (x(i-1) - y2(i-1)) + 1);
+ ~$ b2 f, f9 s0 d8 F0 m$ V
8 N2 C, Q9 f3 y7 |; x) ^        % 四阶Taylor法! [3 y9 ]! Y* X% `
        y4(i) = y4(i-1) + h * ((1 - h/2 + h^2/6 - h^3/24) * (x(i-1) - y4(i-1)) + 1);( a# n6 ?2 U9 b+ q4 |) P

8 X/ u& }+ s3 z# B6 g" J        x(i) = a + (i-1) * h;8 b" U! v; s& A
        jqj(i) = x(i) + exp(-x(i));, B0 N$ r# n; Y) ^& d/ O* y
    end
8 C7 d* m1 W% g  R
% O* k% t! E8 w- G+ O4 ^    % 将结果输出为矩阵形式
$ k: W3 V$ D1 E" C    result = [x', y2', y4', jqj'];
& i9 @% l9 L6 O1 O4 T& r
/ P! h4 f+ c) t: ~" l3 J" t0 ~    % 绘制曲线
8 B3 A1 P0 C4 j* Q  Q    plot(x, y2, 'r', x, y4, 'b', x, jqj, 'g');
/ g3 y5 `8 M2 Z1 A9 h    legend('Taylor2法', 'Taylor4法', '精确解');
" Z- n+ ?. _) t1 u* H1 |end$ {3 s. c; H% t, I

6 Q, E! N5 u$ D9 s该函数的输入参数包括求解区间 [a, b]、步数 N 以及初始条件 af。函数使用二阶和四阶的泰勒展开法来逐步求解微分方程。最后,结果以矩阵形式输出,并绘制了二阶Taylor法、四阶Taylor法和精确解的曲线。
1 n) r/ F1 A/ {$ t/ D( m你可以调用这个函数,例如 Taylor(0, 1, 100, 1),其中参数表示解在区间 [0, 1] 上,步数为 100,初始条件为 1。. F3 ~) k, R0 \9 d4 c$ ~; j

* ^% _' A. X8 `) c' M& q
8 ]$ d1 S" J$ I5 P, N  M! Y4 ~
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-10 17:08 , Processed in 0.476464 second(s), 51 queries .

回顶部