文档库 最新最全的文档下载
当前位置:文档库 › 数学建模迭代实验报告

数学建模迭代实验报告

数学建模迭代实验报告
数学建模迭代实验报告

非 线 性 迭 代 实 验 报 告

一、实验背景与实验目的

迭代是数学研究中的一个非常重要的工具,通过函数或向量函数由初始结点生成迭代结点列,也可通过函数或向量函数由初值(向量)生成迭代数列或向量列。 蛛网图也是一个有用的数学工具,可以帮助理解通过一元函数由初值生成的迭代数列的敛散性,也帮助理解平衡点(两平面曲线交点)的稳定性。

本实验在Mathematica 平台上首先利用蛛网图和迭代数列研究不动点的类型;其次通过蛛网图和迭代数列研究Logistic 映射,探索周期点的性质、认识混沌现象;第三通过迭代数列或向量列求解方程(组)而寻求有效的求解方法;最后,利用结点迭代探索分形的性质。

二、实验材料

2.1迭代序列与不动点

给定实数域上光滑的实值函数)(x f 以及初值0x ,定义数列

)(1n n x f x =+, ,2,1,0=n (2.2.1) }{n x 称为)(x f 的一个迭代序列。

函数的迭代是数学研究中的一个非常重要的思想工具,利用迭代序列可以研究函数)(x f 的不动点。

对函数的迭代过程,我们可以用几何图象来直观地显示它——“蜘蛛网”。运行下列Mathematica 程序:

Clear[f]

f[x_] := (25*x - 85)/(x + 3); (实验时需改变函数) Solve[f[x]==x , x] (求出函数的不动点)

g1=Plot[f[x], {x, -10, 20}, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity];

g2=Plot[x, {x, -10, 10}, PlotStyle -> RGBColor[0, 1, 0], DisplayFunction -> Identity]; x0=5.5; r = {};

r0=Graphics[{RGBColor[0, 0, 1], Line[{{x0, 0}, {x0, x0}}]}]; For[i = 1, i <= 100, i++,

r=Append[r, Graphics[{RGBColor[0, 0, 1], Line[{{x0, x0},

{x0, f[x0]}, {f[x0], f[x0]}}] }]]; x0=f[x0] ];

Show[g1, g2, r, r0, PlotRange -> {-1, 20}, (PlotRange 控制图形上下范围) DisplayFunction -> $DisplayFunction] x[0]=x0;

x[i_]:=f[x[i-1]]; (定义序列) t=Table[x[i],{i,1,10}]//N ListPlot[t] (散点图)

观察蜘蛛网通过改变初值,你能得出什么结论?

如果只需迭代n 次产生相应的序列,用下列Mathematica 程序: Iterate[f_,x0_,n_Integer]:=

Module[{ t={},temp= x0},AppendTo[t,temp]; For[i=1,i <= n, i++,temp= f[temp]; AppendTo[t,temp]]; t ]

f[x_]:= (x+ 2/x)/2; Iterate[f,0.7,10]

设()x f 是一个定义在实数域上的实值函数,如果存在u 使得()u u f =,则称u 为()x f 的不动点。我们用u u →表示这件事。如果所有附近的点在选代过程中都趋向于某个不动点,则该不动点称为吸引点,有时也称该不动点是稳定的。如果所有附近的点在选代过程中都远离它而去,则该不动点称为排斥点,有时也称该不动点是不稳定的。

如果21)(u u f =,32)(u u f =,…,1)(u u f k =且k j u

u j

i ,,2,1,

=≠,则k

u u u ,,,21 形成一个k 循环,用121u u u u k →→→→ 记这个事实。

1u 称为一个k 周期点,k u u u ,,,21 称为一个周期轨道。显然,不动点就是周期为1的周期点。类似于不动点,如果所有附近的

点在迭代过程中都趋向于某个周期点,则该周期点称为吸引点;如果所有附近的点在迭代过程中都远离它而去,则该周期点称为排斥点。如果点u 最终落于某个循环之中,则称它是一个预周期点。例如,l 是1)(2-=x x f 的预周期点。

2.2 Logistic 映射与混沌

从形如()()x ax x f -=1的二次函数开始做迭代

()k k x f x =+1 ,1,0=k (2.2.2)

这里,[]4,0∈a 是一个参数。对不同的a 系统地观察迭代(2.2.2)的行为。Mathematica 程序:

IterGeo[a_, x0_] :=

Module[

{p1, p2, i, pointlist = {}, v= x0, fv= a*x0*(1 - x0)},

p1=Plot[ {a*x*(1 - x), x}, {x, 0, 1}, DisplayFunction -> Identity]; AppendTo[pointlist, {x0, 0}];

For[i = 1, i < 20, i++, AppendTo[pointlist, {v, fv}]; AppendTo[pointlist, {fv, fv}]; v= fv; fv= 4*v*(1 - v)];

p2=ListPlot[pointlist, PlotJoined -> True, DisplayFunction -> Identity];

Show[{p1, p2}, DisplayFunction -> $DisplayFunction] ]

IterGeo[2.6, 0.3]

将区间(0,4]以某个步长a ?离散化,对每个离散的a 值做迭代(2.2.2),忽略前50个迭代值,而把点()51,x a ,()52,x a ,…,()100,x a 显示在坐标平面上,最后形成的图形称为Feigenbaum 图。Mathematica 程序:

Clear[f, a, x]; f[a_, x_] := a*x*(1 - x);

x0 = 0.5; r = {}; Do[

For[i = 1, i <= 300, i++, x0 = f[a, x0];

If[i > 100, r = Append[r, {a, x0}]] ],

{a, 3.0, 4.0, 0.01}]; ListPlot[r]

从极限分支点之后,Feigenbaum 图显得很杂乱,似乎没有任何规律。实际上,对任何初始值做迭代都会得到同样的结果。这就是所谓的混沌现象。迄今为止,混沌并没有确切的数学定义,但它具有一些基本的特性,如对初值的敏感性以及某种无序性,由此产生类似于随机的现象。

所谓一个迭代对初值是敏感的意思是,无论两个初值如何接近,在迭代过程中它们将渐渐分开。这是任何一个混沌系统都具有的特性之一,这种特性使得混沌系统会产生似乎是随机的、没有规律的现象。在Logistic 映射中,取4=a ,任取两个初值使得它们之间的差的绝对值不超过0.l ,运行下列程序,观察结果后回答问题:在迭代过程中它们逐渐分开吗?

如果两个初值之间的差的绝对值不超过0.01,0.001,结果会如何?由此得出,函数()()x x x f -=14的迭代对初值是否敏感?其Mathematica 程序:

Sensitivity[n_Integer, x01_, x02_] :=

Module[

{pilist = {}, i, temp1=x01, temp2=x02},

For[i=1, i <= n, i++, temp1=4*temp1*(1-temp1); temp2=4*temp2*(1-temp2);

AppendTo[pilist, {i, temp2-temp1}]; ];

ListPlot[pilist, PlotJoined -> True] ]

Sensitivity[50, 0.1, 0.1001]

一个简单的、确定的二次选代可以产生非常复杂的、看似随机的行为。但是,混沌不等于随机。实际上,在混沌区域之内,蕴涵着许多有序的规律。这正验证了哲学上的名言:有序中包含了无序,无序中包含着有序。其Mathematica 程序:

distrib[n_Integer,m_Integer,x0_]:=

-temp);

f[k_]:=Graphics[{GrayLevel[0.5],Rectangle[{k-0.5,0},{k+0.5,c[[k]]}]}];

->"x0=0.4"];]

n=100;m=20;x0=0.4;distrib[n,m,x0]

另一个说明混沌不是随机的事实是,混沌区域有许多有序的窗口。将这些窗口放大可以看到令人振奋的自相似现象,同时还有许多周期轨道。在 Feigenbaum 图的右部,你应当能看到一个由三条曲线穿过的空白带,它是一个“周期为 3的窗口”。你能找到其它窗口吗?它们的周期是什么?窗口里有什么图案?这些窗口跟上题的第二问中的k 周期轨道有什么关系?

运行下列程序,听一听混沌的声音

PlayChaos[n_Integer, x0_] :=

Module[

{t = {}, i, temp = x0},

For[i = 1, i <= n, i++, temp = 4*temp*(1 - temp); AppendTo[t, Floor[temp*100]]];

ListPlay[t, PlayRange -> {0, 100}, SampleRate -> 5] ]

和函数()()x ax x f -=1一样有着混沌行为的函数还很多。其中较简单的有“帐篷函数”和“锯齿函数”。“帐篷函数”()x T 定义为

()???

≤<-≤≤=1

5.0225

.002x x x x x T

“锯齿函数”()x S 定义为 ()??

?

≤<-≤≤=1

5.0125

.002x x x x x S

容易验证,帐篷函数和锯齿函数有下列关系:

()()()()10≤≤=x x S T x T T 令()2

sin 2

x

x h π=,帐篷函数与()()x x x f -=14有下列关系:

()()()()x T h x h f k k =

2.3 方程求根

对于代数方程g (x )=0,其根可用下列程序求得

Solve[g(x)= = 0 , x]

也可用下列程序求得

g[x_]:=expr

Plot[g[x],{x,a,b}]

FindRoot[g(x)= = 0 , {x,x0}]

