2024年4月5日发(作者:宝骏310w七座图片及报价)

数学实验—实验报告

一、实验项目:

二、实验目的和要求

1、本章将对人口变化、动物种群变迁、网络系统的可靠性分析,介绍微分方程(组)的

模型建立、数值解和图形解等方法,并用MATLAB几何直观地展示各种求解方法的求解

结果。

2、利用欧拉公式求解方程

三、实验题目

问题一:求微分方程的解析解,并画出它们的图形,

y’=y+2x, y(0)=1, 0

问题二:用向前欧拉公式和改进的欧拉公式求方程

y’=y-2x/y, y(0)=1的数值解(0≤x ≤1 , h=0.1)

要求编写程序。

问题三:Rossler微分方程组

当固定参数b=2, c=4时,试讨论随参数a由小到大变化(如a∈(0,0.65])而方程解的变化情况,

并且画出空间曲线图形,观察空间曲线是否形成混沌状?

问题四:水的流出时间

?

x\'??y?z

?

?

y\'?x?ay

?

z\'?b?z(x?c)

?

一横截面积为常数A,高为H的水池内盛满水,由池底一横截面积为B的小孔放水。设水从小

孔流出的速度为v=(2gh)0.5,求在任意时刻的水面高度和将水放空所需的时间。

时间t→高度h。

问题五:考虑相互竞争模型

两种相似的群体之间为了争夺有限的同一种事物来源和生存空间而进行生死存亡竞争时,往往是

竞争力较弱的种群灭亡,而竞争力较强的种群达到环境容许的最大数量

假设有甲、乙两个生物种群,当它们各自生存于一个自然环境中,均服从Logistics规律。

三、实验过程

问题一:

用matlab编写代码:

x=[0,1]

