分形图形的Mathematica绘制

更新时间:2023-12-30 作者:用户投稿原创标记本站原创 点赞:27693 浏览:129588

【摘 要】分形以迭代的方式描述了自相似的自然现象,使人们对自然界的认识与描述更进一步.分形图形的算法有很多,也可以用多种软件绘制.相对于其它软件,Mathematica非常适宜绘制分形图形,它的程序可以非常简单.本文列出几种经典分形图形的Mathematica绘制方法.


【关 键 词】分形;Mathematica;M集;谢尔宾斯基三角形;Koch曲线

我们人类生活的世界是一个极其复杂的世界,例如,变幻莫测的股市变化、复杂的生命现象、蜿蜒曲折的海岸线等等,都表现了客观世界特别丰富的现象.基于传统欧几里得几何学的各门自然科学总是把研究对象想象成一个个规则的形体,而我们生活的世界竟如此不规则和支离破碎,分形几何提供了一种描述这种不规则复杂现象中的秩序和结构的新方法.

什么是分形几何?通俗一点说就是研究无限复杂但具有一定意义下的自相似图形和结构的几何学.“分形”一词译于英文Fractal,系分形几何的创始人曼德尔布罗特于1975年由拉丁语Frangere一词创造而成,词本身具有“破碎”、“不规则”等含义.Mandelbrot研究中最精彩的部分是1980年他发现的并以他的名字命名的集合,Mandelbrot集合图形的边界处,具有无限复杂和精细的结构.

近年来,许多专家学者投入到分形的研究之中,例如,朱华、姬翠翠[1]在分形理论及其应用中系统阐述了分形的理论知识和应用领域;高剑波[2]则针对理论如何与现实结合的问题展开了讨论.本文在现有研究的基础上,分析总结了不同的算法下,Mathematica程序编译、绘制的分形图形.本文的图形均由Mathematica绘制而成.

绘制分形图形主要有两种方法:

1逃逸时间算法

检测设有一个充分大的整数N,当未逃逸区域M中的初始点a经过小于N次迭代就达到未逃逸区域M的边界,甚至超出了边界,我们就认为点a逃逸出去了;而如果经过N次迭代后a的轨迹仍未达到M的边界,我们就认为a是A上的点.用这样的方法绘制出A的边界图形,这便是逃逸时间算法的基本思想.

以下是Mathematica用逃逸时间算法绘制M集图形的程序:

2迭代函数系统法

迭代函数系统(IFSIteratedFunctionSystem,IFS)是生成分形吸引子的经典方法,它所创建的分形图永远是绝对自相似的.迭代函数系统仿射变换典型的变换是移动,反射或翻转,缩放,旋转和剪切仿射变换.

谢尔宾斯基三角形(Sierpinskitriangle)是一个非常有趣的图案,有着悠久的历史,在分形几何中等领域里引起了人们极大地兴趣,是用递归和随机方式定义的几何形状,在极限情况下,它所表现的性质并没有随机性.

生成算法如下:

(1)在三角形内部随机选取一个点作为初始点;

(2)在三角形的3个顶点中随机选取一个,求出该顶点与初始点连线的中点,画出该中点;

(3)将(2)中的中点作为初始点,转到(2).

绘制谢尔宾斯基三角形的Mathematica程序如下:

分形图形的算法有很多,而数学软件Mathematica非常适宜绘制分形图形,它的程序可以非常简单,运算速度也非常快,这种简洁、有效会给我们的学习和研究带来很大便利,也契合数学应用的精神.

【参考文献】

[1]朱华,姬翠翠.分形理论及其应用[M].北京:科学出版社,2011.

[2]高剑波.复杂系统和涌现:理论如何与现实结合[J].力学进展,2013,43(4):359-389.

[3]林秋达.基于三维IFS算法的建筑分形设计[J].世界建筑,2013(9):106-109.

[4]靳晓晓;陈晨.分形开拓数字化图形设计新思路[J].包装工程,2013(22):9-12.

[责任编辑:汤静]