MATLAB求差分方程模型

上传人:san****019 文档编号:15983795 上传时间:2020-09-15 格式:PPT 页数:42 大小:351.32KB
收藏 版权申诉 举报 下载
MATLAB求差分方程模型_第1页
第1页 / 共42页
MATLAB求差分方程模型_第2页
第2页 / 共42页
MATLAB求差分方程模型_第3页
第3页 / 共42页
资源描述:

《MATLAB求差分方程模型》由会员分享,可在线阅读,更多相关《MATLAB求差分方程模型(42页珍藏版)》请在装配图网上搜索。

1、用Matlab求解差分方程问题,一阶线性常系数差分方程 高阶线性常系数差分方程 线性常系数差分方程组,一阶线性常系数差分方程,Florida沙丘鹤属于濒危物种,它在较好自然环境下,年均增长率仅为1.94%,而在中等和较差环境下年均增长率分别为 -3.24% 和 -3.82%,如果在某自然保护区内开始有100只鹤,建立描述其数量变化规律的模,并作数值计算。,模型建立: 记第k年沙丘鹤的数量为Xk,年均增长率为r, 则第k+1年鹤的数量为 Xk+1 (1+r)Xk , k=0,1,2 得 Xn (1+r)n X0 已知X0=100, 在较好,中等和较差的自然环境下r=0.0194 , -0.032

2、4 和 -0.0382 我们利用Matlab编程,递推20年后观察沙丘鹤的数量变化情况,Matlab实现 Xn (1+r)n X0,1. 在指令窗口输入: X0=100; r=0.0194; n=20; Xn=(1+r)n*X0 执行后得到: Xn =146.8563,2. 建立M脚本文件 在M文件编辑器中输入: X0=100; r=0.0194; n=20; Xn=(1+r)n*X0 单击工具栏中的保存按钮,文件名sqh1.m保存以后选择Debug:run菜单,则会在指令窗口输出: Xn =146.8563,3.建立M函数文件 格式: function 输出变量函数名称(输入变量) 例如:输

3、入 function Xn=sqh(n,r) X0=100; Xn=(1+r)n*X0; end 单击工具栏中的保存按钮,文件名sqh2.m保存以后在指令窗口调用sqh2函数,输入: Xnsqh2(20,0.0194) 输出同上。,function Xn=sqh(n,r,X0) Xn=(1+r)n*X0; end 单击工具栏中的保存按钮,文件名sqh3.m 保存以后在指令窗口调用sqh3函数,输入: Xnsqh3(20,0.0194,100) 输出同上。,Matlab实现 Xk+1 (1+r)Xk,function x=sqh(n,r) x(1)=100; for k=1:n x(k+1)=(

4、1+r)*x(k); end 单击工具栏中的保存按钮,文件名sqh4.m保存以后在指令窗口调用sqh4函数,输入: xnsqh4(20,0.0194) 输出同上。,xn = Columns 1 through 6 100.0000 101.9400 103.9176 105.9336 107.9888 110.0837 Columns 7 through 12 112.2194 114.3964 116.6157 118.8780 121.1843 123.5353 Columns 13 through 18 125.9318 128.3749 130.8654 133.4042 135.99

5、22 138.6305 Columns 19 through 21 141.3199 144.0615 146.8563,利用plot 绘图观察数量变化趋势,k=0:20; y1= sqh4(20,0.0194); plot(k,y1) 得到Figure1 在Edit菜单下Copy Figure,可以将图粘贴到Word文档。,在同一坐标系下画图 k=0:20; %一个行向量 y1= sqh4(20, 0.0194); y2= sqh4(20, -0.0324); y3= sqh4(20, -0.0382); plot(k,y1,k,y2,:,k,y3,r),人工孵化是挽救濒危物种的措施之一,如

6、果每年孵化a只鹤放入保护区,观察在自然条件下沙丘鹤的数量如何变化 Xk+1=(1+r)Xk +a,在M文件中输入: function X=rgsqh(n,r,a) X(1)=100; for k=1:n X(k+1)=(1r)*X(k)+a; end,设在中等自然条件下每年孵化5只鹤放入保护区. k=0:20; %一个行向量 y=rgsqh(20,-0.0324,5); plot(k,y),每年放养多少只会保证物种数量的稳定?,令Xk=Xk+1 得a=rX0 当X0100,r=0.0324时, a=3.24 当a=3, a=4时,如图,高阶线性常系数差分方程一年生植物的繁殖,一年生植物春季发芽

7、,夏天开花,秋季产种,没有腐烂,风干,被人为掠取的那些种子可以活过冬天,其中一部分能在第2年春季发芽,然后开花,产种,其中的另一部分虽未能发芽,但如又能活过一个冬天,则其中一部分可在第三年春季发芽,然后开花,产种,如此继续,一年生植物只能活1年,而近似的认为,种子最多可以活过两个冬天,试建立数学模型研究这种植物数量变化的规律,及它能一直繁殖下去的条件。,记一棵植物春季产种的平均数为c,种子能活过一个冬天的(1岁种子)比例为b,活过一个冬天没有发芽又活过一个冬天的(2岁种子)比例仍为b,1岁种子发芽率a1,2岁种子发芽率a2。 设c,a1,a2固定,b是变量,考察能一直繁殖的条件 记第k年植物数