y=dsolve(\'Dy=y+2*x\')

y=dsolve(\'Dy=y+2*x\', \'y(0)=1\', \'x\')

ezplot(x,y)

输出:y =-2*x+exp(t)*C1 (通解)y =-2*x-2+3*exp(x)

画图:x=0:0.01:1;y =-2*x-2+3*exp(x);plot(x,y)

第1页 / 共8页

4.5

4

3.5

3

2.5

2

1.5

1

00.10.20.30.40.50.60.70.80.91

问题二:

1、分析:

解:(1)解析解法得到其精确解:

(2) 向前欧拉法:

y

n?1

?y

n

?h(y

n

?2x

n

/y

n

)

/y

?(h?1)y

n

?2hx

nn

y =2x?1

迭代公式为

y

n+1

?1.1y

n

?0.2x

n

/y

n

,其中

y

0

=y(0)=1

(3)改进欧拉法:

y

n+

=y

1n

+(h/2)*[

n

(y

n

-2x

nn

+

n

(h/

n

2)*[(

n

y

n

+

n

?(hh/?2)

n

*[

n

?2y

2

n

+

/

1

y)

n

+(y

+1

-2x/y)]

+h)/(y

+h)]

n

=y

n

=y

-2

n

x

n

n

h/y))

n

)]+(y

2x

n

/y

+h-2(x

2(x+h)/(y

+h) =

n

?(h1+h?)hy

n

?/h2x/

n

y(x+h)/(y

迭代公式为

y

n+1

?1.1y

n

?0.1x

n

/y

n

?0.1(x

n

?h)/(y

n

?h)?0.005

,其中

y

0

=y(0)=1

2、Matlab编码

x1(1)=0;y1(1)=1;y2(1)=1;h=0.1;

for k=1:10

x1(k+1)=x1(k)+h;

y1(k+1)=(1-h)*y1(k)+2*h*x1(k)/y1(k);

第2页 / 共8页

y2(k+1)=(1+h)*y2(k)+(h*h)/2-h*x1(k)/y2(k)-h*(x1(k)+h)/(y2(k)+h);

end

x=0:0.1:1;

y=(2*x+1).^(1/2);

x1=x1(1:11),y=y(1:11),y1=y1(1:11),y2=y2(1:11),

plot(x,y,x1,y1,\'k:\',x1,y2,\'r--\')

显示图像及结果:

x1 = 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000

0.7000 0.8000 0.9000 1.0000

y = 1.0000 1.0954 1.1832 1.2649 1.3416 1.4142

1.4832 1.5492 1.6125 1.6733 1.7321

y1 = 1.0000 0.9000 0.8322 0.7971 0.7926 0.8143

0.8557 0.9103 0.9731 1.0402 1.1092

y2 = 1.0000 1.0959 1.1847 1.2679 1.3468 1.4222

1.4948 1.5653 1.6340 1.7016 1.7683

2

1.8

1.6

1.4

1.2

1

0.8

00.10.20.30.40.50.60.70.80.91

图中,蓝色曲线是精确解,红色曲线是向前欧拉法曲线,黑色曲线是改进后欧拉法曲线

问题三

1、matlab编程

function r=rossler(t,x)

global a;

global b;

global c;

r=[-x(2)-x(3);x(1)+a*x(2);b+x(3)*(x(1)-c)];

第3页 / 共8页

global a;

global b;

global c;

b=2;

c=4;

t0=[0,200];

for a=0:0.02:0.65

[t,x]=ode45(\'rossler\',t0,[0,0,0]);

subplot(1,2,1);

plot(t,x(:,1),\'r\',t,x(:,2),\'g\',t,x(:,3),\'b\');

title(\'x(?ì??),y(????),z(????)??t±????é??\');xlabel(\'t\');

subplot(1,2,2);

plot3(x(:,1),x(:,2),x(:,3))

title(\'?à??\');xlabel(\'x\');ylabel(\'y\');zlabel(\'z\');

pause

end

当a=0时,图像如下

x(红色),y(绿色),z(篮色)随t变化情况

0.6

0.4

0.8

0.2

0.6

0

-0.2

-0.4

-0.6

-0.8

-1

相图

z

0.4

0.2

0

0

0.5

-0.5

050100

t

150200

y

-1

-0.5

0

x

当a=0时,(x,y,z)收敛于(0,0.5,0.5)

当a=0.12时,图像如下

第4页 / 共8页

x(红色),y(绿色),z(篮色)随t变化情况

0.6

0.4

0.8

0.2

0

-0.2

-0.4

-0.6

-0.8

-1

-1.2

0

0

-0.5

-1

050100

t

150200

y

0.6

相图

z

0.4

0.2

1

0.5

0

-1.5

-0.5

x

当a=0.28时,(x,y,z)仍然收敛,但是收敛速度大大降低。

当a=0.28时,图像如下

x(红色),y(绿色),z(篮色)随t变化情况

4

3

3

2

2.5

1

0

-1

-2

-3

-4

-5

y

2

相图

z

1.5

1

0.5

0

5

5

0

0

-5

-5

x

050100

t

150200

第5页 / 共8页

当a=0.4时,图像如下

x(红色),y(绿色),z(篮色)随t变化情况

6

相图

4

6

5

2

4

0

z

3

2

-2

1

0

5

-4

0

5

-5

0

-10

-5

x

10

-6

050100

t

150200

y

当a=0.52时,图像如下

x(红色),y(绿色),z(篮色)随t变化情况

15

相图

10

15

10

5

z

5

0

0

5

0

5

-5

-10

050100

t

150200

y

-10

-5

0

x

10

-5

第6页 / 共8页

有一系列图看出,随着 a 的增大,(x,y,z)接近其极限环的速度加快。a 增大时,任意周期的极限环的稳

定性都将失去。这就是形成混沌的必要条件。

问题四:水的流出时间

Matlab编码:

h=dsolve(\'Dh=-(B*(2*g*h)^1/2)/A\',\'h(0)=H\',\'t\')

得结果:

h =H*exp(-B*g/A*t)

令h=0

得到将水放空所需的时间为T=A/(B*g)

问题五:.考虑相互竞争模型

分析:

x1(t),x2(t)是两个种群的数量;r1,r2是它们的固有增长率;n1,n2是它们的最大容量;

m2(m1)为种群乙(甲)占据甲(乙)的位置的数量,并且m2=αx2;m1=βx1

dx1/dt=r1*x1*(1-(x1+m2)/n1) dx2/dt=r2*x2*(1-(x2+m1)/n2)

(1)设r1=r2=1,n1=n2=100,m1=0.5,m2=2,x10=x20=10,计算x(t),y(t),出图形及相图,并解释器变

化过程。

(2)改变r1,r2,n1,n2,x0,y0,而α, β不变,计算并分析结果;若α=1.5,β=0.7,再分析结果。由

此能得到什么结论。

用matlab编程:

function l=logistic(t,x)

r=[1 1];

n=[100 100];

m=[0.5 2];

l=[r(1)*x(1)*(1-(x(1)+m(2))/n(1));r(2)*x(2)*(1-(x(2)+m(1))/n(2))];

x0=[10 10];

t0=[0 15];

plot(t,x(:,1),\'r\',t,x(:,2),\'g\');xlabel(\'时间\');ylabel(\'种群数量\');

title(\'种群数量与时间\');pause

plot(x(:,1),x(:,2));xlabel(\'种群1的数量\');ylabel(\'种群2的数量\');

title(\'相图\');

第7页 / 共8页

种群数量与时间

100

90

80

70

60

50

40

30

20

10

012345

时间

相图

678910

100

90

80

70

60

50

40

30

20

10

10203040

种群数量先增加后趋于平稳,随着时间的增加,种群数量增加的速度开始变得缓慢,接近于种群数量的

包和值。

两者数量基本持平,种群二略占优势。当时间足够长时,两者都将趋向于环境的最大容量。

第8页 / 共8页

5060

种群一的数量

708090100

更多推荐

种群,数量,欧拉,曲线,变化,实验,时间,公式