数学建摸实验报告(第一次作业)

更新时间:2023-06-11 18:15:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实 验 报 告

课程名称 数学建模 年级 XXX 日期 XXX 姓 名 XXX 学号 ######## 班级 XXX班 实验名称 微分方程数值解法

实验目的及要求:

1.掌握解常微分方程的欧拉方法,龙哥库塔方法;

2.会利用Matlab编写求解微分方程的程序,并给出解的图形显示;

3.了解误差,能控制解的精度,了解步长对解的影响。 实验内容:

题目

两种群相互竞争模型如下:

x

..(t)= x(t)=

其中x(t),y(t)分别为甲乙两种群的数量;r1,r2为它们的固有增长率;n1,n2为它们的最大容量.s1的含义是,对于供养甲的资源来说,单位数量的乙(相对n2)的消耗为单位数量甲(相对n1)消耗的s1倍,对s2可以作相应解释.

该模型无解析解,试用数值解法研究以下问题:

(1)设r1=r2=1,n1=n2=100,s1=0.5,s2=2,初值x0=y0=10,计算x(t),y(t),画出它们的图形及图(x,y),说明时间t充分大以后x(t),y(t)的变化趋势(人们今天看到的已经是自然界长期演变的结局).

(2)改变r1,r2,n1,n2,x0,y0,但s1,s2不变(或保持s1<1,s2>1),计算并分析所得结果,若s1=1.5(>1),s2=0.7(<1),再分析结果.由此你可以得到什么结论,请用各参数生态学上的含义作出解释.

(3)试验当s1=0.8(<1),s2=0.7(<1)时会有什么结果,当s1=1.5(>1),s2=1.7(>1)时,又会有什么结果,能解释这些结果吗?

做法

根据题意设定好的参数,用所学的龙格库塔方法及软件MATLAB求其数值解.

程序

编写如下M文件:

function xdt=f(t,x)

r1=1;r2=1;n1=100;n2=100;s1=0.5;s2=2;

xdt=[r1*x(1).*(1-x(1)./n1-q1.*(x(2)./n2));r2*x(2).*(1-q2*x(1)./n1-x(2)./n2)];

运行以下程序:

ts=0:0.1:10;

x0=[10,10];

[t,x]=ode45('f',ts,x0);

end

[t,x]

plot(t,x),grid

gtext('x1(t)'),gtext('x2(t)'),pause,

plot(x(:,1),x(:,2)),grid,

gtext(‘x’),gtext(‘y’);

MATLAB计算:

数值稳定在x=100,y=0上,即甲种群达到最大值,乙种群灭绝.

x(t),y(t)的图形及相图(x,y):

实验总结

(1)时间t充分大时,x和y的数量差距变大,最后是乙灭绝,甲繁荣.

(2)当s1,s2不变(或保持s1<1,s2>1)时,甲种群繁荣,乙种群灭绝.而当s1=1.5(>1),s2=0.7(<1)时,有乙种群繁荣,甲种群灭绝.因此我们得到:在两个种群的相互竞争中s1,s2是两个关键指标.可知s1 >l,s2<1表示在消耗供养甲的资源中,乙的消耗多于甲,因而对甲增长的阻滞作用大,即乙的竞争力强于甲.

(3)当s1=0.8(<1),s2=0.7(<1)时,甲、乙竞争激烈程度加剧,没有一方有明显优势;当s1=1.5(>1),s2=1.7(>1)时,竞争中有一方具有绝对优势,即甲有绝对优势.

问题与心得

MATLAB具体操作出现很多问题,通过多方渠道初入门该软件,且对欧拉方法和龙哥库塔方法还没真正掌握,需要更进一步学习这三个方面,再具体运用到解题中。

本文来源:https://www.bwwdw.com/article/sew1.html

Top