8、量为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,实际上,就是Xk= pXk-1 + qXk-2 我们需要知道x0,a1,a2,c, 考察b不同时,种子繁殖的情况。在这里假设 X0=100,a1=0.5,a2=0.25,c=10,b=0.180.20 这样可以用matlab计算了,Xk= a1bcXk-1 + a2b(1-a1)bcXk-2,Xk= a1bcXk-1 + a2b(1-a1)bcXk-2,function x=zwfz(x0,n

9、,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); for k=3:n x(k)=p*x(k-1)+q*x(k-2); end,假设 X0=100,a1=0.5,a2=0.25,c=10,b=0.180.20,简化为 Xk= pXk-1 + qXk-2, k=0:20; y1=zwfz(100,21,0.18); y2=zwfz(100,21,0.19); y3=zwfz(100,21,0.20); plot(k,y1,k,y2,:,k,y3,r),结果分析:XkpXk-1 + qXk-20 (1

10、) x1+px0=0 (2),对高阶差分方程可以寻求形如 的解。代入(1)式得 称为差分方程的特征方程。差分方程的特征根: 方程(1)的解可以表为 C1,C2 由初始条件x0,x1确定。,本例中,用待定系数的方法可以求出 b=0.18时,c1=95.64, c2=4.36 , 这样 实际上, 植物能一直繁殖下去的条件是b0.191,插入的数的大小,其必须满足一个递减趋势,增长值为负,线性常系数差分方程组,汽车租赁公司的运营 一家汽车租赁公司在3个相邻的城市运营,为方便顾客起见公司承诺,在一个城市租赁的汽车可以在任意一个城市归还。根据经验估计和市场调查,一个租赁期内在A市租赁的汽车在A,B,C市

11、归还的比例分别为0.6,0.3,0.1;在B市租赁的汽车归还比例0.2,0.7,0.1;C市租赁的归还比例分别为0.1,0.3,0.6。若公司开业时将600辆汽车平均分配到3个城市,建立运营过程中汽车数量在3个城市间转移的模型,并讨论时间充分长以后的变化趋势。,0.6,0.3,A B C A B C A B C,假设在 每个租 赁期开 始能把 汽车都 租出去, 并都在 租赁期 末归还,0.1,0.7,0.2,0.1,0.6,0.3,0.1,模型及其求解,记第k个租赁期末公司在ABC市的汽车数量分别为x1(k),x2(k),x3(k)(也是第k+1个租赁期开始各个城市租出去的汽车数量),很容易写

12、出第k+1个租赁期末公司在ABC市的汽车数量为(k=0,1,2,3),用矩阵表示 观察n年以后的3个城市的汽车数量变化情况 1. 直接在命令窗口(commond window)作, A=0.6,0.2,0.1;0.3,0.7,0.3;0.1,0.1,0.6; n=10; for k=1:n x(:,1)=200,200,200; x(:,k+1)=A*x(:,k); end x(:,k+1),输出: ans = 179.9324 299.9895 120.0781,2. 建立M文件 function x=qczl(n) A=0.6,0.2,0.1;0.3,0.7,0.3;0.1,0.1,0.6

13、; x(:,1)=200,200,200; for k=1:n x(:,k+1)=A*x(:,k); end,作图观察5年以后数量的变化趋势:在指令窗口输入 y1=qczl(5); k=0:5; plot(k,y1),练习: 若最初600辆汽车平均分配在三个城市,作图观察30年以后数量的变化趋势 若最开始600辆汽车都在A市,变化时间充分长以后,各城市汽车数量的变化情况如何?,可以看到时间充分长以后3个城市汽车数量趋于180,300,120 若最开始600辆汽车都在A市,可以看到变化时间充分长以后,各城市汽车数量趋于稳定,与初始值无关,利用线性规划知识;找到凸集,因为所谓的最优解,一般都在凸集

14、,按年龄分组的种群增长,野生或饲养的动物因繁殖而增加,因自然死亡和人为屠杀而减少,不同年龄动物的繁殖率,死亡率有较大差别,因此在研究某一种群数量的变化时,需要考虑年龄分组的种群增长。 将种群按年龄等间隔的分成若干个年龄组,时间也离散化为时段,给定各年龄组种群的繁殖率和死亡率,建立按年龄分组的种群增长模型,预测未来各年龄组的种群数量,并讨论时间充分长以后的变化趋势。,模型及其求解,设种群按年龄等间隔的分成n个年龄组,记i=1,2,,n,时段记作k=0,1,2,且年龄组区间与时段长度相等(若5岁为一个年龄组,则5年为一个时段)。以雌性个体为研究对象. 记在时段k第i年龄组的数量为Xi(k);第i年

15、龄组的繁殖率为bi,表示每个个体在一个时段内繁殖的数量;第i年龄组死亡率为Si,表示一个时段内死亡数与总数的比,Ei=1-Si是存活率。,注意:第k时段的第i年龄组活过来的数量,是第k+1时段第i+1年龄组的数量 Xi+1(k+1)=EiXi(k) i=1,2,n-1,k=0,1, 各年龄组在第k时段繁殖的数量和是第k+1时段的第1年龄组的数量 X1(k+1)= k=0,1, 记在时段k种群各年龄组的数量为 X(k)=X1(k),X2(k),Xn(k) 得 X(k+1)=LX(k),k=0,1,设一种群分成5个年龄组, 繁殖率b1=0,b2=0.2,b3=1.8,b4=0.8,b5=0.2 存

16、活率s1=0.5,s2=0.8,s3=0.8,s4=0.1 各年龄组现有数量都是100只, 用matlab计算X(k) 提示:L矩阵的输入 b=0,0.2,1.8,0.8,0.2; E=diag(0.5,0.8,0.8,0.1); L=b;E,zeros(4,1);, b=0,0.2,1.8,0.8,0.2; E=diag(0.5,0.8,0.8,0.1); L=b;E,zeros(4,1); %分块矩阵 n=30; for k=1:n x(:,1)=100,100,100,100,100; x(:,k+1)=A*x(:,k); end 得到:ans = 434.1877 211.4436 164.6266 128.9265 12.5635,

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!