AnyMath 文档
Notebook

使用Genie应用程序的Mandelbrot集的交互式可视化

导言

Mandelbrot集是最着名的分形之一,最早由法国数学家Pierre Fatou和Gaston Julia在20世纪初研究,但因Benoit Mandelbrot在20世纪70年代和80年代的工作而广为人知。 时保持限制 .

在数学上,Mandelbrot集定义如下。 对于每个复数c,考虑序列:

哪里:

  • -迭代过程中的当前值,其使用公式顺序转换 .

  • -我们正在研究的复数(复平面上点的坐标,检查是否属于Mandelbrot集)。

  • -当前迭代的数量,显示在计算过程中已经采取了多少步骤。

如果模块 保持有限(不超过 )当 ,则点c属于Mandelbrot集。 在实践中,我们将自己限制在有限数量的迭代中,如果在给定数量的步骤中,序列没有超出半径圆,则将一个点视为属于一个集合。 .

该套装的配置在其复杂性和无限细节上引人注目:主要的心形,肾圆,以及边界上无数的"线"和"花粉"。 随着尺度的增加,越来越多的新结构被揭示出来,类似于基本形状—这种自相似性的性质是分形的特征。 该集合已成为分形几何的经典例子,并在数学,物理,计算机图形学甚至艺术中使用。

这个应用程序实现了一个交互式的Mandelbrot集浏览器. 通过更改初始参数,您可以实时探索分形,沿着复平面导航,放大感兴趣区域,观察集合边界的无限复杂性。 不同的配色方案允许您可视化点发散的深度—超过阈值需要多少次迭代。

启动应用程序

此应用程序的脚本在文件中 mandelbrot.jl. 启动应用程序并在新的浏览器选项卡中打开它。

In [ ]:
genie_app = engee.genie.start("$(@__DIR__)/mandelbrot.jl")
display("text/html", """<a href="$(string(genie_app.url))" target="_blank">在新标签页中打开</a>""")
image.png

此应用程序是用于研究分形结构的数学显微镜的数字模型。

image.png

通过操作控制面板上的参数,您可以控制可视化设置。:

*轴的尺寸确定最终图像的分辨率,并允许您对屏幕进行优化(水平和垂直的像素数)。

*迭代次数设置最大计算深度—它越高,集合边界上的精细结构越详细。

*中心的坐标允许您沿着复杂的平面移动,选择要探索的区域。

*缩放增加或减少图像,允许您查看具有不同程度细节的分形。

*配色方案确定发散之前的迭代次数如何显示,从单色到彩虹色板。

image.png

观察如何,当你接近集合的边界时,越来越多的新细节被揭示出来,在无尽的递归中重复基本形状。 颜色方案的渐变将允许您查看迭代过程动态的各个方面。

通过将光标移动到图像的右上部分并单击相机图标,您可以保存分形的图像。

Снимок экрана 2026-03-03 191337.png

完成应用程序的工作后,我们将关闭它。

In [ ]:
engee.genie.stop("$(@__DIR__)/mandelbrot.jl");

结论

这个应用程序是一个数字工具,用于研究现代数学最着名的对象之一。 这种类型的虚拟实验室允许您研究分形几何,而无需自己编程可视化。 通过对复平面的各个区域进行建模并改变计算参数,用户通过实验探索分形的属性:自相似性,无限细节和边界复杂性。 该应用程序可以作为分形几何,动力系统理论和复杂分析的教科书。 Engee和Genie的结合为创建交互式材料开辟了机会,使抽象的数学概念可视化并为广大受众提供可访问性。