用Matlab求解差分方程问题市公开课金奖市赛课一等奖课件_第1页
用Matlab求解差分方程问题市公开课金奖市赛课一等奖课件_第2页
用Matlab求解差分方程问题市公开课金奖市赛课一等奖课件_第3页
用Matlab求解差分方程问题市公开课金奖市赛课一等奖课件_第4页
用Matlab求解差分方程问题市公开课金奖市赛课一等奖课件_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用Matlab求解差分方程问题一、一阶线性常系数差分方程二、高阶线性常系数差分方程三、线性常系数差分方程组第1页第1页一、一阶线性常系数差分方程濒危物种自然演变和人工孵化问题Florida沙丘鹤属于濒危物种,它在较好自然环境下,年均增长率仅为1.94%,而在中档和较差环境下年均增长率分别为-3.24%和-3.82%,假如在某自然保护区内开始有100只鹤,建立描述其数量改变规律模型,并作数值计算。第2页第2页模型建立记第k年沙丘鹤数量为xk,年均增长率为r,则第k+1年鹤数量为xk+1=(1+r)xkk=0,1,2······已知x0=100,在较好,中档和较差自然环境下r=0.0194,-0.0324,和-0.0382我们利用Matlab编程,递推后观测沙丘鹤数量改变情况第3页第3页Matlab实现首先建立一个关于变量n,r函数functionx=sqh(n,r)a=1+r;x=100;fork=1:nx(k+1)=a*x(k);end第4页第4页在command窗口里调用sqh函数

k=(0:20)';>>y1=sqh(20,0.0194);>>y2=sqh(20,-0.0324);>>y3=sqh(20,-0.0382);>>round([k,y1',y2',y3'])ToMatlab(ff6)第5页第5页利用plot绘图观测数量改变趋势能够用不同线型和颜色绘图rgbcmykw分别表示红绿兰兰绿洋红黄黑白色:+o*.Xsd表示不同线型第6页第6页plot(k,y1,k,y2,k,y3)在同一坐标系下画图

plot(k,y2,':')>>plot(k,y2,'--')>>plot(k,y2,'r')>>plot(k,y2,'y')>>plot(k,y2,'y',k,y1,':')>>plot(k,y2,k,y1,':')>>plot(k,y2,'oy',k,y1,':')用gtext(‘r=0.0194’),gtext(‘r=-0.0324’),gtext(‘r=-0.0382’)在图上做标识。ToMatlab(ff6)第7页第7页人工孵化是挽救濒危物种办法之一,假如每年孵化5只鹤放入保护区,观测在中档自然条件下沙丘鹤数量如何改变Xk+1=aXk+5,a=1+r假如我们想考察每年孵化多少只比较适当,能够令Xk+1=aXk+b,a=1+r第8页第8页functionx=fhsqh(n,r,b)a=1+r;x=100;fork=1:nx(k+1)=a*x(k)+b;end第9页第9页k=(0:20);%一个行向量y1=(20,-0.0324,5);%也是一个行向量round([k’,y1’])%对k,y1四舍五入,但%是不改变变量值plot(k,y1)%ky1是行向量列向量都能够也能够观测发展趋势,以及在较差条件下发展趋势,也能够考察每年孵化数量改变影响。ToMatlab(ff7)第10页第10页高阶线性常系数差分方程

假如第k+1时段变量Xk+1不但取决于第k时段变量Xk,并且与以前时段变量相关,就要用高阶差分方程来描述第11页第11页一年生植物繁殖一年生植物春季发芽,夏天开花,秋季产种,没有腐烂,风干,没被人为掠取那些种子能够活过冬天,其中一部分能在第2年春季发芽,然后开花,产种,其中另一部分虽未能发芽,但如又能活过一个冬天,则其中一部分可在第三年春季发芽,然后开花,产种,如此继续,一年生植物只能活1年,而近似认为,种子最多能够活过两个冬天,试建立数学模型研究这种植物数量改变规律,及它能始终繁殖下去条件。第12页第12页模型及其求解记一棵植物春季产种平均数为c,种子能活过一个冬天(1岁种子)百分比为b,活过一个冬天没有发芽又活过一个冬天(2岁种子)百分比仍为b,1岁种子发芽率a1,2岁种子发芽率a2。设c,a1,a2固定,b是变量,考察能始终繁殖条件记第k年植物数量为Xk,显然Xk与Xk-1,Xk-2相关,由

Xk-1决定部分是a1bcXk-1,由Xk-2决定部分是

a2b(1-a1)bcXk-2

Xk=a1bcXk-1+a2b(1-a1)bcXk-2第13页第13页Xk=a1bcXk-1+a2b(1-a1)bcXk-2实际上,就是Xk=pXk-1+qXk-2我们需要知道x0,a1,a2,c,考察b不同时,种子繁殖情况。在这里假设X0=100,a1=0.5,a2=0.25,c=10,b=0.18~0.20这么能够用matlab计算了第14页第14页Xk=a1bcXk-1+a2b(1-a1)bcXk-2functionx=zwfz(x0,n,b)c=10;a1=0.5;a2=0.25;p=a1*b*c;q=a2*b*(1-a1)*b*c;x(1)=x0;x(2)=p*(x(1));fork=3:nx(k)=p*(x(k-1))+q*(x(k-2));end第15页第15页k=(0:20)';y1=zwfz(100,21,0.18);y2=zwfz(100,21,0.19);y3=zwfz(100,21,0.20);round([k,y1',y2',y3']);plot(k,y1,k,y2,':',k,y3,'o'),gtext('b=0.18');gtext('b=0.19');gtext('b=0.20')ToMatlab(ff8)第16页第16页结果分析:Xk=pXk-1+qXk-2(1)