将方程0)(=x g 改写为等价的方程)(x f x =,然后选取一初值利用(2.2.1)作迭代,迭代数列}{n x 收敛的极限就是方程0)(=x g 的解。即求方程0)(=x g 的根等价于求函数)(x f 的不动点。注意:由0)(=x g 可得不同的等价的方程)(x f x =。例如取12)(3+-=x x x g ,而)(x f 可取为21

3+x ,212x

x -,也可取为312-x 。

由于不动点分吸引型和排斥型,因此0)(=x g 的根为)(x f 的排斥不动点时,就不能通

过迭代函数)(x f 以及一个初值0x 利用(2.2.1)迭代求解,因为此时得到的数列}{n x 不收敛。这时需要新的方法,Newton 切线法就是其中之一。其迭代数列Mathematica 程序如下:

Iterate[f_,x0_,n_Integer]:= Module[{ t={},temp= x0}, AppendTo[t,temp];

For[i=1,i <= n, i++,temp=N[x0-f[x0]/h[x0]]; AppendTo[t,temp]]; t ]

f[x_]:=x^3-2*x+1; h[x_]=Dt[f[x],x]; Iterate[f,4,10]

而要通过几何直观观察,可由如下Mathematica 程序实现:

Clear[f]

f[x_] := x^3-2*x+1;

g1 = Plot[f[x], {x,2, 5}, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity]; x0 = 4; r = {}; h[x_]=Dt[f[x],x];

For[i = 1, i <= 100, i++,

If[h[x0]≠0,x1=N[x0-f[x0]/h[x0],20]];

r = Append[r, Graphics[{RGBColor[0, 0, 1], Line[{{x0, 0},

{x0, f[x0]}, {x1, 0}}] }]]; x0 =x1 ];

Show[g1, r, PlotRange -> {-20, 20},

DisplayFunction -> $DisplayFunction]

用迭代法求解线性方程组的思想与方程求根的方法是类似的,用迭代方法也可以求更加复杂的非线性方程组的解。由于非线性方程组可能有许多解(甚至有无穷多个解),因此对它的求解比线性方程组的求解要面临更多的挑战。

线性方程组f x M x +=由f x M x n n

+=+1( ,2,1,0=n )给出迭代的Mathematica 程序:

LSIterate[m_,f_List,f0_List,n_Integer]:=

Module[

{i,var=f0,t=Table[{},{i,n}]}, For[i=1,i<=n,i++,t[[i]]=var;var=m.var+f]; t ]

m={{0.2,0.3},{0.4,0.2}};f={1,1};f0={0,0}; LSIterate[m,f,f0,20]

2.4 分形

早在上世纪末及本世纪初,一些数学家就构造出一些边界形状极不光滑的图形。由于这类图形长期以来被视为“不可名状的”或“病态的”,因而,只有当人们需要反例时才想到它们。这类图形的构造方式都有一个共同的特点,即最终图形F 都是按照一定的规则R 通过对初始图形F 不断修改得到的。其中最具有代表性的图形是Koch 曲线,Koch 曲线的构造

方式是:

给定一条直线段0F (图2.2.l 上左),将该直线三等分,并将中间的一段用以该线段为边的等边三角形的另外两条边替代,得到图形1F ,称1F 为生成元(图2.2.l 上右)。然后,再对图形1F 中的每一小段都按上述方式修改(图2.2.l 下左),以至无穷,则最后得到的极限曲线k k F F ∞

→=lim 即是所谓的Koch 曲线(图2.2.l 下右)。

图2.2.l Koch 曲线的生成

计算机绘出Koch 曲线的Mathematica 程序:

redokoch[ptlist_List] :=

Block[{tmp = {}, i, pnum = Length[ptlist]},

For[i = 1, i < pnum, i = i + 1, tmp = Join[tmp, {ptlist[[i]], ptlist[[i]]*2/3 + ptlist [[i + 1]]/3,

(ptlist[[i]] + ptlist [[i + 1]])/2 + {ptlist[[i]] [[2]] - ptlist[[i + 1]] [[2]], ptlist[[i + 1]][[1]] - ptlist[[i]][[1]]}*Sqrt[3]/6,

ptlist[[i]]/3 + ptlist[[i + 1]]*2/3,ptlist[[i + 1]]}]]; tmp] lnko01 = {{0, 0}, {1, 0 }};

Show[Graphics[Line[Nest[redokoch, lnko01, 5]], AspectRatio -> Sprt[3]/6]]

分形的基本特性完全由生成元决定,因此,给定一个生成元,就可以生成各种各样的分形图形。以下是几个经典的分形图形及其生成Mathematica 程序:

图2.2.2 Minkowski“香肠”

计算机绘出Minkowski“香肠”的Mathematica 程序: redominkowski[ptlist_List] :=

Block[{tmp = {}, tmp1, i, pnum = Length[ptlist]}, For[i = 1, i < pnum, i = i + 1,

tmp1 = {ptlist[[i]][[2]] - ptlist[[i + 1]][[2]], ptlist[[i + 1]][[1]] - ptlist[[i]][[1]]}/4; tmp = Join[tmp, {ptlist[[i]],

ptlist[[i]]*3/4 + ptlist[[i + 1]]/4,

ptlist[[i]]*3/4 + ptlist[[i + 1]]/4 + tmp1, ptlist[[i]]/2 + ptlist[[i + 1]]/2 + tmp1, ptlist[[i]]/2 + ptlist[[i + 1]]/2,

ptlist[[i]]/2 + ptlist[[i + 1]]/2 - tmp1, ptlist[[i]]/4 + ptlist[[i + 1]]*3/4 - tmp1, ptlist[[i]]/4 + ptlist[[i + 1]]*3/4, ptlist[[i + 1]]}] ];

tmp

]

redomk1[ptlist_list] :=

Block[{tmp = {ptlist[[1]][[2]] - ptlist[[2]][[2]],

ptlist[[2]][[1]] - ptlist[[1]][[1]]}/4}

{ptlist[[1]],

ptlist[[1]]*3/4 + ptlist[[2]]/4,

ptlist[[1]]*3/4 + ptlist[[2]]/4 + tmp,

ptlist[[1]]/2 + ptlist[[2]]/2 + tmp,

ptlist[[1]]/2 + ptlist[[2]]/2,

ptlist[[1]]/2 + ptlist[[2]]/2 - tmp,

ptlist[[1]]/4 + ptlist[[2]]*3/4 - mp,

ptlist[[1]]/4 + ptlist[[2]]*3/4,

ptlist[[2]]

}]

redomk2[ptlist_list] :=

Block[{tmp = {}, i, pnum = Length[ptlist]},

For[i = 1, i < pnum, i = i + 1,

tmp = Join[tmp, redomk1[{ptlist[[i]],

ptlist[[i + 1]]}]]];

tmp

]

In01 = {{0, 0}, {1, 0}};

Show[Graphics[Line[Nest[redominkowski, In01, 4]],

AspectRatio -> 1/GoldenRatio]]

图2.2.3 Sierpinski三角形

计算机绘出Sierpinski三角形的Mathematica程序:redosierpinski[ptlist_List] :=

Block[{tmp = {}, i, pnum = Length[ptlist]/3},

For[i = 0, i < pnum, i = i + 1,

tmp = Join[tmp, {ptlist[[3i + 1]],

(ptlist[[3i + 1]] + ptlist[[3i + 2]])/ 2,

(ptlist[[3i + 1]] + ptlist[[3i + 3]])/ 2,

(ptlist[[3i + 1]] + ptlist[[3i + 2]])/2,

ptlist[[3i + 2]],

(ptlist[[3i + 2]] + ptlist[[3i + 3]])/ 2,

(ptlist[[3i + 1]] + ptlist[[3i + 3]])/ 2,

(ptlist[[3i + 2]] + ptlist[[3i + 3]])/2,

ptlist[[3i + 3]]}]];

tmp]

showsierpinski[ptlist_List] :=

Block[{tmp = {}, i, pnum = Length[ptlist]/3},

For[i = 0, i < pnum, i = i + 1

AppendTo[tmp,Polygon[{ptlist[[3*i + 1]],

ptlist[[3*i + 2]], ptlist[[3*i + 3]]}]]];

Show[Graphics[tmp], AspectRatio -> 1/GoldenRatio]] po1 = {{-1, 0}, {1, 0}, {0, Sqrt[3]}};

showsierpinski[Nest[redosierpinski, po1, 4]]

图2.2.4龙曲线

图2.2.5 Hilbert曲线

图2.2.6 树木花草

计算机绘出树木花草的Mathematica如下:

redotree[ptlist_List] :=

Block[{tmp = {}, i, ptnum = Length[ptlist]/2,

midpt1, midpt2, leftpt, rightpt},

For[i = 0, i < ptnum, i = i + 1,

midpt1 = (ptlist[[2i + 1]]*2 + ptlist[[2i + 2]])/3;

midpt2 = (ptlist[[2i + 1]] + ptlist[[2i + 2]]*2)/3;

leftpt = midpt1 + {{Cos[theta], -Sin[theta]},

{Sin[theta], Cos[theta]}}.{ptlist[[2i + 2]][[1]] - ptlist[[2i + 1]][[1]],

ptlist[[2i + 2]][[2]] - ptlist[[2i + 1]][[2]]}/3;

rightpt =

midpt2 + {{Cos[theta], Sin[theta]}, {-Sin[theta],

Cos[theta]}}.{ptlist[[2i + 2]][[1]] - ptlist[[2i + 1]][[1]],

ptlist[[2i + 2]][[2]] - ptlist[[2i + 1]][[2]]}/3;

tmp = Join[tmp, {ptlist[[2i + 1]], midpt1, midpt1, leftpt,

midpt1, midpt2, midpt2, rightpt,midpt2, ptlist[[2i + 2]]}]];

tmp]

showtree[ptlist_List] :=

Block[{tmp = {}, i, ptnum = Length[ptlist]/2},

For[i = 0, i < ptnum, i = i + 1,

AppendTo[tmp,

Line[{ptlist[[2i + 1]], ptlist[[2i + 2]]}]]];

Show[Graphics[tmp], AspectRatio -> 3/2/Sin[theta]] ]

theta = 30Degree;

showtree[Nest[redotree, {{0, 0}, {0, 1}}, 4]]

其中,前两种分形图形的生成元比较简单,但后三种分形图形的生成元相对比较复杂。在龙曲线中,生成元将一直线段修改为由两互相垂直的线段构成的折线,但在决定向哪个方向折时存在两种选择(假设线段都有确定的定向,即我们要决定折线是在线段的左边还是在右边)。本生成元规定,折线方向对每条线段依次交替地改变(见图2.2.4)。对Hilbert 曲线,虽然它的生成元十分复杂,但其原理与龙曲线类似。在图2.2.5中,每个小线段的左侧或右侧都画了一根短线,它并不是分形图形的组成部分,它表示在下一步迭代时,生成元应位于短线指示的小正方形之内。树木花草的生成元有些特别,它具有所谓的分支结构,其中有一些参数可以改变,如每段树枝的长度以及树枝之间的夹角δ。

早在19世纪就有一些数学家对复变函数的迭代进行研究。然而,直到20世纪80年代,B.Mandelbrot 才将复变函数的迭代与分形联系起来,并绘制出了第一张以他的名字命名的引人人胜的分形图形,复变函数的迭代由此再一次成为数学家的热点研究问题。

给定初始复数0Z ,考虑如下的迭代

,2,1,021

=+=+k Z Z

k

k μ (2.2.3)

其中 ,2,1,0,=k Z k 为复数,μ为(复)常数。

对于给定的初始点0Z 迭代序列{}k Z 有可能有界,也可能发散到无穷。令μJ 是使得迭代序列{}k Z 有界的所有初值0Z 构成的集合,即

μJ ={0Z |迭代序列{}k Z 有界} (2.2.4) 我们称μJ 在复平面上构成的集合为Julia 集。对不同的参数μ,Julia 集的形状也会不同。特别地,0=μ对应的Julia 集为单位圆盘。

如果固定初值0Z ,则对不同的参数μ,迭代序列{}k Z 的有界性也不相同。令0

Z M 是使

得迭代序列{}k Z 有界的所有参数值μ构成的集合,即

Z M ={μ|迭代序列{}k Z 有界} (2.2.5)

则称0

Z M 在复平面上构成的集合为Mandelbrot 集。

为了便于在计算机上绘制出Julia 集与Mandelbrot 集,我们令k k k iy x Z +=,iq p +=μ,则(2.2.3)可改写为

,1,02122

1=??

?+=+-=++k q

y x y p y x x k k k k k k (2.2.6)

记22k k k y x r +=,则Julia 集为使得序列

{}k r 有界的初始点()y x ,构成的集合,Mandelbrot 集为使得序列{}k r 有界的参数()q p ,构成的集合。这两种集合的计算机作图方法如下:

Julia 集绘制方法。1)设定初值q p ,,一个最大的选代次数N ,图形的分辨率的大小b a ,和使用的颜色数K (如16=K )(或者给定灰度级 L );2)设定一个上界值

