Mandelbrot Exterior:
目录
一、说明
曼德布洛特集合,是非常神奇的复平面映射函数,也是分形几何图像的早期研究。本文将这种概念进行粗略简绍,以记录这种题目,好日后详细研究。
二、什么是曼德布洛特集合
曼德尔布罗特集合是一个二维集合,其定义相对简单,但表现出极大的复杂性,尤其是在放大时。它因其美学吸引力和分形结构而广受欢迎。该集合在复平面中定义为复数 c {\displaystyle c} c 的函数 f c ( z ) = z 2 + c {\displaystyle f_{c}(z)=z^{2}+c} fc(z)=z2+c 从 开始迭代时不会发散至无穷大
z = 0 {\displaystyle z=0} z=0,即序列 f c ( 0 ) {\displaystyle f_{c}(0)} fc(0), f c ( f c ( 0 ) ) {\displaystyle f_{c}(f_{c}(0))} fc(fc(0)) 等的绝对值仍然有界。
该集合最初由 Robert W. Brooks 和 Peter Matelski 于 1978 年定义和绘制,作为克莱因群研究的一部分。此后,1980 年,Benoit Mandelbrot 在纽约约克敦高地的 IBM Thomas J. Watson 研究中心工作时获得了该集合的高质量可视化。
三、曼德布洛特图外部的平滑阴影
下面的两张图片分别显示了使用整数迭代计数时通常看到的典型条带形式,以及相同的计算,其中使用重新归一化的迭代计数选择颜色。
半径为3.1。上图显示了使用迭代计数来选择颜色所产生的典型条带。该图像是在 maxiter=18 和逃逸半径为 3 的情况下生成的。
半径为3.1。上图显示了当使用重新归一化的分数迭代计数来选择颜色时,条带消失。迭代参数与上面相同:maxiter=18,逃逸半径为3。
问:如何平滑地为曼德布洛特套装的外部着色?
答:曼德布洛特套装的大多数外观图片都使用 迭代的“转义计数”。“转义计数”是 执行迭代的次数,直到 迭代值超过某个半径。通常,这算数 是一个整数,因此,当它用于选择颜色时, 出现“条带”(恒定颜色的区域)。
四、曼德布洛特算法
可以使用分数逃逸来消除条带 计数。分数转义计数的方法有很多种 可以计算。获得分数的一种可能方法 是测量迭代点在外面落地多远 的逃生截止。最平滑、最 数学上正确的公式是“重整化” 迭代计数。
对于迭代方程 z ( n + 1 ) = z ( n ) 2 + c z(n+1) = z(n) ^ 2 + c z(n+1)=z(n)2+c, 重整化计数由下式给出
m
u
=
N
+
1
−
l
o
g
(
l
o
g
∣
Z
(
N
)
∣
)
/
l
o
g
2
mu = N + 1 - log (log |Z(N)|) / log 2
mu=N+1−log(log∣Z(N)∣)/log2
其中 N 是通常的“转义计数”,Z(N) 是 Z 的值,当它 转义,|z| 是 z 的模量。 (也就是说,如果
z
=
x
+
i
y
z=x+iy
z=x+iy 那么
∣
z
∣
=
s
q
r
t
(
x
∗
x
+
y
∗
y
)
)
|z| = sqrt (x*x+y*y) )
∣z∣=sqrt(x∗x+y∗y))。
对于更一般的公式 z ( n + 1 ) = z ( n ) k + c z(n+1) = z(n) ^ k + c z(n+1)=z(n)k+c, 重整化计数为
m
u
=
N
+
1
−
l
o
g
(
l
o
g
∣
Z
(
N
)
∣
)
/
l
o
g
k
mu = N + 1 - log (log |Z(N)|) / log k
mu=N+1−log(log∣Z(N)∣)/logk
虽然从公式中看不出来,但mu的值 几乎完全独立于实际逃逸半径。 这是因为用于推导公式的数学 隐式地将逃逸半径的极限设为无穷大, 然后减去由 采取这个限制。(此公式仅显示第一项)。
以下简化且非常有见地的推导 公式由 Earl L. Hinrichs 提供:
“忽略通常公式中的+C,轨道点增长 Z : = Z 2 Z := Z^2 Z:=Z2 。所以我们有级数 Z 、 Z 2 , Z 4 、 Z 8 、 Z 16 Z、Z^2,Z^4、Z^8、Z^{16} Z、Z2,Z4、Z8、Z16 等。 迭代计数相当于为这些值分配一个整数。 忽略乘数,此序列的对数为: 1 、 2 、 4 、 8 、 16 1、2、4、8、16 1、2、4、8、16。log-log 为 0, 1, 2, 3, 4,与迭代计数的整数值匹配。因此,离散迭代计数到连续函数的适当概括将是双对数。”
五、平滑转义迭代计数
该网页扩展了数学陈述和声明 在介绍平滑的页面上制作 曼德布洛特转义序列的着色。一般来说, 这个想法是,对于一个相当一般的轨道序列 迭代函数,一个规范且表现良好的系列可以 定义。虽然这个系列将在极限上发散,但 可以提取无穷大和前导有限项。 无限项被丢弃,剩下的有限项 术语可以解释为小数迭代计数。 反过来,分数迭代计数可用于提供 基于曼德布罗特的艺术品的平滑着色。 可以在此处找到结果的非技术演示。 有关进一步的着色和艺术考虑,请参阅分形常见问题解答。
对于行为良好的序列 fn, 可以定义一个受管制的(平滑和有限)迭代计数:
m
u
(
t
)
=
∑
n
=
0
o
o
e
x
p
(
(
−
t
∣
f
n
∣
)
mu(t) = \sum_{n=0}^{oo} exp ((-t|f_n|)
mu(t)=n=0∑ooexp((−t∣fn∣)
请注意,对于有限 t,此和收敛并且对于 其中 |fn|在 对于大 n 来说,对数速度最小。 情况就是如此 序列 fn 那 描述分形迭代的逃逸轨道。请注意, 在 t 为零的极限中,这个总和发散。
[旁注:此功能在分析上与 Reimann 相关 Zeta样调节剂
z
e
t
a
(
s
)
=
∑
n
=
0
o
o
1
/
∣
f
n
∣
s
zeta(s) = \sum_{n=0}^{oo} 1 / |f_n|^s
zeta(s)=n=0∑oo1/∣fn∣s
两者之间的分析关系由下式给出 伽马函数,表示为积分
(
s
−
1
)
!
=
G
(
s
)
=
I
0
o
o
t
s
e
−
t
d
t
(s-1)! = G(s)= I_0^{oo} t^se^{-t}dt
(s−1)!=G(s)=I0ootse−tdt . 积分并不难,事实证明 s 平面中的极点 对应于 Mu(t) 的泰勒展开中 t 的幂。 对于大多数“普通的普通”序列,极点似乎出现在 整数。一个有趣的数学问题可能是,“什么样的序列 导致极点不位于整数上’?旁注结束。
这里提出的主张是,通过分析上述表达式 就 T 的幂而言,发散部分将显示为 某种形式的极点。这里提出的主张也是 去除发散点后剩余的有限部分 parts 是平滑、分数迭代转义的候选者 迭代函数的计数。
对于本次讨论的其余部分,想象一下是有用的 fn 由经典 Mandelbrot 迭代器的第 n 次迭代 zn 提供:
Z
n
+
1
=
Z
n
2
+
C
Z_{n+1} = Z_n^2 + C
Zn+1=Zn2+C
按照通常的 M 集约定,定义转义 半径 R 和转义迭代计数 m,即 m 是半径 R 的传统转义计数。
R
<
∣
f
m
∣
a
n
d
R
>
∣
f
m
−
1
∣
R < |f_m| and R > |f_{m-1}|
R<∣fm∣andR>∣fm−1∣
也就是说,m 是半径 R 的传统逃逸计数。然后我们可以简单地写成
m
u
(
t
)
=
∑
n
=
0
m
−
1
e
x
p
(
(
−
t
∣
f
n
∣
)
+
∑
n
=
m
o
o
e
x
p
(
(
−
t
∣
f
n
∣
)
mu(t) = \sum_{n=0 } ^{m-1} exp ((-t|f_n|) + \sum_{n=m}^{oo} exp ((-t|f_n|)
mu(t)=n=0∑m−1exp((−t∣fn∣)+n=m∑ooexp((−t∣fn∣)
第一项,在极限 t->0 中显然等于整数转义计数 m。第二项包含无穷大。请注意,对于 n>m,对于 Mandelbrot 方程,可以近似
∣
f
m
+
p
∣
=
∣
f
m
∣
2
p
|f_{m+p}| = |f_m|^{2^p}
∣fm+p∣=∣fm∣2p
(上面的等式在 Netscape 中没有正确显示#$%^&。它应该读取 f_sub_m 的次方(p 的 2 次方))。所以,我们有近似值
m
u
(
t
)
=
m
+
∑
p
=
0
o
o
e
x
p
(
(
−
t
∣
f
m
∣
2
p
)
mu(t) = m + \sum_{ p=0}^{oo} exp ((-t|f_m|^{2^p})
mu(t)=m+p=0∑ooexp((−t∣fm∣2p)
在这里
∑
p
=
0
o
o
e
x
p
(
(
−
t
x
2
p
)
=
e
x
p
(
−
t
x
)
+
e
x
p
(
−
t
x
2
)
+
e
x
p
(
−
t
x
4
)
+
e
x
p
(
−
t
x
8
)
+
.
.
.
\sum_{p=0}^{oo} exp ((-tx^{2^p}) = exp(-tx) + exp(-tx^2) + exp(-tx^4) + exp(-tx^8) + ...
p=0∑ooexp((−tx2p)=exp(−tx)+exp(−tx2)+exp(−tx4)+exp(−tx8)+...
可以清楚地看出,对于任何 x>1,这个和收敛得非常快。作者不知道这个和有任何封闭形式的表达式,尽管它非常简单。稍加思考,可以看出,对于小 t,该表达式发散为 log(-log(t))。虽然有点难看,但这个表达式对于非常小的 t 来说变成了一个阶梯函数,步长发生在 log(-log(t)) 的整数值附近。该和的有限 x 相关部分也很容易提取,尽管有限的非 z 相关部分由于 t 中的阶梯而无法提取。因此,我们可以呈现结果:
m
u
(
t
)
=
m
+
l
o
g
(
−
l
o
g
(
t
)
)
l
o
g
2
−
l
o
g
(
l
o
g
(
∣
f
m
∣
)
l
o
g
2
+
O
(
1
)
mu(t) = m + \frac {log( -log(t) )}{ log 2} - \frac{ log (log (|f_m|)}{log 2} + O(1)
mu(t)=m+log2log(−log(t))−log2log(log(∣fm∣)+O(1)
其中 O(1) 是独立于 |fm| 的项。通过删除发散项,我们可以准确地得到通过不同方式获得的结果,如转义网页上所述。
通过实现轨道的快速逃逸,并使用规定的总和,可以得出不同但最终相同的推导
n
u
(
t
)
=
∑
n
=
0
o
o
e
x
p
(
−
t
l
o
g
∣
l
o
g
∣
f
n
∣
∣
)
nu(t) = \sum_{ n=0}^{oo} exp (-t log | log |f_n||)
nu(t)=n=0∑ooexp(−tlog∣log∣fn∣∣)
它在 t=0 处表现出一个简单极点,其有限项产生与上面相同的结果。对于那些刚接触这种调节无穷级数的方法的人来说,应该注意的是,有许多可能的调节器,并且大多数调节器可以通过分析技术相互转换。在这样的转换中,人们很快就会发现不同强度的极点被映射到不同强度和位置甚至切割的其他极点。然而,有限项的大小不会改变,因此,人们总是会找到相同的有限项,而与调节方法无关。另请注意,mu(t) 类型的调节器在数值上比 zeta 型调节器更容易处理(对于数字求和)。
e
x
p
(
−
t
2
∣
f
n
∣
2
)
exp (-t^2|f_n|2)
exp(−t2∣fn∣2) 形式的调节器具有更强的收敛性,并且仍然易于分析处理