更改

删除45字节 、 2020年4月30日 (四) 13:00
第212行: 第212行:     
图8中显示的每一个参数<math>\mu</math>所对应的迭代的极限行为。在相同的参数下,我们通过从不同的初始值(共有1000个)开始迭代足够多的次数(T=2000次),记录下这些数据点对应的<math>x(T)</math>值。为了让显示效果更好看,我们对处于相同区域的数据点进行了归并,从而可以用某一点灰度的大小来表示该区域数据点的多少。最后的数学软件代码如下所示:
 
图8中显示的每一个参数<math>\mu</math>所对应的迭代的极限行为。在相同的参数下,我们通过从不同的初始值(共有1000个)开始迭代足够多的次数(T=2000次),记录下这些数据点对应的<math>x(T)</math>值。为了让显示效果更好看,我们对处于相同区域的数据点进行了归并,从而可以用某一点灰度的大小来表示该区域数据点的多少。最后的数学软件代码如下所示:
<syntaxhighlight lang="python">
+
 
interval = 0.001;
+
interval = 0.001;
results = Reverse[Transpose[Table[
+
results = Reverse[Transpose[Table[
 
     logisticValues =  
 
     logisticValues =  
 
     Table[Nest[a # (1 - #) &, RandomReal[], 2000], {1000}];
 
     Table[Nest[a # (1 - #) &, RandomReal[], 2000], {1000}];
第221行: 第221行:  
     Log[result + 0.001]
 
     Log[result + 0.001]
 
     , {a, 2.9, 4, 0.001}]]];
 
     , {a, 2.9, 4, 0.001}]]];
gradraft =  
+
gradraft =  
ArrayPlot[70 + 10 results, FrameLabel -> {"x(T)", "\[Mu]"},  
+
ArrayPlot[70 + 10 results, FrameLabel -> {"x(T)", "\[Mu]"},  
 
   FrameTicks -> {Table[{i, N[(i - 1)/(Length[results] - 1)]}, {i,  
 
   FrameTicks -> {Table[{i, N[(i - 1)/(Length[results] - 1)]}, {i,  
 
       0.1*(Length[results] - 1) + 1,  
 
       0.1*(Length[results] - 1) + 1,  
第230行: 第230行:  
       1]}, {i, (3 - 2.9) (Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>] - 1)/(4 - 2.9) + 1,  
 
       1]}, {i, (3 - 2.9) (Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>] - 1)/(4 - 2.9) + 1,  
 
       Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>], (Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>] - 1)/5}]}]
 
       Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>], (Length[results<nowiki>[[</nowiki>1<nowiki>]]</nowiki>] - 1)/5}]}]
</syntaxhighlight>
+
 
 
其中1000为初始值的个数,2000为迭代的时间步。interval为区域的划分尺度。
 
其中1000为初始值的个数,2000为迭代的时间步。interval为区域的划分尺度。
  
311

个编辑