欢迎来到天天文库
浏览记录
ID:14649854
大小:594.36 KB
页数:9页
时间:2018-07-29
《问题描述: 根据迭代形式的方程:绘制出迭代过程中敛散情况随的变化图》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算物理作业第一次·迭代、混沌和分形PB06000603何宇问题描述:根据迭代形式的方程:绘制出迭代过程中敛散情况随的变化图,并根据迭代过程中的数据求出Feigenbaum常数(不指定是几周期分叉)。最后求出进入混沌后的x分布,观察现象并提出猜想。基本思路和算法描述:为了画出随变化的图象,首先确定对于给定,的值是否存在有界(但不一定收敛)解,而这可以由试探性的迭代结果(基本上观察数组何时溢出即可)读处,对于简单的迭代方程,亦可以直接手工估算。随后让在允许范围内遵循一定步长递增的规律变化,并将对于给定时所有可能存在的的稳定解(即周期性反复出现的解;特别的,对于单值情况相当于周期为
2、1,混沌情况每个点都可以当做周期为的点)沿纵向绘制。问题被归于如何绘出符合条件的“稳定的”点。这里采用如下方式:首先定义一个允许误差(即精度控制因子)e,然后预先进行迭代若干次,以x的值均分组集中变化在允许误差范围内为这里“若干次”的衡量标准。本程序中对于10-6的精度,在左右(此时收敛较慢,刚进入二分叉)需要约30000次迭代,于是选N=50000为预先迭代次数,既满足精度需求,也保证了后面的统计工作更易进行。然后再进行额外若干次迭代,每次迭代都输出一个点的值,并保存在一个临时的数组中。然后在固定不变的情况下统计该数组里重复出现的值(以e作为允许误差范围)的个数,然后再将完成
3、统计后的数据(值的个数和对应的值)存入另一个二维数组中。由于本问题希望能显示混沌前后的周期分叉行为并计算Feigenbaum数,于是选取这一步迭代次数为M=100次,这样若存在2的倍周期性未则能做到至多64分叉,3的倍周期则有96分叉;同时又不至于数据点太多,干扰图像清晰度和等值的判断(因为存在一个误差容许因子e)。至此,便可以得到所有符合绘图要求的数据点了。实际操作里使用C语言的文件读写函数,将后来的若干个(即对于每一个的)M次迭代均按照(,)的格式输入一个新建的txt文档中;然后将数据复制进Origin进行作图,调整格式后既可输出所需迭代图象。实际过程可以用流程图大略表示如
4、下:初始化各变量(包括一个文件指针)X收敛到单一值?设定x初值,迭代N次进入递增的循环用户输入下限、上限和步长以及x的初始值2008-9-129/9作业一计算物理作业第一次·迭代、混沌和分形PB06000603何宇将该临时二维数组输出在文件最后,用于计算Feigenbaum常数向文件直接写入单一一组,的值统计x不同值的个数,然后和对应的一起存入临时二维数组重新迭代M次,向文件输出每次的和x值,并将不同的x值统计存入临时数组YesNoX收敛到单一值?在此基础上实现对进入混沌后x值分布的统计便很方便了。只需将x允许取值的区间(本题为-1~+1)均分为若干份(程序中由精度控制因子e决
5、定,实际中取为了0.001,即每个小区间的长度),在进行额外迭代时(由于区间个数多,额外迭代次数也增加了,以增加每个区间中落点的个数使统计有效性增加,代码中取为10000)每落入某个区间就将其对应计数增加1,然后将对应区间和其中计数值用一个二位数组记录,并写入文件dataxdis.txt。之后于上述方法相同,在Origin中作图即可。程序运行结果及数据分析处理:若按照如下方式输入:可以得到文件data.txt(2.17M)。将其中数据点部分拷入Origin8.0作图,可得图象如下:2008-9-129/9作业一计算物理作业第一次·迭代、混沌和分形PB06000603何宇可以较明
6、显的发现迭代过程随着增大被依次分为:单值稳定、多值倍周期、混沌三阶段。其中混沌里仍会出现一些周期窗口,表现为点密度较小的白色竖条状区域。如下图红色表示部分。另外值得注意的是,混沌中的周期性窗口也并非毫无征兆地出现。可以注意到在周期稳定解x出现之前,迭代的点有向稳定解x密集的趋势。也就是说如果采用一定统计方法,可以确定出在各个周期窗口之间是存在一个类似于轨迹的混沌点集中行为的。尤其作为特例,2008-9-129/9作业一计算物理作业第一次·迭代、混沌和分形PB06000603何宇每一个周期性窗口在整个迭代点所覆盖区域的最外边界一定存在稳定解。如下图,其中红色为一些比较明显的周期稳
7、定解,蓝色为大略描绘的点的集中轨迹(该猜想将在后面的关于x进入混沌后的分布图中得到某种证明)。还可以注意到,混沌中出现的周期性窗口不再以2为倍增的基数。图中比较明显的依次出现有6、5、3周期的倍周期系列。下面使用程序中2×M的二维数组中所存的数据计算Feigenbaum常数。为了提高计算精度,从前面的大图中初步定下各周期的大致位置,然后选择其附近较小的范围和更小的步长进行的迭代,并做出x分裂的对应统计。过程如下:先分别在0.749~0.750以及从1.249~1.410按照步长0.0001计
此文档下载收益归作者所有