()

22,2m ax q p M +≥;3)将矩形区域(){}M y x M y x R ≤≤-=,|,:分成b a ?的网格,分别以每

个网格点()j

i g

f ,,其中a i M M f

i

2+

-=,b

j

M M g i 2+-=,a i ,,1,0 =,b j ,,1,0 =作为初值()00,y x 利用(riter )做迭代(实际上,只需对满足 22

02

0M y x ≤+的初始点选代)。如果

对所有N n ≤,22

2M y x n n ≤+,则将图形的()j i ,象素点用黑色显示。否则,如果从迭代的某一

步0n 开始有22

20

M y x n n >+,则用第K n mod 0种颜色显示相应象素(或者用相应的灰度级显

示)。

Mandelbrot 集的绘制方法。1)设定一个最大的选代次数 N ,图形的分辨率的大小b a ,在和使用的颜色数K (如16=K )(或者给定灰度级 L );2)设定一个上界值2≥M ;3)将矩形区域(){}M q p M q p R ≤≤-=,|,:分成b a ?的网格,分别以每个网格点()j

i g f ,,其中

a i M M f i 2+

-=,b

j

M M g i 2+

-=,a i ,,1,0 =,b j ,,1,0 =为作为参数值()q p ,利用(rriter )做迭代(实际上,只需对满足 422≤+q p 的初始点迭代),每次选代的初值均取为

()()0,0,00

=y x

。如果对所有N n ≤,22

2

M y x n n ≤+,则将图形的()j i ,点用黑色显示。否则,

如果从迭代的某一步0n 开始有22

20

M y x n n >+,则用第K n mod 0种颜色显示相应象素(或者

用相应的灰度级显示)。

Mandelbrot 集以及它的局部放大的Mathematica 程序如下:

iter[x_,y_,lim_] := Block[{c,z,ct},c = x +I*y;z = c;ct = 0;

While[(Abs[z] < 2.0) && (ct < lim),++ct;z = z*z + c;];Return[ct];] Mandelbrot1=DensityPlot[iter[x,y,50], {x,-2.0, 1.0},{y,-1.5,1.5}, PlotPoints -> 120,Mesh -> False]

Mandelbrot2 = Show[Mandelbrot1, Graphics[Line[{{-0.9, -0.25}, {-0.7,-0.25}, {-0.7,-0.05},{-0.9,-0.05}, {-0.9,-0.25}}]]]

Mandelbrot3 = DensityPlot[iter[x,y,50],{x,-0.9,-0.7},{y,-0.25,-0.05}, PlotPoints -> 120,Mesh -> False]

Julia 集图形的Mathematica 程序:

julia[x_,y_,lim_,cx_,cy_] :=Block[{z, ct = 0}, z = x + I*y;

While[(Abs[z] <2.0) && (ct < lim), ++ct; z = z*z + (cx +I*cy);];Return[ct];] julia1=DensityPlot[julia[x, y,50, 0.27334, 0.00742],{x,-1.5,1.5}, {y,-1.5,1.5}, PlotPoints -> 120, Mesh -> False]

julia2 = Show[julia1,Graphics[Line[{{-0.7, -0.1},

{-0.3,-0.1},{-0.3,0.3},{-0.7,0.3},{-0.7,-0.1}}]]]

julia3 = DensityPlot[julia[x,y,50,0.27334,0.00742],{x,-0.7,-0.4},{y,-0.1,0.3}, PlotPoints -> 120,Mesh -> False]

给定一组(仿射)变换i ω:

n i b y a x a b y a x a y

x

i i i i

i i i ,,2,11121111211 =???

? ??++++=???? ?

以及相应的一组概率n p p p ,,,21 (0,121>=+++i n p p p p ),对于任意选取的初始值

()0

00,y

x Z =,以概率i

p

选取变换i ω做迭代

()()n n i n n n y x y x Z ,,111ω==+++ , n i ,,2,1 = 则点列k Z ,n i ,,2,1 =收敛的极限图形称为一个IFS 吸引子。

IFS 迭代绘制分形的方法。设计算机屏幕的可视窗口为

(){}m a x m i n m a x m i n ,|,y y y x x x y x V ≤≤≤≤=

按分辨率大小的要求将V 分成b a ?的网格,网格点为()i i y x ,,这里 ()a i a

i x

x

x x i ,,1,0,m in

m ax

m in

=-+= ()b j a

j

y y

y

y i ,,1,0,

m in

m ax

m in

=-+

=

用j i V 表示矩形区域(){}1

1,|,++≤≤≤≤j j i i y

y y x

x x y x 。假设我们采取具有L (如L=256)级

灰度的黑白图象绘制,总共的迭代次数为 N ,其中落j

i V 中的点的个数为j

i μ

。再记1,,1,0,1,,1,0,max -=-==b j a i j i μμ,则象素()j i ,的灰度()j i G ,与落于j

i V

中的

点数成正比:

()L j i G j i ?-=μμ,

于是即给出了IFS 迭代产生的分形的L 级灰度图象。

Mathematica 程序如下:

pl=0.3;aaa=1/2 +I1//N;f1[z_]:=(z+aaa)/2; p2=0.3;bbb=0//N;f2[z_]:=(z+bbb)/2; p3=0.4;ccc=1//N; f3[z_]:=(z+ccc)/2; f[z_]:=Block[{tmp},tmp=Random[];

Which[tmp

ShowIFS[z0_,MeshRange_List,divi_List,nmax_]:=

Block[{i,j,z=z0,a=divi[[1]],b=divi[[2]],temp1,temp2,mumax=0}, For[i=a,i>=1,i--,For[j=b,j>=1,j--,mu[i, j]= 0]]; For[i=nmax,i>=1,i--,

temp1=Floor[divi[[1]]*(Re[z]- MeshRange[[1]] [[1]])/( MeshRange[[2]] [[1]]- MeshRange[[1]][[1]])]+1; temp2=

Floor[divi[[2]]*(Im[z]- MeshRange[[1]] [[2]])/( MeshRange[[2]] [[2]]- MeshRange[[1]] [[2]])]+1; mu[temp1,temp2]++; z=f[z]; ];

For[i=a,i>=1,i--,

For[j=b,j>= 1,j--,mumax=Max[mumax, mu[i,j]]]]; mul=Table[GrayLevel[1-N[mu[j,i]]/mumax],{i,a},{j,b}]; Show[Graphics[RasterArray[mu1]]] ]

ShowIFS[0+I0,{{-0.1,-0.1},{1.1,1.1}},{150,150},100000]

三、实验方案

3.1迭代序列与不动点

首先对函数3

85

25+-=

x x y 研究不动点,需要 (1)对Plot 中{x,-10,20}可改为{x,-50,50};对PlotRange 中{ -1,20}可改为{-50,50}; (2)x0=5.5中5.5分别改为-30,-20,-5,-3.001,-2.999,-1,0,1,1.5,2.5,4,4.5,4.9,4.999,5,5.1,5.001,6,10,16,17,18,20,30;

(3)对t=Table[x[i],{i,1,10}]//N 中10分别改为100,200,500,1000; (4)对i<=100中100分别改为200,500,1000。 运行程序后观察蛛网图与散点图!一看数列是否收敛?如收敛,极限是多少?收敛速度是快是慢?二看蛛网图中的轨道是否趋于平衡点?与平衡点处曲线的斜率有没有关系?三看初值对结果有没有影响?

其次,分别就x x f sin )(=,1)(+-=x x f 等函数利用(2.2.1)做迭代序列}{n x ,观察蛛网图中的轨道是否趋于平衡点和序列的收敛性。

3.2 Logistic 映射与混沌

就Logistic 映射,对a =0.5,1,1.2,2,2.1,2.9,2.999,3,3.001,3.2,3.235,3.236,3.237,3.44等,分别取x 0= 0,0.2,0.5,0.8,1.0运行程序,观察结果。

观察结果就是看数列是否收敛,蛛网图中的轨道是否趋于平衡点,与a 的关系!对a 的定义范围[0,4]分成若干个区间,就初值(属于(0,1)时)看数列是否收敛,蛛网图中的轨道是否趋于平衡点?可用散点图认识。 对Logistic 映射讨论下列问题:

1)找出一个a 值,它对应的迭代具有2周期点。这种性质依赖于初值吗?你能找到多个a 值具有这种性质吗?

