版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、东南大学数学实验报告实验内容:常微分方程数值解一 实验目的自己编写常微分方程初值问题的常用算法,包括折线法、改进欧拉法、4阶龙格-库塔法(不允许直接使用ode45),并用于对ODE模型的研究。 二 预备知识 (1)熟悉各种常用ODE数值算法原理(2)了解各种算法的精度,熟悉ode45的用法三 实验内容与要求1.分别编写欧拉折线法、改进欧拉法和4阶龙格-库塔法通用算法命令欧拉法:function t,x1,x2=ForwardEuler(a,b,c,d,n)h=(b-a)/n;t=a:h:b;x1=c zeros(1,n);x2=d zeros(1,n);y=zeros(2,1);for i=1
2、:n y=ODE(x1(i),x2(i); x1(i+1)=x1(i)+h*y(1); x2(i+1)=x2(i)+h*y(2);endend改进欧拉法:function t,x1,x2=ModifiedEuler(a,b,c,d,n)h=(b-a)/n;t=a:h:b;x1=c zeros(1,n);x2=d zeros(1,n);for i=1:n y=ODE(x1(i),x2(i); yn1=x1(i)+h*y(1); yn2=x2(i)+h*y(2); dx=ODE(yn1,yn2); x1(i+1)=x1(i)+(h/2)*(y(1)+dx(1); x2(i+1)=x2(i)+(h/
3、2)*(y(2)+dx(2);endend4阶龙格-库塔法:function t,x1,x2=LK4(a,b,c,d,n) h=(b-a)/n;t=a:h:b;x1=c zeros(1,n);x2=d zeros(1,n);for i=1:n-1 k1=ODE(x1(i),x2(i); xk2=ODE(x1(i)+h/2,x2(i)+h/2*k1(1); yk2=ODE(x1(i)+h/2,x2(i)+h/2*k1(2); k2=xk2(1) yk2(2); xk3=ODE(x1(i)+h/2,x2(i)+h/2*k2(1); yk3=ODE(x1(i)+h/2,x2(i)+h/2*k2(2)
4、; k3=xk3(1) yk3(2); xk4=ODE(x1(i)+h,x2(i)+h*k3(1); yk4=ODE(x1(i)+h,x2(i)+h*k3(2); k4=xk4(1) yk4(2);x1(i+1)=x1(i)+h/6*(k1(1)+2*k2(1)+2*k3(1)+k4(1);x2(i+1)=x2(i)+h/6*(k1(2)+2*k2(2)+2*k3(2)+k4(2);end(2)用上述三种算法求解Lotka-Volterra模型(参数自行确定),并比较各种算法的计算精度命令结果Lotka-Volterra模型:function dx=ODE(x1,x2) dx=zeros(2,
5、1); dx(1)=x1*(1-0.1*x2);dx(2)=x2*(-0.5+0.02*x1);主程序:t,x1,x2=ForwardEuler(0,15,25,2,150);plot(t,x1,'-',t,x2,'*')t,x1,x2=ModifiedEuler(0,15,25,2,150);plot(t,x1,'-',t,x2,'*')t,x1,x2=LK4(0,15,25,2,150);plot(t,x1,'-',t,x2,'*')function dx=shier1(t,x) dx=zero
6、s(2,1); dx(1)=x(1)*(1-0.1*x(2);dx(2)=x(2)*(-0.5+0.02*x(1);t,x=ode45('shier1',0 15,25 2); plot(t,x(:,1),'-',t,x(:,2),'*')向前欧拉法:改进欧拉法:4阶龙格-库塔法:Ode45求得标准:改进欧拉法精度最高,其他两种偏差较大。(2)从下面两个问题中选作一个:21:建立酒后驾驶模型教材(p131-132),针对题目中的数据,分别用自己编写的龙格库塔法和Matlab内置的ode45命令进行研究。22:自行收集足够的中国人口数据(可以是全国
7、或某个省市的数据),根据这些数据确定模型中可能用到的参数,并分别用指数增长模型和阻滞增长对人口情况做预报,并将理论和实际数据的进行比教。20002001200220032004200520062007200820094140 4186 4222 4254 4284 4311 4339 4368 4400 4432程序:clearclcdigits(2);year=2000:1:2009;RealPopulation=4140 4186 4222 4254 4284 4311 4339 4368 4400 4432;x0=4140;x1=4186;r=log(x1/x0);ExpPopu=x0.
8、*exp(r.*(year-year(1);errorEXP=100.*abs(ExpPopu-RealPopulation)./RealPopulation;rl=0.03402;xm=13040;LogPopu=xm./(1+(xm/x0-1).*exp(-r.*(year-year(1);errorLog=100.*abs(LogPopu-RealPopulation)./RealPopulation;plot(year,RealPopulation,'b',year,ExpPopu,'r');title('江西人口(Malthus)');figure;plot(year,100,'r*',year,errorEXP,'b');title('Malthus模型预测江西人口相对误差');figure;plot(year,RealPopulation,'b',year,Log
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【完整版】北京旅游景点介绍
- 2026年二建矿业瓦斯通风安全全真模拟卷含答案及解析
- 四川省工贸领域安全风险防控预警信息2026年第6期
- 2026年铜仁地区铜仁市中小学编制教师招聘笔试参考题库及答案详解
- 2026年双鸭山市尖山区中小学编制教师招聘笔试模拟试题及答案详解
- 2026年承德市鹰手营子矿区中小学编制教师招聘笔试备考题库及答案详解
- 2026年石家庄市裕华区中小学编制教师招聘考试模拟试题及答案详解
- 2026年株洲市石峰区中小学编制教师招聘考试备考试题及答案详解
- 2026年佛山市南海区中小学编制教师招聘考试模拟试题及答案详解
- 2026年北京市平谷区中小学编制教师招聘笔试模拟试题及答案详解
- 焊接机器人操作工理论考试题库及答案
- 《机器人技术基础及应用》高职全套教学课件
- 2023-2024学年北京市海淀区七年级(上)期末数学试卷(含参考答案)
- 2026年安全员之A证考试题库500道附完整答案(必刷)
- 医院检验科施工方案
- 浙江宁波宁麓置地(宁波)有限公司招聘笔试题库2026
- 财务安全风险防控讲解
- 小学二年级语文下册生字练字贴(仅打印)模板
- DB52∕T 1675-2022 丘陵山区宜机化地块整 理整治技术规范
- 2025中国制药行业无菌生产环境控制技术发展与应用报告
- 消防电气设备安装调试方案
评论
0/150
提交评论