微分方程作业Word文档下载推荐.docx

上传人:b****6 文档编号:17323461 上传时间:2022-12-01 格式:DOCX 页数:12 大小:157.54KB
下载 相关 举报
微分方程作业Word文档下载推荐.docx_第1页
第1页 / 共12页
微分方程作业Word文档下载推荐.docx_第2页
第2页 / 共12页
微分方程作业Word文档下载推荐.docx_第3页
第3页 / 共12页
微分方程作业Word文档下载推荐.docx_第4页
第4页 / 共12页
微分方程作业Word文档下载推荐.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

微分方程作业Word文档下载推荐.docx

《微分方程作业Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《微分方程作业Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。

微分方程作业Word文档下载推荐.docx

t=h.*(0:

N);

forn=1:

N

u(n+1)=u(n)+h*Euler_fun1(t(n),u(n));

end

plot(t,u,'

*'

);

holdon

v

(1)=u(n)+h*Euler_fun1(t(n),u(n));

fork=1:

6

v(k+1)=u(n)+h/2*(Euler_fun1(t(n),u(n))+Euler_fun1(t(n+1),v(k)));

end

u(n+1)=v(k+1);

o'

sol=dsolve('

Du=-5*u'

'

u(0)=1'

u_real=eval(sol);

plot(t,u_real,'

r'

 

将上述h换为0.05得:

由图像知道:

显然改进的Euler法要比Euler法精确度要高;

3.将u‘’=-u(0≤t≤1),u(0)=0,u’(0)=1化为一阶方程组,并用Euler法和改进的的Euler法求解,步长h=0.1,0.05;

functiondu=fun31(y)

du=y;

functiondy=fun32(u)

dy=-u;

u

(1)=0;

y

(1)=;

u(n+1)=u(n)+h*y(n);

y(n+1)=y(n)+h*(-u(n));

v

(1)=u(n)+h*fun31(y(n));

w

(1)=y(n)+h*fun32(u(n));

fork=1:

v(k+1)=u(n)+h/2*(fun31(y(n))+fun31(...w(k)));

w(k+1)=y(n)+h/2*(fun32(u(n))+fun32(...v(k)));

y(n+1)=w(k+1);

D2u=-u'

u(0)=0'

Du(0)=1'

;

由图像可以知道:

实习题

(二)

1.取步长

,分别用Euler法和改进的Euler法求下列初值问题的解,并与真解相比较.

(1)

真解

functiondu=fun1(x,u)

du=u-2*x/u;

xend=1;

x

(1)=0;

x=h.*(0:

%——Eluer法——%

u(n+1)=u(n)+h*fun1(x(n),u(n));

plot(x,u,'

%——改进的Eluer法——%

v

(1)=u(n)+h*fun1(x(n),u(n));

v(k+1)=u(n)+h/2*(fun1(x(n),u(n))+fun1(x(n+1),v(k)));

%——真解——%

u_real=sqrt(1+2*x);

plot(x,u_real,'

(2)

functiondu=fun2(x,u)

du=(u/x)-x.^2/u.^2;

x=1:

h:

2;

x

(1)=1;

u

(1)=2;

u(n+1)=u(n)+h*fun2(x(n),u(n));

v

(1)=u(n)+h*fun2(x(n),u(n));

v(k+1)=u(n)+h/2*(fun2(x(n),u(n))+fun2(x(n+1),v(k)));

u_real=x.*((8-3.*log(x)).^(1/3));

由图像可知:

改进的Euler法和Euler法都很接近真值。

(3)

.

functiondu=fun3(x,u)

du=u/(2*x)-x/(2*u^2);

N=0.5/h;

1.5;

u(n+1)=u(n)+h*fun3(x(n),u(n));

v

(1)=u(n)+h*fun3(x(n),u(n));

v(k+1)=u(n)+h/2*(fun3(x(n),u(n))+fun3(x(n+1),v(k)));

u_real=(4*x.^(3/2)-3*x.^2).^(1/3);

2.试用预报校正格式(1.20)解初值问题

并与Euler格式比较精度,取h=0.1。

作业要求:

写出程序,列表或用图形显示结果,并给出图或表所说明的结果。

functiondu=Euler_fun2(t,u)

du=-u+t+1;

u(n+1)=u(n)+h*Euler_fun2(t(n),u(n));

u0(n+1)=u(n)+h*Euler_fun2(t(n),u(n));

u(n+1)=u(n)+h/2*(Euler_fun2(t(n),u(n))+Euler_fun2(t(n+1),u0(n+1)));

Du=-u+t+1'

显然预报校正格式要比Euler法精确度要高;

P37例4.1用四级四阶Runge-Kutta法计算初值问题:

u’=4tu0.5,0≤t≤2,

u(0)=1.

取h=0.1,0.5,1.精确解为u(t)=(1+t2)2

写出程序,列表或用图形显示结果,并给出图或表所说明的结果.

functiondu=fun4(t,u)

du=4*t*u.^(1/2);

N=2/h;

t=0:

k1=fun4(t(n),u(n));

k2=fun4(t(n)+0.5*h,u(n)+0.5*h*k1);

k3=fun4(t(n)+0.5*h,u(n)+0.5*h*k2);

k4=fun4(t(n)+h,u(n)+h*k3);

u(n+1)=u(n)+h*(k1+2*k2+2*k3+k4)/6;

u_real=(1+t.^2).^2;

将上述h换为0.5后图像为:

将上述h换为1后图像为:

从上述图像来看:

第一幅图说明四级四阶Runge-Kutta法精度很高;

后面两幅图说明了步长h取的越小越逼近精确值。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1