非线性迭代Word文档下载推荐.docx
《非线性迭代Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《非线性迭代Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
25x_85
3.1研究函数y二不动点-10-
x3
3.2Logistic映射与混沌-17-
3.3对于方程x3—2x+1=0求根(1,直接求。
2,牛顿切线法)-23-
3.4分形-26-
四、实验总结-26-
实验报告评语-27-
南通大学理学院
实验日期:
2012年5月12号
数学师范101
探索实验二非线性迭代
一、实验指导书解读
迭代是数学研究中的一个非常重要的工具,通过函数或向量函数由初始结点生成迭代结点列,也可通过函数或向量函数由初值(向量)生成迭代数列或向量列。
蛛网图也是一个有用的数学工具,可以帮助理解通过一元函数由初值生成的迭代数列的敛散性,也帮助理解平衡点(两平面曲线交点)的稳定性。
本实验在Mathematica平台上首先利用蛛网图和迭代数列研究不动点的类型;
其次通过蛛网图和迭代数列研究Logistic映射,探索周期点的性质、认识混沌现象;
第三通过迭代数列或向量列求解方程(组)
而寻求有效的求解方法;
最后,利用结点迭代探索分形的性质。
二、实验计划
2.1迭代序列与不动点
1.1程序
给定实数域上光滑的实值函数f(x)以及初值Xo,定义数列
Xn1=f(Xn),n=0,1,2,(2.2.1)
{Xn}称为f(X)的一个迭代序列。
函数的迭代是数学研究中的一个非常重要的思想工具,利用迭代序列可以研究函数f(x)的不动点。
对函数的迭代过程,我们可以用几何图象来直观地显示它一一’蜘蛛网”。
运行下列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->
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]}}]
xO=f[xO]
(PlotRange控制图形上下范围)
];
Show[g1,g2,r,rO,PlotRange->
{-1,20},DisplayFunction->
$DisplayFunction]x[0]=x0;
x【i_]:
=f[x【i-1]];
(定义序列)
你能得出什么结论?
t=Table[x[i],{i,1,10}]//NListPlot[t](散点图)
如果只需迭代n次产生相应的序列,用下列Mathematica程序:
lterate[f_,x0_,n_lnteger]:
=
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]
1.2实验思路
首先对函数y=研究不动点,需要
x+3
(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。
运行程序后观察蛛网图与散点图!
一看数列是否收敛?
如收敛,极限是多少?
收敛速度是快是慢?
二看蛛网图中的轨道是否趋于平衡点?
与平衡点处曲线的斜率有没有关系?
三看初值对结果有没有影响?
其次,分别就f(x)=sinx,f(x^-x1等函数利用(2.2.1)做迭代序列{&
},观察蛛网图中的轨道是否趋于平衡点和序列的收敛性。
2.2Logistic映射与混沌
2.2.1程序
从形如fx=ax1-x的二次函数开始做迭代
Xk1—fXkk=0,1,(2.2.2)
这里,a「0,4是—个参数。
对不同的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->
AppendTo[pointlist,{x0,0}];
20,i++,AppendTo[pointlist,{v,fv}];
AppendTo[pointlist,{fv,fv}];
v=fv;
fv=4*v*(1-v)];
p2=ListPlot[pointlist,PlotJoined->
True,DisplayFunction->
Show[{p1,p2},DisplayFunction->
$DisplayFunction]
lterGeo[2.6,0.3]
将区间(0,4]以某个步长离散化,对每个离散的a值做迭代(2.2.2),忽略前50个迭代值,
而把点a,X51,a,&
…,a,%显示在坐标平面上,最后形成的图形称为Feigenbaum图。
Mathematica
程序:
Clear[f,a,x];
f[a_,x_]:
=a*x*(1-x);
x0=0.5;
Do[
=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映射中,取a=4,任取两个初值使得它们之间的差的绝对值不超过0.l,运行下列程序,观
察结果后回答问题:
在迭代过程中它们逐渐分开吗?
如果两个初值之间的差的绝对值不超过0.01,0.001,
结果会如何?
由此得出,函数fx4x1_x的迭代对初值是否敏感?
其Mathematica程序:
Sensitivity[n_lnteger,x01_,x02_]:
{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]
一个简单的、确定的二次选代可以产生非常复杂的、看似随机的行为。
但是,混沌不等于随机。
实
际上,在混沌区域之内,蕴涵着许多有序的规律。
这正验证了哲学上的名言:
有序中包含了无序,无序
中包含着有序。
distrib[n_lnteger,m_lnteger,x0_]:
Modulei;
Lcriip-池gl•一Ttibl叩町i”叫叫卄+.lcmp-4*lcinp*(l-temp);
II]tetnpI]|—$「[FlMijLewph】]一I]]|++]];
f[k_]:
=Graphics[{GrayLevel[0.5],Rectangle[{k-0.5,0},{k+0.5,c[[k]]}]}];
^l-Tublcfnk|,{k.I,til||:
SIhjw|u1.Axc:
>
Trllc,?
IolT.abcl->
"
x0=0.4"
n=100;
m=20;
x0=0.4;
distrib[n,m,x0]
另一个说明混沌不是随机的事实是,混沌区域有许多有序的窗口。
将这些窗口放大可以看到令人振
奋的自相似现象,同时还有许多周期轨道。
在Feigenbaum图的右部,你应当能看到一个由三条曲线穿
过的空白带,它是一个周期为3的窗口”。
你能找到其它窗口吗?
它们的周期是什么?
窗口里有什么图案?
这些窗口跟上题的第二问中的k周期轨道有什么关系?
运行下列程序,听一听混沌的声音
PlayChaos[n」nteger,x0_]:
{t={},i,temp=x0},
=n,i++,temp=4*temp*(1-temp);
AppendTo[t,Floor[temp*100]]];
ListPlay[t,PlayRange->
{0,100},SampleRate->
5]
帐篷函数”和锯齿函数”。
和函数fx二ax1_x—样有着混沌行为的函数还很多。
其中较简单的有
帐篷函数”Tx定义为
容易验证,帐篷函数和锯齿函数有下列关系:
TTx=TSx0_x_1
2-tx
令hx=sin—,帐篷函数与fx=4x1-x有下列关系:
fkhx=hTkx
2.2.2实验思路
就Logistic映射,对a=0.5,1,1.2,2,2.1,2.9,2.999,3,3.001,3.2,3.2