收藏 分享(赏)

大学数学实验第三次实验.docx

上传人:weiwoduzun 文档编号:3676827 上传时间:2018-11-15 格式:DOCX 页数:2 大小:51.14KB
下载 相关 举报
大学数学实验第三次实验.docx_第1页
第1页 / 共2页
大学数学实验第三次实验.docx_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、第三次实验P85 2(3)请用改进欧拉法和龙格-库塔法实现,并画图,分析误差。其中,ode 的精度设置参照 P78 方法进行设置解:令 y=z,将方程转化为一阶微分方程组,22()/),yzxnyx(1)用龙格-库塔方法求微分方程组:先建立 m 文件表示微分方程组(见 fun3.m),然后用ode45()求解此微分方程(见 exp4_6_2_3.m) % P85 2(3)function dw=fun3(x, w)% 二阶微分方程化为一阶微分方程组 % w(1)表示函数y ,w(2)表示函数z ,即dy/dxn=0.5;dw=w(2); -(x*w(2)+(x2-n2)*w(1)/x2;%(2

2、)用改进欧拉 %function x,y=Euler(f,xt,x0)% 用改进的欧拉公式求一阶常微分方程( 组) % f:定义常微分方程y=f(x,y)的函数m文件; % xt:常微分方程的自变量x的取值向量 % x0:初值 % x: 输入自变量x的列向量 % % y:常微分方程组组求解的函数y 的函数值,每列对应一个函数值x=xt(:);n=length(x0); % 初值的个数即方程的个数y=zeros(length(x),n);y(1,:)=x0(:);for k=2:length(x)h=x(k)-x(k-1);y(k,:)=y(k-1,:)+h*feval(f,x(k-1),y(k

3、-1,:); % 向前欧拉公式ytmp=y(k-1,:)+h*feval(f,x(k),y(k,:); % 向后欧拉公式y(k,:)=0.5*(y(k,:)+ytmp); % 改进的欧拉公式end% main function below%用欧拉方法和龙格-库塔方法求解xs= pi/2: 0.01*pi: 10*pi;w0=2, -2/pi;opt=odeset(reltol,1e-6,abstol,1e-9);x, w=ode45(fun3, xs, w0);y1=sin(x).*sqrt(2*pi./x);figure, set(gcf,name,实验4.5 第2题(3)subplot(131),plot(x, w(:,1), r),title(龙格 -库塔方法),xlabel(最大误差为,num2str(max(abs(w(:,1)-y1)x,y=Euler(fun3, xs, w0);subplot(132),plot(x, y(:,1),b),title(改进的欧拉公式 )xlabel(最大误差为,num2str(max(abs(y(:,1)-y1)subplot(133), plot(x,y1,k),title(精确解)%

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

当前位置:首页 > 规范标准 > 实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报