2)你能对任意的k 找到一个a 值,使得它对应的迭代具有k 周期点吗?哪些k 值能给出k 周期点?在每种情况下,结果是否依赖于初值的选取?

3)如果某个a 值能给出周期点,它是否一定是吸引的周期点?你能否找到排斥的周期点? 4)试着从理论上分析:()x f 的不动点是什么?对哪些a 值迭代收敛到每个不动点?哪些初值收敛到不动点?哪些初值导致发散?对周期点做类似的分析。

研究锯齿函数和帐篷函数的混沌行为时,分别取x 0=0,0.2,0.5,0.8,1.0运行程序(改变函数,要修改函数的定义方式),研究数列及蛛网图中的轨道。

3.3 方程求根

对于方程0123

=+-x x ,首先分别考虑函数21

3+x ,212x

x -,312-x ,取不同的初值x0

(例如-9,-5,-2,-1,-0.5,0,0.5,1, 2 ,8,10 等),生成相应的数列。若数列有极限,则极限即为所

求根。

其次用牛顿切线法求根,取不同的初值x 0(例如-9,-5,-2,-1,-0.5,0,0.5,1, 2,8,10等),由此数列的极限即为所求根。

思考:为何数列收敛?分析原因!此外,初值x0决定数列的极限吗? 最后考虑用其它方法求根。

而对于sinx -x +1=0及其它方程求根,类同上述步骤。

3.4 分形

1、用Koch 曲线的生成元做迭代得到的极限图形称为Koch 雪花曲线。 (1)试用计算机画出Koch 雪花曲线;

(2)试计算雪花曲线的边长及面积,它们是否有限?你如何解释所得出的结论? (3)雪花曲线是否光滑(即每一点是否有切线存在)? (4)其它的一些分形是否具有类似的性质? 2、编写绘制Julia 集的程序。对不同的参数()q p ,:(0,1),(-1,0),(0.11,0.66),(-0.102 81,0.957 23),(-1.25,-0。01)观察Julia 集的变化。取Julia 集的不同局部放大,你能看到某种自相似现象吗?

绘制Mandelbrot 集。然后,任意选取它的一个局部将其放大,然后再将放大图形的不

同局部放大。由此观察Mandelbrot 集与Julia 集有何关系。进一步,取参数μ位于Mandelbrot 集的不同部位(如内部、外部、边界、某个苞芽的内部等),现察相应的Julia 集的形状的变化。

3、给定仿射变换

()11+=Z s Z ω ()12-=Z s Z ω 以及相应的概率2

1

21=

=p p ,其中Z s ,为复数取i s 5.05.0+=,绘制相应的IFS 迭代的吸引子的图形。取不同的s ,观察图形的变化。

4、请你概括一下分形的一般特征。

5、二维迭代分形。考虑函数c bx gnx y y x f --=),(与x a y x g -=),(构成的二维迭代分形称为Martin 迭代。现观察其当300,2,45===c b a 时,取初值所得到的二维迭代散点图。程序如下:

a = 45;

b = 2;

c = -300;xn = 0; yn = 0; g = {{0, 0}}; For[n = 1, n <= 5000, n++, xN = xn; yN = yn;

xn = yN - Sign[xN]*N[Sqrt[Abs[b*xn - c]]]; yn = a - xN;

g = Append[g, {xn, yn}]; ];

ListPlot[g, PlotStyle -> RGBColor[1, 0, 0],AspectRatio -> Automatic]

问题:

(1)试着提高迭代次数至20000,50000,100000等观察图形有什么变化。 (2)取参数为其它的值时会得到什么图形?

三、实验过程与结果

3.1迭代序列与不动点 实验一:

稳定点为5、17 图像结果:

结果分析:从图像上可以观察到,数列收敛于一个常数 实验二:

对Plot 中{x,-10,20}可改为{x,-50,50};对PlotRange 中{ -1,20}可改为{-50,50} 稳定点为5、17 图像结果:

结果分析:数列收敛到17,收敛速度慢,蛛网图中的轨道趋于平衡点,与平衡点处曲线斜率有关。

实验三:

x0=5.5中5.5分别改为-30,-20,-5,-3.001,-2.999,-1,0,1,1.5,2.5,4,4.5,4.9,4.999,5,5.1,5.001,6,10,16,17,18,20,30;

1)x0=5.5

2) x0=-30

3) x0=-20

4) x0=-1

5) x0=2.5

6) xo=3

7) xo=4.5

8) x0=5.001

9) x0=10

10) x0=20

结果分析;从对蛛网图与散点图的观察发现,数列收敛到17,收敛速度慢,蛛网图中的轨道趋于平衡点,与平衡点处曲线的斜率逐渐相接近,初始值对结果没影响。

实验四:

对t=Table[x[i],{i,1,10}]//N中10分别改为100,200,500,1000

1)改为100

2)改为200

结果分析:从对蛛网图与散点图观察发现,数列收敛,收敛速度很快,蛛网图中的轨道趋于平衡点,初始值对结果没有影响。

实验五:

对i<=100中100分别改为200,500,1000。

1)i<=200

2)i<=500

3)i<=1000

{{x→5},{x→17}}

结果分析:从对蛛网图与散点图观察发现,数列收敛,收敛速度很快,蛛网图中的轨道趋于平衡点,初始值对结果没有影响。 实验六:

分别就x x f sin )(=,1)(+-=x x f 等函数利用(2.2.1)做迭代序列}{n x 1) f(x)=sin x

2)f(x)= -x +1

结果分析:从对蛛网图与散点图观察发现,数列收敛,收敛速度很快,蛛网图中的轨道趋于平衡点,初始值对结果没有影响。

3.2 Logistic 映射与混沌

实验一:

就Logistic 映射,对a =0.5,1,1.2,2,2.1,2.9,2.999,3,3.001,3.2,3.235,3.236,3.237,3.44等,分别取x 0= 0,0.2,0.5,0.8,1.0运行程序,观察结果。 1) a=0.5 xo=0

2)

a=0.5 x0=0.2

a=0.5 xo=0.5

a=0.5 xo=0.8

a=0.5 xo=1

2)a=2.1 xo=0.

a=2.1 xo=0.2

a=2.1 xo=0.5

a=2.1 xo=0.8

a=2.1 xo=1.0

3)a=3.001 xo=0

a=3.001 xo=0.2

a=3.001 xo=0.5

a=3.001 xo=0.8

数学模型实验报告