x1+px0=0(2)

差分方程特性方程差分方程特性根:方程(1)解能够表为C1,c2由初始条件x0,x1拟定。第17页第17页本例中,用待定系数办法能够求出b=0.18时,c1=95.64,c2=4.36,这样事实上,植物能始终繁殖下去条件是b>0.191第18页第18页线性常系数差分方程组汽车租赁公司运营一家汽车租赁公司在3个相邻都市运营,为以便用户起见公司承诺,在一个都市租赁汽车能够在任意一个都市归还。依据经验预计和市场调查,一个租赁期内在A市租赁汽车在A,B,C市归还百分比分别为0.6,0.3,0.1;在B市租赁汽车归还百分比0.2,0.7,0.1;C市租赁归还百分比分别为0.1,0.3,0.6。若公司开业时将600辆汽车平均分派到3个都市,建立运营过程中汽车数量在3个都市间转移模型,并讨论时间充足长以后改变趋势。第19页第19页0.60.3ABCABCABC假设在每个租赁期开始能把汽车都租出去,并都在租赁期末归还0.10.70.20.10.60.30.1第20页第20页模型及其求解记第k个租赁期末公司在ABC市汽车数量分别为x1(k),x2(k),x3(k)(也是第k+1个租赁期开始各个都市租出去汽车数量),很容易写出第k+1个租赁期末公司在ABC市汽车数量为(k=0,1,2,3···)第21页第21页用矩阵表示用matlab编程,计算x(k),观测n年以后3个都市汽车数量改变情况第22页第22页functionx=czqc(n)A=[0.6,0.2,0.1;0.3,0.7,0.3;0.1,0.1,0.6];x(:,1)=[200,200,200]';fork=1:nx(:,k+1)=A*x(:,k);end假如直接看或者发展趋势,能够直接在命令窗口(commondwindow)作,而不是必须编一个函数第23页第23页A=[0.6,0.2,0.1;0.3,0.7,0.3;0.1,0.1,0.6];>>n=10;>>fork=1:nx(:,1)=[200,200,200]';x(:,k+1)=A*x(:,k);end>>round(x)第24页第24页作图观测数量改变趋势k=0:10;plot(k,x),gridgtext('x1(k)'),gtext('x2(k)'),gtext('x3(k)')第25页第25页能够看届时间充足长以后3个都市汽车数量趋于180,300,120能够考察这个结果与初始条件是否相关若最开始600辆汽车都在A市,能够看到改变时间充足长以后,各都市汽车数量趋于稳定,与初始值无关第26页第26页直接输入x(:,1)值即可x(:,1)=[600,0,0];round(x');plot(k,x),grid第27页第27页6.6

按年龄分组人口模型不同年纪组繁殖率和死亡率不同.建立差分方程模型,讨论稳定情况下种群增长规律.假设与建模

种群按年龄大小等分为n个年龄组,记i=1,2,…,n

时间离散为时段,长度与年龄组区间相等,记k=1,2,…

以雌性个体数量为对象.

第i年龄组1雌性个体在1时段内繁殖率为bi

第i年龄组在1时段内死亡率为di,存活率为si=1-di第28页第28页假设与建模xi(k)~时段k第i年龄组种群数量~按年龄组分布向量预测任意时段种群按年龄组分布~Leslie矩阵(L矩阵)(设至少1个bi>0)第29页第29页按年龄分组种群增长野生或喂养动物因繁殖而增加,因自然死亡和人为屠杀而降低,不同年纪动物繁殖率,死亡率有较大差异,因此在研究某一个群数量改变时,需要考虑年纪分组种群增加。将种群按年纪等间隔分成若干个年纪组,时间也离散化为时段,给定各年纪组种群繁殖率和死亡率,建立按年纪分组种群增加模型,预测未来各年纪组种群数量,并讨论时间充分长以后改变趋势。第30页第30页模型及其求解设种群按年龄等间隔分成n个年龄组,记i=1,2,···,n,时段记作k=0,1,2···,且年龄组区间与时段长度相等(若5岁为一个年龄组,则5年为一个时段)。以雌性个体为研究对象记在时段k第i年龄组数量为xi(k);第i年龄组繁殖率为bi,表示每个个体在一个时段内繁殖数量;第i年龄组死亡率为di,表示一个时段内死亡数与总数比,si=1-di是存活率。第31页第31页记在时段k种群各年龄组数量为X(k)=[x1(k),x2(k),····,xn(k)]’第32页第32页这样,有x(k+1)=Lx(k),k=0,1,····给定在0时段,各年龄组初始数量x(0)就能够预测任意时段k,各年龄组数量设一个群分成5个年龄组,繁殖率b1=0,b2=0.2,,b3=1.8,b4=0.8,b5=0.2存活率s1=0.5,s2=0.8,s3=0.8,s4=0.1各年龄组既有数量都是100只,用matlab计算x(k)第33页第33页b=[0,0.2,1.8,0.8,0.2];s=diag([0.5,0.8,0.8,0.1]);L=[b;s,zeros(4,1)];x(:,1)=100*ones(5,1);>>n=30;>>fork=1:nx(:,k+1)=L*x(:,k);end>>ro

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论