Mandelbrot集
曼德博集合(Mandelbrot set)复平面上点的集合,和朱利亚集有些相似。
下面使用 golang 语言绘制一个曼德博集图。
曼德博集1
曼德博集合可以用复二次多项式来定义:$f_c(z) = z^2 + c$,其中 $c$ 是一个复数参数。
从 $z = 0$ 开始对 $f_c(z)$ 进行迭代,形成以下序列:
$$(0, f_c(0), f_c(f_c(0)), f_c(f_c(f_c(0))), \ldots)$$
不同的参数 $c$ 可能使序列的绝对值逐渐发散到无限大,也可能收敛在有限的区域内。
曼德博集合 $M$ 就是使序列不延伸至无限大的所有复数 $c$ 的集合。
理解
曼德博集多项式和朱利亚集一致,只是朱利亚集给定 $c$,求 $z$ 集,而曼德博是给定 $z = 0$,求 $c$ 集。
实现
1 |
|
julia_divergent_grey
是上一篇中绘制灰度函数,不在此复述。
测试
1 |
|
结果:
- 1.维基百科:曼德博集合 ↩
Mandelbrot集
https://wishlily.github.io/article/code/2017/03/27/undefined/