数学模型实验报告 实验内容1. 实验目的:学习使用lingo和MATLAB解决数学模型问题 实验原理: 实验环境:MATLAB7.0 实验结论: 源程序 第4章:实验目的,学会使用lingo解决数学模型中线性规划问题1.习题第一题 实验原理: 源程序: 运行结果: 、 管 路 敷 设 技 术 通 过 管 线 不 仅 可 以 解 决 吊 顶 层 配 置 不 规 范 高 中 资 料 试 卷 问 题 , 而 且 可 保 障 各 类 管 路 习 题 到 位 。 在 管 路 敷 设 过 程 中 , 要 加 强 看 护 关 于 管 路 高 中 资 料 试 卷 连 接 管 口 处 理 高 中 资 料 试 卷 弯 扁 度 固 定 盒 位 置 保 护 层 防 腐 跨 接 地 线 弯 曲 半 径 标 等 , 要 求 技 术 交 底 。 管 线 敷 设 技 术 中 包 含 线 槽 、 管 架 等 多 项 方 式 , 为 解 决 高 中 语 文 电 气 课 件 中 管 壁 薄 、 接 口 不 严 等 问 题 , 合 理 利 用 管 线 敷 设 技 术 。 线 缆 敷 设 原 则 : 在 分 线 盒 处 , 当 不 同 电 压 回 路 交 叉 时 , 应 采 用 金 属 隔 板 进 行 隔 开 处 理 ; 同 一 线 槽 内 强 电 回 路 须 同 时 切 断 习 题 电 源 , 线 缆 敷 设 完 毕 , 要 进 行 检 查 和 检 测 处 理 。 、 电 气 课 件 中 调 试 对 全 部 高 中 资 料 试 卷 电 气 设 备 , 在 安 装 过 程 中 以 及 安 装 结 束 后 进 行 高 中 资 料 试 卷 调 整 试 验 ; 通 电 检 查 所 有 设 备 高 中 资 料 试 卷 相 互 作 用 与 相 互 关 系 , 根 据 生 产 工 艺 高 中 资 料 试 卷 要 求 , 对 电 气 设 备 进 行 空 载 与 带 负 荷 下 高 中 资 料 试 卷 调 控 试 验 ; 对 设 备 进 行 调 整 使 其 在 正 常 工 况 下 与 过 度 工 作 下 都 可 以 正 常 工 作 ; 对 于 继 电 保 护 进 行 整 核 对 定 值 , 审 核 与 校 对 图 纸 , 编 写 复 杂 设 备 与 装 置 高 中 资 料 试 卷 调 试 方 案 , 编 写 重 要 设 备 高 中 资 料 试 卷 试 验 方 案 以 及 系 统 启 动 方 案 ; 对 整 套 启 动 过 程 中 高 中 资 料 试 卷 电 气 设 备 进 行 调 试 工 作 并 且 进 行 过 关 运 行 高 中 资 料 试 卷 技 术 指 导 。 对 于 调 试 过 程 中 高 中 资 料 试 卷 技 术 问 题 , 作 为 调 试 人 员 , 需 要 在 事 前 掌 握 图 纸 资 料 、 设 备 制 造 厂 家 出 具 高 中 资 料 试 卷 试 验 报 告 与 相 关 技 术 资 料 , 并 且 了 解 现 场 设 备 高 中 资 料 试 卷 布 置 情 况 与 有 关 高 中 资 料 试 卷 电 气 系 统 接 线 等 情 况 , 然 后 根 据 规 范 与 规 程 规 定 , 制 定 设 备 调 试 高 中 资 料 试 卷 方 案 。 、 电 气 设 备 调 试 高 中 资 料 试 卷 技 术 电 力 保 护 装 置 调 试 技 术 , 电 力 保 护 高 中 资 料 试 卷 配 置 技 术 是 指 机 组 在 进 行 继 电 保 护 高 中 资 料 试 卷 总 体 配 置 时 , 需 要 在 最 大 限 度 内 来 确 保 机 组 高 中 资 料 试 卷 安 全 , 并 且 尽 可 能 地 缩 小 故 障 高 中 资 料 试 卷 破 坏 范 围 , 或 者 对 某 些 异 常 高 中 资 料 试 卷 工 况 进 行 自 动 处 理 , 尤 其 要 避 免 错 误 高 中 资 料 试 卷 保 护 装 置 动 作 , 并 且 拒 绝 动 作 , 来 避 免 不 必 要 高 中 资 料 试 卷 突 然 停 机 。 因 此 , 电 力 高 中 资 料 试 卷 保 护 装 置 调 试 技 术 , 要 求 电 力 保 护 装 置 做 到 准 确 灵 活 。 对 于 差 动 保 护 装 置 高 中 资 料 试 卷 调 试 技 术 是 指 发 电 机 一 变 压 器 组 在 发 生 内 部 故 障 时 , 需 要 进 行 外 部 电 源 高 中 资 料 试 卷 切 除 从 而 采 用 高 中 资 料 试 卷 主 要 保 护 装 置 。

数学建模实验报告

在下面的题目中选做100分的题目,给出详略得当的答案。 一.通过举例简要说明数学建模的一般过程或步骤。(15分) 答:建立数学模型的方法大致有两种,一种是实验归纳的方法,即根据测试或计算数据,按照一定的数据,按照一定的数学方法,归纳出系统的数学模型;另一种是理论分析的方法,具体步骤有五步(以人口模型 为例): 1、明确问题,提出合理简化的假设:首先要了解问题的实际背景,明确题目的要求,收集各种必要的信息 2、建立模型:据所做的假设以及事物之间的联系,构造各种量之间的关系。(查资料得出数学式子或算法)。 3、模型求解:利用数学方法来求解上一步所得到的数学问题,此时往往还要做出进一步的简化或假设。注意要尽量采用简单的数学公具。例如:马尔萨斯模型,洛杰斯蒂克模型 4、模型检验:根据预测与这些年来人口的调查得到的数目进行对比检验 5、模型的修正和最后应用:所建立的模型必须在实际应用中才能产生效益,根据预测模型,制定方针政策,以实现资源的合理利用和环境的保护。 二.把一张四条腿等长的正方形桌子放在稍微有些起伏的地面上,通常只有三只脚着地,然而 只需稍为转动一定角度,就可以使四只脚同时着地,即放稳了。(1) 请用数学模型来描述和证明这个实际问题; (2)讨论当桌子是长方形时,又该如何描述和证明?(15分) 答: 模型假设: 1.椅子四条腿一样长,椅脚与地面的接触部分相对椅子所占的地面面积可视为一个点。 2.地面凹突破面世连续变化的,沿任何方向都不会出现间断(没有向台阶那样的情况),即地面可看作数学上的连续曲面。 3.相对椅脚的间距和椅子腿的长度而言,地面是相对平坦的,即使椅子在任何位置至少有三条腿同时着地。4.椅子四脚连线所构成的四边形是圆内接四边形,即椅子四脚共圆。 5.挪动仅只是旋转。 我们将椅子这两对腿的交点作为坐标原点,建立坐标系,开始时AC、BD这两对腿都在坐标轴上。将AC和BD这两条腿逆时针旋转角度θ。记AC到地面的距离之和为f(θ)。记BD到 地面的距离之和为g(θ)。易得f(θ),g(θ)至少有一个为零。

数学建模实验报告

数学建模实验报告

一、实验目的 1、通过具体的题目实例,使学生理解数学建模的基本思想和方法,掌握 数学建模分析和解决的基本过程。 2、培养学生主动探索、努力进取的的学风,增强学生的应用意识和创新 能力,为今后从事科研工作打下初步的基础。 二、实验题目 (一)题目一 1、题目:电梯问题有r个人在一楼进入电梯,楼上有n层。设每个 乘客在任何一层楼出电梯的概率相同,试建立一个概率模型,求直 到电梯中的乘客下完时,电梯需停次数的数学期望。 2、问题分析 (1)由于每位乘客在任何一层楼出电梯的概率相同,且各种可能的情况众多且复杂,难于推导。所以选择采用计算机模拟的 方法,求得近似结果。 (2)通过增加试验次数,使近似解越来越接近真实情况。 3、模型建立 建立一个n*r的二维随机矩阵,该矩阵每列元素中只有一个为1,其余都为0,这代表每个乘客在对应的楼层下电梯(因为每 个乘客只会在某一层下,故没列只有一个1)。而每行中1的个数 代表在该楼层下的乘客的人数。 再建立一个有n个元素的一位数组,数组中只有0和1,其中1代表该层有人下,0代表该层没人下。 例如: 给定n=8;r=6(楼8层,乘了6个人),则建立的二维随机矩阵及与之相关的应建立的一维数组为: m = 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 c = 1 1 0 1 0 1 1 1 4、解决方法(MATLAB程序代码):

n=10;r=10;d=1000; a=0; for l=1:d m=full(sparse(randint(1,r,[1,n]),1:r,1,n,r)); c=zeros(n,1); for i=1:n for j=1:r if m(i,j)==1 c(j)=1; break; end continue; end end s=0; for x=1:n if c(x)==1 s=s+1; end continue; end a=a+s; end a/d 5、实验结果 ans = 6.5150 那么,当楼高11层,乘坐10人时,电梯需停次数的数学期望为6.5150。 (二)题目二 1、问题:某厂生产甲乙两种口味的饮料,每百箱甲饮料需用原料6 千克,工人10名,可获利10万元;每百箱乙饮料需用原料5千 克,工人20名,可获利9万元.今工厂共有原料60千克,工人 150名,又由于其他条件所限甲饮料产量不超过8百箱.问如何 安排生产计划,即两种饮料各生产多少使获利最大.进一步讨 论: 1)若投资0.8万元可增加原料1千克,问应否作这项投资. 2)若每百箱甲饮料获利可增加1万元,问应否改变生产计划. 2、问题分析 (1)题目中共有3个约束条件,分别来自原料量、工人数与甲饮料产量的限制。 (2)目标函数是求获利最大时的生产分配,应用MATLAB时要转换

数学建模实验报告最优捕鱼策略

最优捕鱼策略 一.实验目的: 1、了解与熟练掌握常系数线性差分方程的解法; 2、通过最优捕鱼策略建模案例,使用MATLAB软件认识与掌握差分方程模型在实际生活方面的重要作用。 二.实验内容:(最优捕鱼策略) 生态学表明,对可再生资源的开发策略应在事先可持续收获的前提下追求最大经济效益。考虑具有4个年龄鱼:1龄鱼,…,4龄鱼的某种鱼。该鱼类在每年后4个月季节性集中产卵繁殖。而据规定,捕捞作业只允许在前8个月进行,每年投入的捕捞能力固定不变,单位时间捕捞量与个年龄鱼群条数的比例称为捕捞强度系数。使用只能捕捞3、4龄鱼的13mm网眼的拉网,其两个捕捞强度系数比为:1.渔业上称这种方式为固定力量捕捞。 该鱼群本身有如下数据: 1.各年龄组鱼的自然死亡率为(1/年),其平均质量分别为,,,(单位:g);2.1龄鱼和2龄鱼不产卵,产卵期间,平均每条4龄鱼产卵量为ⅹ105(个),3龄鱼为其一半; 3.卵孵化的成活率为ⅹ1011/(ⅹ1011 + n)(n为产卵总量); 有如下问题需要解决: 1)分析如何实现可持续捕获(即每年开始捕捞时各年龄组鱼群不变),并在此前提下得到最高收获量; 2)合同要求某渔业公司在5年合同期满后鱼群的生产能力不能受到太大的破坏,承包时各年龄组鱼群数量为122,,,(ⅹ109条),在固定努力量的捕捞方式下,问该公司应采取怎样的捕捞策略,才能使总收获量最高。 三. 模型建立 假设a、鱼群总量的增加虽然是离散的,但对大规模鱼群而言,我们可以假设鱼群总量的变化随时间是连续的;b、龄鱼到来年分别长一岁成为i + 1龄鱼,i = 1,2,3;c、4龄鱼在年末留存的数量占全部数量的比例相对很小,可假设全部死

数学建模实验报告

数学建模实验报告 实验一计算课本251页A矩阵的最大特征根和最大特征向量 1 实验目的 通过Wolfram Mathematica软件计算下列A矩阵的最大特征根和最大特征向量。 2 实验过程 本实验运用了Wolfram Mathematica软件计算,计算的代码如下:

3 实验结果分析 从代码的运行结果,可以得到最大特征根为5.07293,最大特征向量为 {{0.262281},{0.474395},{0.0544921},{0.0985336},{0.110298}},实验结果 与标准答案符合。

实验二求解食饵-捕食者模型方程的数值解 1实验目的 通过Wolfram Mathematica或MATLAB软件求解下列习题。 一个生物系统中有食饵和捕食者两种种群,设食饵的数量为x(t),捕食者为y(t),它们满足的方程组为x’(t)=(r-ay)x,y’(t)=-(d-bx)y,称该系统为食饵-捕食者模型。当r=1,d=0.5,a=0.1,b=0.02时,求满足初始条件x(0)=25,y(0)=2的方程的数值解。 2 实验过程 实验的代码如下 Wolfram Mathematica源代码: Clear[x,y] sol=NDSolve[{x'[t] (1-0.1y[t])x[t],y'[t] 0.02x[t]y[t]-0.5y[t],x[0 ] 25,y[0] 2},{x[t],y[t]},{t,0,100}] x[t_]=x[t]/.sol y[t_]=y[t]/.sol g1=Plot[x[t],{t,0,20},PlotStyle->RGBColor[1,0,0],PlotRange->{0,11 0}] g2=Plot[y[t],{t,0,20},PlotStyle->RGBColor[0,1,0],PlotRange->{0,40 }] g3=Plot[{x[t],y[t]},{t,0,20},PlotStyle→{RGBColor[1,0,0],RGBColor[ 0,1,0]},PlotRange->{0,110}] matlab源代码 function [ t,x ]=f ts=0:0.1:15; x0=[25,2]; [t,x]=ode45('shier',ts,x0); End function xdot=shier(t,x)

数学建模与数学实验报告

数学建模与数学实验报告 指导教师__郑克龙___ 成绩____________ 组员1:班级______________ 姓名______________ 学号_____________ 组员2:班级______________ 姓名______________ 学号______________ 实验1.(1)绘制函数cos(tan())y x π=的图像,将其程序及图形粘贴在此。 >> x=-pi:0.01:pi; >> y=cos(tan(pi*x)); >> plot(x,y) -4 -3 -2 -1 1 2 3 4 -1-0.8-0.6-0.4-0.200.20.40.60.8 1 (2)用surf,mesh 命令绘制曲面2 2 2z x y =+,将其程序及图形粘贴在此。(注:图形注意拖放,不要太大)(20分) >> [x,y]=meshgrid([-2:0.1:2]); >> z=2*x.^2+y.^2; >> surf(x,y,z)

-2 2 >> mesh(x,y,z) -2 2 实验2. 1、某校60名学生的一次考试成绩如下:

93 75 83 93 91 85 84 82 77 76 77 95 94 89 91 88 86 83 96 81 79 97 78 75 67 69 68 84 83 81 75 66 85 70 94 84 83 82 80 78 74 73 76 70 86 76 90 89 71 66 86 73 80 94 79 78 77 63 53 55 1)计算均值、标准差、极差、偏度、峰度,画出直方图;2)检验分布的正态性;3)若检验符合正态分布,估计正态分布的参数并检验参数. (20分) 1) >> a=[93 75 83 93 91 85 84 82 77 76 77 95 94 89 91 88 86 83 96 81 79 97 78 75 67 69 68 84 83 81 75 66 85 70 94 84 83 82 80 78 74 73 76 70 86 76 90 89 71 66 86 73 80 94 79 78 77 63 53 55]; >> pjz=mean(a) pjz = 80.1000 >> bzhc=std(a) bzhc = 9.7106 >> jc=max(a)-min(a) jc = 44 >> bar(a)

数学建模实验报告第十一章最短路问答

实验名称:第十一章最短路问题 一、实验内容与要求 掌握Dijkstra算法和Floyd算法,并运用这两种算法求一些最短路径的问题。 二、实验软件 MATLAB7.0 三、实验内容 1、在一个城市交通系统中取出一段如图所示,其入口为顶点v1,出口为顶点v8,每条弧段旁的数字表示通过该路段所需时间,每次转弯需要附加时间为3,求v1到v8的最短时间路径。 V1 1 V2 3 V3 1 V5 6 V6 V4 2 V7 4 V8

程序: function y=bijiaodaxiao(f1,f2,f3,f4) v12=1;v23=3;v24=2;v35=1;v47=2;v57=2;v56=6;v68=3;v78=4; turn=3; f1=v12+v23+v35+v56+turn+v68; f2=v12+v23+v35+turn+v57+turn+v78; f3=v12+turn+v24+turn+v47+v78; f4=v12+turn+v24+v47+turn+v57+turn+v56+turn+v68; min=f1; if f2

f4 实验结果: v1到v8的最短时间路径为15,路径为1-2-4-7-8. 2、求如图所示中每一结点到其他结点的最短路。V110 V3V59 V6

floy.m中的程序: function[D,R]=floyd(a) n=size(a,1); D=a for i=1:n for j=1:n R(i,j)=j; end end R for k=1:n for i=1:n for j=1:n if D(i,k)+D(k,j)

数学建模实验报告

matlab 试验报告 姓名 学号 班级 问题:.(插值) 在某海域测得一些点(x,y)处的水深z 由下表给出,船的吃水深度为5英尺,在矩形区域(75,200)*(-50,150)里的哪些地方船要避免进入。 问题的分析和假设: 分析:本题利用插值法求出水深小于5英尺的区域,利用题中所给的数据,可以求出通过空间各点的三维曲面。随后,求出水深小于5英尺的范围。 基本假设:1表中的统计数据均真实可靠。 2矩形区域外的海域不对矩形海域造成影响。 符号规定:x ―――表示海域的横向位置 y ―――表示海域的纵向位置 z ―――表示海域的深度 建模: 1.输入插值基点数据。 2.在矩形区域(75,200)×(-50,150)作二维插值,运用三次插值法。 3.作海底曲面图。 4.作出水深小于5的海域范围,即z=5的等高线。 x y z 129 140 103.5 88 185.5 195 105 7.5 141.5 23 147 22.5 137.5 85.5 4 8 6 8 6 8 8 x y z 157.5 107.5 77 81 162 162 117.5 -6.5 -81 3 56.5 -66.5 84 -33.5 9 9 8 8 9 4 9

