行业知识
MATLAB:微分方程(组)数值解
2026-11-02 00:11:14
来源:互联网转载
一、显式微分方程
clc,cleartspan = [0:10]; y0 = 2;[t1,y1] = ode23(@odefun_1,tspan,y0); %求数值解,精度相对低[t2,y2] = ode113(@odefun_1,tspan,y0); %求数值解,精度相对高yt = sqrt(tspan'+1)+1; %求精确解subplot(1,2,1)plot(t1,y1,'bo',t2,y2,'r*',tspan,yt,'g-')legend('ode23求解','ode113求解','精确解','Location','best');subplot(1,2,2)y1t = abs(y1-yt); y2t = abs(y2-yt);plot(t1,y1t,'bo',t2,y2t,'r*')legend('ode23误差','ode113误差','Location','best'); function dydt = odefun_2(t,y) ft = 2*sin(t).*(t=4*pi); %定义分段函数f(t) gt = cos(t).*(t>=3.5*pi) + 0.*(t
下一篇:探秘推特,揭开社交巨头神秘面纱!