Julia 和 Mandelbrot 集的图片/附录
Julia 和 Mandelbrot 集是第一个在 1980 年代真正让世界惊叹的分形。这些图片展示了与以前任何已知事物完全不同的模式,超出了任何人的想象。它们还可以拥有真正的美。迄今为止已知的分形模式是一些具有或多或少有趣的数学性质的集合,当它们可以被可视化时,它们可以呈现出发人深省的形状,但它们并不像新类型那样令人印象深刻。
由于 Julia 和 Mandelbrot 集——尤其是绘制它们软件的简单性——分形的概念变得非常流行。此概念此后已变得非常普遍,导致了各种各样的分形艺术。这一发展揭示了模式中存在的极端变化。已经制作了具有巨大艺术价值或展示了精巧的数学作品的图片和动画。然而,所有严肃的工作都集中在改善 Julia 和 Mandelbrot 集的基本呈现之外的其它事物上。以“纯粹”形式的分形集图片,没有艺术性的修饰,似乎不像 1980 年代那样吸引人们,对基础改进的工作也退居其次。
直到 2000 年初,关于基本绘图技术的进展很少或没有。直到 2003 年,还没有绘制边界的一张图片,除了通常的 Mandelbrot 集及其 Julia 集的一些图片[1]。基于真实迭代次数的着色也只在循环是固定点时才真正有效,即使在那里也会导致可避免的“条带”效应,然而这种着色几乎被普遍使用,即使循环不是固定点。此外,直到 2000 年初,还没有一张 Mandelbrot 集是从两个有限且不同的临界点构建的。
-
从一个不是临界点的点构建的 Mandelbrot 集;渲染没有边界,着色有跳跃
-
使用两个不同的临界点构建的 Mandelbrot 集;在上面部分显示边界,着色连续
上面的两张图片展示了渲染分形比常用方法更具数学正确性和审美上的机会。右侧图片正确显示了边界,并且没有条带效应。这种改进的机会真的存在吗?难道在 Julia 和 Mandelbrot 集问世二十年后,只有现在才开始出现技术上完美的图片吗?
关于 Mandelbrot 和 Julia 集最有影响力的书可能是 Peitgen & Richter:分形的美丽,出版于 1986 年。在这本书中,您可以看到 Mandelbrot 集的第一张真实图片,因为它们是通过距离估计绘制的,并且是黑白的。Mandelbrot 在放大他的集合时看到了令人兴奋的模式——对数螺旋的星形模式,以及令人不安和“象形文字”的缩小版 Julia 集——但他只看到了这一切,因为他的最大迭代次数很低。下面的右侧图片,带有边界和最大迭代次数 10,000,显示了 Mandelbrot 集应该是什么样子。左侧图片的数学精度较低,使用 1,000 次迭代,并且没有计算边界。如果左侧图片绘制的最大迭代次数与 10,000 相同,但仍然没有边界计算,我们只会看到在右侧图像中心可见的迷你曼德布罗特。其他细节将“太精细”,无法看到。
-
没有边界计算,最大迭代次数为 1,000
-
有边界计算,最大迭代次数为 10,000
分形的美丽一书给出了一个几乎正确的计算机程序,用于计算右图中所示的距离估计。这种方法没有得到推广的一个可能原因是,该程序中的过程存在严重缺陷: 的计算是在 计算之前完成的,而不是应该在之后完成( 使用的是 而不是 )。为了避免再次计算 (k = 0, 1, 2, ...),该序列被保存在一个数组中。使用该数组, 被计算到最后一个迭代次数,并且指出可能会发生溢出。如果发生溢出,则认为该点属于边界(跳出条件)。如果未发生溢出,则可以执行距离计算。除了溢出不可能发生之外,该方法还使用了不必要的存储和迭代重复,使其不必要地更慢且更不吸引人。书中的以下评论也不吸引人:“结果表明,图像对各种选择非常敏感”(跳出半径、最大迭代次数、溢出、边界厚度和放大因子)。难道是这些胡说八道让大家失去了使用和推广该方法的欲望吗?
参考文献
[edit | edit source]- ↑ 边界集渲染,juliasets.dk(2003 年开始,2009 年完成)