求解的Matlab程序代码: x=[129 140 103.5 88 185.5 195 105.5 157.5 107.5 77 81 162 162 117.5]; y=[7.5 141.5 23 147 22.5 137.5 85.5 -6.5 -81 3 56.5 -66.5 84 -33.5]; z=[-4 -8 -6 -8 -6 -8 -8 -9 -9 -8 -8 -9 -4 -9]; cx=75:0.5:200; cy=-50:0.5:150; cz=griddata(x,y,z,cx,cy','cubic'); meshz(cx,cy,cz),rotate3d xlabel('X'),ylabel('Y'),zlabel('Z') %pause figure(2),contour(cx,cy,cz,[-5 -5]);grid hold on plot(x,y,'+') xlabel('X'),ylabel('Y') 计算结果与问题分析讨论: 运行结果: Figure1:海底曲面图:

数学建模实验报告(1)

四川师范大学数学与软件科学学院 实验报告 课程名称:数学建模 指导教师:陈东 班级:_2008级2班_____________ 学号:__2008060244___________ 姓名:___邢颖________ 总成绩:______________

数学与软件科学学院 实验报告 学期:_2009__ 年至2010 _年____ 第_ 二___ 学期 2010 年 4 月 1 _日 课程名称:_数学建模__ 专业:数学与应用数学____ 2008__ _级_ 2 ___班 实验编号: 1 实验项目_Matlab 入门_ 指导教师 陈东 姓名: 邢颖 ____ 学号: 2008060244 一、实验目的及要求 实验目的: 实验要求: 二、实验内容 (1)用起泡法对10个数由小到大排序. 即将相邻两个数比较,将小的调到前头. (2)有一个 4*5 矩阵,编程求出其最大值及其所处的位置. (3)编程求 (4)一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下. 求它在第10次落地时,共经过多少米?第10次反弹有多高? (5)有一函数 ,写一程序,输入自变量的值,输出函数值. 三、实验步骤(该部分不够填写.请填写附页) (2) x=[1 6 2 7 6;4 6 1 3 2;1 2 3 4 7;8 1 4 6 3]; t=x(1,1); for i=1:4 for j=1:5 if x(i,j)>t t=x(i,j); a=[i,j]; end ∑=20 1! n n y xy x y x f 2sin ),(2 ++=

end end (3)程序1: x(1)=1; s=1; for n=2:20 x(n)=x(n-1)*n; s=s+x(n); end s 程序2; s=0,m=1; for n=2:20; m=m*n; s=s+m; end s 结果:s = 2.5613e+018 (4)程序 s=100 h=s/2 for n=2:10 s=s+2*h h=h/2 end s,h 结果:s = 299.6094 h = 0.0977 (5)程序: function f=fun1(x,y) f=x^2+sin(x*y)+2*y

1数学数模实验报告

1数学数模实验报告

福建农林大学计算机与信息学院 (数学类课程) 实验报告 课程名称:数学模型 姓名:苏志东 系:数学 专业:数学与应用数学 年级:2014级 学号: 指导教师:姜永 职称:副教授 2016年6月12日

实验项目列表

福建农林大学计算机与信息学院数学类实验报告(一) 系: 数学 专业: 数学与应用数学 年级: 2014级 姓名: 学号: 3 实验课程: 数学模型 实验室号: 明南附203 实验设备号: 实验时间: 2016/6/6 指导教师签字: 成绩: 1.实验项目名称: 数学规划模型建立及其软件求解 2.实验目的和要求: 了解数学规划的的基本理论和方法,并用于建立实 际问题的数学规划模型;会用LINGO 软件解数学规划问题并对结果加以分析应用。 3.实验使用的主要仪器设备和软件: 联想启天M430E 电脑; LINGO12.0或以上版本。 4.实验的基本理论和方法: 一般地,数学规划模型可表述成如下形式: )(in x f z M x = .,...,2,1,0)(s.t.m i x g i =≤ 其中)(x f 表示目标函数,),...,2,1(0)(m i x g i =≤为约束条件。 LINGO 用于解决二次规划、线性规划以及非线性规划问题,同时可以求解线性或非线性方程(组)。LINGO 的最大特色在于通过高运行速度解决优化模型中的决策变量的整数取值问题。 线性优化求解程序通常使用单纯性算法,可以使用LINGO 的内点算法解决大规模规划问题。非线性规划可通过迭代求解一系列线性规划求解。 5.实验内容与步骤:

数学建模迭代实验报告(新)

非 线 性 迭 代 实 验 报 告 一、实验背景与实验目的 迭代是数学研究中的一个非常重要的工具,通过函数或向量函数由初始结点生成迭代结点列,也可通过函数或向量函数由初值(向量)生成迭代数列或向量列。 蛛网图也是一个有用的数学工具,可以帮助理解通过一元函数由初值生成的迭代数列的敛散性,也帮助理解平衡点(两平面曲线交点)的稳定性。 本实验在Mathematica 平台上首先利用蛛网图和迭代数列研究不动点的类型;其次通过蛛网图和迭代数列研究Logistic 映射,探索周期点的性质、认识混沌现象;第三通过迭代数列或向量列求解方程(组)而寻求有效的求解方法;最后,利用结点迭代探索分形的性质。 二、实验材料 2.1迭代序列与不动点 给定实数域上光滑的实值函数)(x f 以及初值0x ,定义数列 )(1n n x f x =+, ,2,1,0=n (2.2.1) }{n x 称为)(x f 的一个迭代序列。 函数的迭代是数学研究中的一个非常重要的思想工具,利用迭代序列可以研究函数)(x f 的不动点。 对函数的迭代过程,我们可以用几何图象来直观地显示它——“蜘蛛网”。运行下列Mathematica 程序: Clear[f] f[x_] := (25*x - 85)/(x + 3); (实验时需改变函数) Solve[f[x]==x , x] (求出函数的不动点) g1=Plot[f[x], {x, -10, 20}, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity]; g2=Plot[x, {x, -10, 10}, PlotStyle -> RGBColor[0, 1, 0], DisplayFunction -> Identity]; x0=5.5; r = {}; r0=Graphics[{RGBColor[0, 0, 1], Line[{{x0, 0}, {x0, x0}}]}]; For[i = 1, i <= 100, i++, r=Append[r, Graphics[{RGBColor[0, 0, 1], Line[{{x0, x0}, {x0, f[x0]}, {f[x0], f[x0]}}] }]]; x0=f[x0] ]; Show[g1, g2, r, r0, PlotRange -> {-1, 20}, (PlotRange 控制图形上下范围) DisplayFunction -> $DisplayFunction] x[0]=x0; x[i_]:=f[x[i-1]]; (定义序列) t=Table[x[i],{i,1,10}]//N ListPlot[t] (散点图) 观察蜘蛛网通过改变初值,你能得出什么结论? 如果只需迭代n 次产生相应的序列,用下列Mathematica 程序: Iterate[f_,x0_,n_Integer]:= Module[{ t={},temp= x0},AppendTo[t,temp]; For[i=1,i <= n, i++,temp= f[temp]; AppendTo[t,temp]]; t ] f[x_]:= (x+ 2/x)/2; Iterate[f,0.7,10]

数模实验报告

数学建模与实验实验报告 姓名:李明波 院系:仪器科学与工程学院 学号:22013108 老师:王峰

数学建模与实验实验报告 实验一 实验题目 (1)已知某平原地区的一条公路经过如下坐标所示的点,请采用样条插值绘出这条公路(不考虑 (2)对于上表给出的数据,估计公路长度。 实验过程 (1)第一问代码如下: X=[0,30,50,70,80,90,120,148,170,180,202,212,230,248,268,271,280,290,300,312,320,340,3 60,372,382,390,416,430,478]; Y=[80,64,47,42,48,66,80,120,121,138,160,182,200,208,212,210,200,196,188,186,200,184,1 88,200,202,240,246,280,296]; %给出坐标点 xx=0:1:478;%选取0~478内的点 yy=spline(X,Y,xx);%样条插值法找出曲线 plot(X,Y, 'p ',xx,yy, 'g ');%绘出曲线图 x=[440,420,380,360,340,320,314,280,240,200]; y=[308,334,328,334,346,356,360,392,390,400]; hold on xy=440:-1:200; yx=spline(x,y,xy); plot(x,y, 'p ',xy,yx, 'g '); 运行上述代码得到结果如下:

上图为所绘公路图 (2)代码如下: X=[0 30 50 70 80 90 120 148 170 180 202 212 230 248 268 271 280 290 300 312 320 340 360 372 382 390 416 430 478 440 420 380 360 340 320 314 280 240 200]; Y=[80 64 47 42 48 66 80 120 121 138 160 182 200 208 212 210 200 196 188 186 200 184 188 200 202 240 246 280 296 308 334 328 334 346 356 360 392 390 400]; for k=1:length(X)-1 len(k)=sqrt((X(k+1)-X(k))^2+(Y(k+1)-Y(k))^2); end; Len=sum(len);Len 运行得到结果如下: 即公路长为967.46米。

数模模数转换实验报告材料

数模模数转换实验报告 一、实验目的 1、了解数模和模数转换电路的接口方法及相应程序设计方法。 2、了解数模和模数转换电路芯片的性能和工作时序。 二、实验条件 1、DOS操作系统平台 2、数模转换芯片DAC0832和模数转换器ADC0809芯片。 三、实验原理 1、数模转换: (1)微机处理的数据都是数字信号,而实际的执行电路很多都是模拟的。因此微机的处理结果又常常需要转换为模拟信号去驱动相应的执行单元,实现对被控对象的控制。这种把数字量转换为模拟量的设备称为数模转换器(DAC),简称D/A。 (2)实验中所用的数模转换芯片是DAC0832,它是由输入寄存器、DAC 寄存器和D/A 转换器组成的CMOS 器件。其特点是片包含两个独立的8 位寄存器,因而具有二次缓冲功能,可以将被转换的数据预先存在DAC 寄存器中,同时又采集下一组数据,这就可以根据需要快速修改DAC0832 的输出。 2、模数转换: (1)在工程实时控制中,经常要把检测到的连续变化的模拟信号,如温度、压力、速度等转换为离散的数字量,才能输入计算机进行处理。实现模拟量到数字量转换的设备就是模数转换器(ADC),简称A/D。

(2)模数转换芯片的工作过程大体分为三个阶段:首先要启动模数转换过程。其次,由于转换过程需要时间,不能立即得到结果,所以需要等待一段时间。一般模数转换芯片会有一条专门的信号线表示转换是否结束。微机可以将这条信号线作为中断请求信号,用中断的方式得到转换结束的消息,也可以对这条信号线进行查询,还可以采用固定延时进行等待(因为这类芯片转换时间是固定的,事先可以知道)。最后,当判断转换已经结束的时候,微机就可以从模数转换芯片中读出转换结果。 (3)实验采用的是8 路8 位模数转换器ADC0809 芯片。ADC0809 采用逐次比较的方式进行A/D 转换,其主要原理为:将一待转换的模拟信号与一个推测信号进行比较,根据推测信号是大于还是小于输入信号来决定增大还是减少该推测信号,以便向模拟输入逼近。推测信号由D/A 转换器的输出获得,当推测信号与模拟信号相等时,向D/A 转换器输入的数字就是对应模拟信号的数字量。ADC0809 的转换时间为64 个时钟周期(时钟频率500K 时为128S)。分辨率为 8 位,转换精度为±LSB/2,单电源+5V 供电时输入模拟电压围为04.98V。 四、实验容 1、把DAC0832 的片选接偏移为10H 的地址,使用debug 命令来测试 DAC0832 的输出,通过设置不同的输出值,使用万用表测量Ua 和Ub 的模拟电压,检验DAC0832 的功能。选取典型(最低、最高和半量程等)的二进制值进行检验,记录测得的结果。实验结果记录如下: 输入 00 0.001 4.959 08 0.145 4.636

数学建模-实验报告11

《数学建模实验》实验报告 学号:______ 姓名: 实验十一:微分方程建模2 一只小船渡过宽为d的河流,目标是起点A 正对着的另一岸B点,已知河水流速w 与船在静水中的速度V2之比为k. 1?建立小船航线的方程,求其解析解; 2. 设d=100m,v i=1m/s,v2=2m/s,用数值解法求渡河所需时间、任意时刻小船的位置及航行曲线,作图,并与解析解比较。 一、问题重述 我们建立数学模型的任务有: 1. 由已给定的船速、水速以及河宽求出渡河的轨迹方程; 2. 已知船速、水速、河宽,求在任意时刻船的位置以及渡船所需要的时间。 二、问题分析 此题是一道小船渡河物理应用题,为典型的常微分方程模型,问题中船速、水速、河宽已经给定,由速度、时间、位移的关系,我们容易得到小船的轨迹方程,同时小船的起点和终点已经确定,给我们的常微分方程模型提供了初始条件。 三、模型假设 1?假设小船与河水的速度恒为定值v「V2 ,不考虑人为因素及各种自然原因; 2. 小船行驶的路线为连续曲线,起点为A,终点为B ; 3. 船在行驶过程中始终向着B点前进,即船速v2始终指向B ; 4. 该段河流为理想直段,水速w与河岸始终保持平行。 四、模型建立 y | B A 兀、 % \ * r v A X 如图,以A为原点,以沿河岸向右方向为x轴正向,以垂直河岸到B端方向为y轴正向建立平面直角坐标系。其中河水流速为v i,小船速度为V2,且w:v2 k,合速度为v,河宽为d,为72与直线AB的夹角。

V x V y 在t 时刻, 船 dx dt V i 小船在x 轴方向的位移为 x v 2 sin v 2 cos V i V 2 0,x(0) 0, y(0) ;(d y) 0. \ (d y) d y ______ 2 2 ' x dy v 2 cos 由(2)/(1)得到dx y(0) v-1 v 2 sin 0. dx In (2) (i )题 dx 对上式求倒数得 dx dy x ,在y 轴方向上的位移为y ,则t 时刻, 方向 的速度 模型求解 v 2 sin V 1 v 2 co s —, 则上式可化为 dx d y dy d ?dp pdy ydp ,代入上式, k J p 2 整理,得 P 2 | ln| d Cy | 也就是 x 2 (d y )2 y P (d y ) dp P 2 kdy ,积分可得 y C k ( ------- )k ,代入 d y x d y d y 2 0, y 0 d k (d y )k (d y )k d k (见附 录) ,对该情况下的微分方程的数值解进行分 60.0000 6.5451 98.2803 60.1000 6.4519 98.3319 60.2000 6.3585 98.3827 60.3000 6.2649 98.4327 60.4000 6.1711 98.4819 60.5000 6.0771 98.5304 60.6000 5.9829 98.5782 60.7000 5.8886 98.6251 60.8000 5.7940 98.6713 60.9000 5.6993 98.7168 61.0000 5.6043 98.7615 61.1000 5.5092 98.8054 题 由初始条件,设计程序 析,结果如下(省略了前60s 的数据):

数学建模实验报告

内江师范学院 中学数学建模 实验报告册 编制数学建模组审定牟廉明 专业: 班级:级班 学号: 姓名: 数学与信息科学学院 2016年3月 说明 1.学生在做实验之前必须要准备实验,主要包括预习与本次实验相关的理论知识,熟练与本次实验相关的软件操作,收集整理相关的实验参考资料,要求学生在做实验时能带上充足的参考资料;若准备不充分,则学生不得参加本次实验,不得书写实验报告; 2.要求学生要认真做实验,主要就是指不得迟到、早退与旷课,在做实验过程中要严格遵守实验室规章制度,认真完成实验内容,极积主动地向实验教师提问等;若学生无故旷课,则本次实验成绩不合格; 3.学生要认真工整地书写实验报告,实验报告的内容要紧扣实验的要求与目的,不得抄袭她人的实验报告; 4.实验成绩评定分为优秀、合格、不合格,实验只就是对学生的动手能力进

行考核,跟据所做的的情况酌情给分。根据实验准备、实验态度、实验报告的书写、实验报告的内容进行综合评定。

实验名称:数学规划模型(实验一)指导教师: 实验时数: 4 实验设备:安装了VC++、mathematica、matlab的计算机 实验日期:年月日实验地点: 实验目的: 掌握优化问题的建模思想与方法,熟悉优化问题的软件实现。 实验准备: 1.在开始本实验之前,请回顾教科书的相关内容; 2.需要一台准备安装Windows XP Professional操作系统与装有数学软件的计算机。 实验内容及要求 原料钢管每根17米,客户需求4米50根,6米20根,8米15根,如何下料最节省?若客户增加需求:5米10根,由于采用不同切割模式太多,会增加生产与管理成本,规定切割模式不能超过3种,如何下料最节省? 实验过程: 摘要:生活中我们常常遇到对原材料进行加工、切割、裁剪的问题,将原材料加工成所需大小的过程,称为原料下料问题。按工艺要求,确定下料方案,使用料最省,或利润最大就是典型的优化问题。以此次钢管下料问题我们采用数学中的线性规划模型、对模型进行了合理的理论证明与推导,然后借助于解决线性规划的专业软件Lingo 11、0对题目所提供的数据进行计算从而得出最优解。 关键词:钢管下料、线性规划、最优解 问题一 一、问题分析: (1)我们要分析应该怎样去切割才能满足客户的需要而且又能使得所用原料比较少; (2)我们要去确定应该怎样去切割才就是比较合理的,我们切割时要保证使用原料的较少 的前提下又能保证浪费得比较少; (3)由题意我们易得一根长为17米的原料钢管可以分别切割成如下6种情况(如表一): 表一:切割模式表 模式 4m钢管根数 6m钢管根数8m钢管根数余料/m 1 4 0 0 1 2 1 2 0 1 3 2 0 1 1 4 2 1 0 3 5 0 1 1 3 6 0 0 2 1

数模实验报告

河北大学《数学模型》实验实验报告 实验10-1循环比赛的名次——双向连通竞赛图(4顶点)的名次排序 一、实验目的 二、实验要求 4个顶点的竞赛图(教材p270中图3(4))如下: 4个队得分(获胜场数)为(2,2,1,1)由得分排名为{(1,2),(3,4)},该竞赛图是双向连通图,可通过以下方法给出名次排序。 该图的邻接矩阵为: A= 得分向量为 s=A*ones 其中,ones= 记s(1)=s s(k)=A*s(k-1)=A k*ones, k=1, 2, …(s(k)称为k级得分向量) 对于n≥4个顶点的双向连通竞赛图,其邻接矩阵A为素阵(存在正整数r,使A r>0),且有

其中,L为全1列向量,λ为最大实特征根且为正,s为其特征列向量。 1.实验要求1的运行结果。 2.实验要求2的运行结果。 3.实验要求3的程序和运行结果。 三、实验内容 1.求元素互不相等的得分向量法 %文件名:fscore1.m clear;clc;format compact;format short g; A=[0 1 1 0;0 0 1 1;0 0 0 1;1 0 0 0];%邻接矩阵 s=A*ones(size(A,2),1);k=1; n=length(s); while 1 i=1; while i<=n-1 & all(s(i+1:n)-s(i)~=0) i=i+1; end if i==n break; end s=A*s; k=k+1; end k % k级得分向量 s % s %元素不等的得分列向量 [ss,kk]=sort(s,'descend'); % 降序 kk % kk %排名 2.特征根法 %文件名:fscore2.m clear;clc;format compact;format short g; A=[0 1 1 0;0 0 1 1;0 0 0 1;1 0 0 0];%邻接矩阵 [V,D]=eig(A); %返回 A 的特征值和特征向量。 %其中 D 为 A 的特征值构成的对角阵,每个特征值 %对应的 V 的列为属于该特征值的一个特征向量。 DD=diag(D); %返回矩阵 D 的对角线元素构成列向量。 for i=1:length(DD) %复数特征值用 0 代替 if ~isreal(DD(i)) DD(i)=0; end end [lamda,I]=max(DD); lamda s=V(:,I)/sum(V(:,I)) %最大特征根对应的特征列向量(归一化)

数学建模实验报告

湖南城市学院 数学与计算科学学院《数学建模》实验报告 专业: 学号: 姓名: 指导教师: 成绩: 年月日

实验一 初等模型 实验目的:掌握数学建模的基本步骤,会用初等数学知识分析和解决实际问题。 实验内容:A 、B 两题选作一题,撰写实验报告,包括问题分析、模型假设、模型构建、模型求解和结果分析与解释五个步骤。 A 题 飞机的降落曲线 在研究飞机的自动着陆系统时,技术人员需要分析飞机的降落曲线。根据经验,一架水平飞行的飞机,其降落曲线是一条S 形曲线。如下图所示,已知飞机的飞行高度为h ,飞机的着陆点为原点O ,且在整个降落过程中,飞机的水平速度始终保持为常数u 。出于安全考虑,飞机垂直加速度的最大绝对值不得超过g /10,此处g 是重力加速度。 (1)若飞机从0x x 处开始下降,试确定出飞机的降落曲线; (2)求开始下降点0x 所能允许的最小值。 y 0x 一、 确定飞机降落曲线的方程

如图所示,我们假设飞机降落的曲线的方程为I d cx bx ax x f +++=23)( 由题设有 h x f f ==)(,0)0(0。 由于曲线是光滑的,所以f(x)还要满足0)(,0)0(0='='x f f ,代入f(x) 可以得到 ?? ? ? ?? ?=++='=+++==='==0 23)()(0)0(0)0(020*******c bx ax x f h d cx bx ax x f c f d f 得 ,0,0,3,22 3 ===- =d c x h b x h a 飞机的降落曲线为 )32()(2 30 2 0x x x x h x f --= 二、 找出最佳着陆点 飞机的垂直速度是关于时间t 的导数,所以 dt dx x x x x h dt dy )66(20 20--= 其中 dt dx 是飞机的水平速度, ,u dt dx = 因此 )(60 2 20x x x x hu dt dy --= 垂直加速度为 )12(6)12(6020 20202 2--=--=x x x hu dt dx x x x hu dt y d 记 ,)(22dt y d x a =则126)(0 2 02-=x x x hu x a ,[]0,0x x ∈ 因此,垂直加速度的最大绝对值为 2 26)(max x hu x a = []0,0x x ∈ 设计要求 1062 2g x hu ≤ ,所以g h u x 600?≥ (允许的最小值)

相关文档