女士们,先生们,老少爷们儿们!在下张大少。
前文回顾:
无边的奇迹源于简单规则的无限重复。
——本华·曼德博(Benoit Mandelbrot)
龙形曲线(Dragon Curve)又叫分形龙,因形似蜿蜒盘曲的龙而得名。小说《侏罗纪公园》的插图中就有龙形曲线。男主角伊恩·马尔科姆(Ian Malcolm)在解释混沌理论时用龙形曲线来类比。如果只看龙形曲线第一次迭代的样子,我们能想到它经过若干次迭代之后能发展出如此复杂而又美丽的图形吗?似乎比较困难。混沌理论也是这样,我们即使知道了初始条件,也难以推测出随后的发展。
一种简单的生成龙形曲线的方法是折纸:取一条细长的纸条,对折对折再对折……重复对折几十次,就能生成分形龙的图形。但一张纸顶多对折六七次就折不动了。因为倍增的威力是巨大的,如果纸都厚度是0.1mm。那么对折20次后纸的厚度就超过珠穆朗玛峰,42次从地球到月球,94次就是整个可见宇宙的大小。
我们只好把手中的纸条打开,确保每一个折痕都是直角,如图6.4.1就是迭代3次和4次的分形龙,但迭代次数太少,我们依然很难看出龙的样子。
图6.4.1
面对重复无尽的工作,最好的办法就是把它交给计算机,利用绘图软件,我们可以轻松地进行无数次迭代。变化的起始是一条线段。第一步是将线段由中间点隆起,使其变成一个等腰直角三角形的两腰。接下去再分别对两腰作和前面同样的变化,如此不断进行,就形成了"龙形曲线"。图6.4.2是迭代12次的龙形曲线,此时龙的形态一目了然。
图6.4.2 龙形曲线
不难看出,龙形曲线完全由长度相等的线段组成,且两两相交处都是直角。另外,每一次迭代后,曲线的长度就变成了原曲线长度的倍。因此,经过无数次迭代,龙形曲线也必然无限长,这一点符合分形曲线的特点。
龙形曲线是自相似的,有2个不重叠的部分,每个部分都是原来的,因此,它的分形维数
龙形曲线是用两条彼此垂直的线段代替一条线段来建造的,如果改变线段之间的角度,就会形成不同的曲线。图6.4.3是夹角为120°的情形,此时它已经无法像龙形曲线一样填满一片区域。它的分形维数
恰好同科赫雪花曲线相同。
图6.4.3 折叠角度为120°的龙形曲线
如果再放宽限制,两条线段 无需长短一致,则生成的曲线则更为多样,有的可能极具美感。如图6.4.4是一条分形维数恰好为1.618的曲线,我将之称之为"黄金龙形曲线"。
图6.4.4 黄金龙形曲线
关于龙形曲线,除了《侏罗纪公园》小说中出现的这种之外,还有几种相对不太为人所知的造型。
1 莱维龙形曲线
保罗·皮埃尔·莱维(Paul Pierre Lévy,1886-1971),法国数学家,分形学之父本华·曼德博就是他的学生。有不少名词都是为纪念他而命名,比如"莱维过程"、"莱维飞行"、"莱维常数"……"莱维龙形曲线"也是其中之一。莱维受到科赫雪花曲线等早期研究的启发,创造了莱维龙形曲线。莱维龙形曲线和上文《侏罗纪公园》小说中的龙形曲线非常相似,二者都是从等腰直角三角形开始,用两个直角边代替斜边。不同之处在于,直角边相对于斜边放置的方向。对于折纸法构成的龙形曲线,是一个朝向外,另一个朝向内。而对于莱维龙形曲线,两者则都朝外放置。
如图6.4.5是经过10次迭代的莱维龙形曲线,最终形成的图案有些像字母"C",因此也叫"莱维C形曲线"。显然,它是自相似的,有2个不重叠的部分,每个部分都是原来的,分形维数与先前的龙形曲线相同,仍然是2。但它并没有完全填满平面,内部有空的部分。
图6.4.5 莱维龙形曲线
如图6.4.6~7,如果把4条莱维龙形曲线拼接在一起,形成的图案非常适合制作花毯。
图6.4.6 莱维龙形曲线的拼接1
图6.4.7 莱维龙形曲线的拼接2
莱维钻石曲线是莱维龙形曲线的一个变种。钻石曲线不再用等腰直角三角形的直角边代替斜边,而是用底角60°的等腰梯形取而代之,假设底边长度为1,那么这个等腰梯形的另外三条边的长度都是0.5。无限重复这个过程,就会得到图6.4.8中的图形,它看起来像是由许多越来越小的钻石组成的,"莱维钻石曲线"因此而得名。
莱维钻石曲线仍然是自相似的,有3个不重叠的部分,每个部分都是原来的1/2。因此,莱维钻石曲线的分形维数
同谢尔宾斯基三角相同。
图6.4.8 莱维钻石曲线
2 Z形龙曲线
Z形龙曲线也是源于折纸,只不过不是把纸条反复对折,而是每一步都是三等分,如图6.4.9所示。当然,折纸可以完成迭代次数非常有限,画图可以完成的迭代次数更多。如图6.4.10所示,迭代由彼此夹角为60°呈"Z"字形的3条线段取代原始线段。假设原始线段长度为1,那么3条新线段的长度都是。无限次重复这个过程,就会得到Z形龙曲线。
Z形龙曲线也是自相似的,有3个不重叠的部分,每个部分都是原来的。
因此,Z形龙曲线的分形维数
与前两种龙曲线相同。
图6.4.9
图6.4.10 Z形龙曲线
3 复数迭代龙曲线
这种龙形曲线与前几种完全不同,它的迭代过程并不存在弯折,因此最后的龙也并不百转千回。这种分形基于复数乘法运算。我们先从最简单的例子开始,顺便复习一下早已还给中学数学老师的知识。
我们把视线转移到复数平面。如图6.4.11,横轴为实轴,纵轴为虚轴。假设迭代函数为
那么从z=1开始,迭代5次的结果是0.9、0.81、0.72、0.63、0.54,在复数平面中反映为沿着实轴的一条越来越短的线段,迭代无穷次之后必然萎缩成原点处的一个点,没有任何龙的影子。
图6.4.11
如图6.4.12,假设迭代函数为
那么从z=1开始,迭代5次的结果是0.9i、-0.81、-0.72i、0.63、0.54i,在坐标系中反映为每迭代一次,线段逆时针转90°,同时长度缩减为原来的90%,最后旋转着萎缩成原点处的一个点。
图6.4.12
如图6.4.13,假设迭代函数为
那么从z=1开始,迭代5次的结果是0.5 0.5i、0.5i、-0.25 0.25i、-0.25、-0.125-0.125i,在坐标系中反映为每迭代一次,线段逆时针转45°,同时长度缩减为原来的,效果依然是线段旋转着萎缩成原点处的一个点。
图6.4.13
但是,奇迹往往出现在人们绝望的时候。此时,我们如果在先前迭代函数的基础上进行一次平移,即再构造一个函数
情况就不一样了。如图6.4.14,把两个函数合二为一,反映在坐标系中的效果就是一生二、二生四、四生八……最后居然形成了两条紧紧相依的龙!
图6.4.14 b=0.5 0.5i
在这个模型中,对龙的形态起决定性作用的是复数的模长和辐角。
我们先把复数的辐角固定为45°,改变模长。如图6.4.15,模长较小的时候,龙呈现零星分散的形态;模长较大的时候,则变成了两团棉花的样子。
图6.4.15 复数的模长对龙形态的影响
接下来,我们限制复数的模长,改变辐角。如图6.4.16,辐角较小的时候,图案更像海参;辐角适中的时候最像龙;随着辐角继续增大,图案渐渐变成花朵的形态,接近90°的时候,图案又变成了两个方块的样子。
图6.4.16 复数的辐角对龙形态的影响
关于龙形曲线的构造方法显然不止上述几种,有兴趣的读者可以自行探索。创造有美感的分形曲线更接近趣味数学而非严肃数学,但其中无疑包含了深刻的数学思想,或许还需要一些误打误撞的运气。最后,套用国产科幻电影《流浪地球》中"北京第三区交通委"的友情提醒作为本节的结束:
神龙千万种,分形第一种。
构造不规范,画完两行泪。
青山不改,绿水长流,在下告退。
转发随意,转载请联系张大少本尊。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved