Python绘制分叉图
程序源代码
由于毕业论文要切换成非线性的缘故,需要我拿出一些时间来研究绘制各种分叉图。下面举一个例子来说明绘图的思路:
1 | from tqdm import tqdm |
绘图分析
绘图的叠代公式 \[\begin{equation}\label{eq:diedai} x_{n+1}=\mu x_n(1-x_n) \qquad 0\leq \mu\leq 4, 0<x<1 \end{equation}\]
将参数\(\mu\)从\(0\)到\(4\)均分成\(100\)份,然后将其作为自变量,遍历区间取值。
对于任意一个\(\mu\)值,选择初值 \(x_0=0.1\), 使用式\(\eqref{eq:diedai}\)叠代\(1000\)次, 但是这些叠代值并不输出, 然后输出\(1001\)次到\(1200\)次的叠代结果。 其原理为:如果参数\(\mu\)在某个值时,无数次叠代后它会收敛到某个值附近,那这样的点就是一个嘛吸引点。但是,有的点以无数次叠代后仍然不收敛,所以在固定一个较大的次数\(1000\)后,再叠代\(100\)次, 将这\(100\)次的结果输出,就能判断这\(100\)个点的分布情况。