2026-08-28·by Sijie Wang#math

complex-dynamics

复动力系统——Julia 集与 Mandelbrot 集

上级:orbit · 前提:discrete-dynamical-systems

二次族 fc(z)=z2+cf_c(z) = z^2 + cz,cCz, c \in \mathbb{C}。全篇只问一个组织性问题:zz 的轨道是否有界?

Definition

  • 填充 Julia 集 Kc={zC:Ofc(z) is bounded}K_c = \{z \in \mathbb{C} : O_{f_c}(z) \text{ is bounded}\}
  • Julia 集 Jc=KcJ_c = \partial K_c(其拓扑边界)——有界轨道与逃逸轨道在此不可分割地混杂在一起;混沌所在之处。
  • Fatou 集 Fc=CJcF_c = \mathbb{C} \setminus J_c——邻近轨道保持相近的开集(形式化地说:其迭代序列构成一个正规族,即局部等度连续)。
逃逸半径

R=max(2,c)R = \max(2, |c|)。若 z>R|z| > R,则 fc(z)z2cz2z=z(z1)>z|f_c(z)| \ge |z|^2 - |c| \ge |z|^2 - |z| = |z|(|z| - 1) > |z|,且这个超出量逐步放大——轨道以几何速度逃向 \infty。推论:Kc{z2}K_c \subseteq \{|z| \le 2\},只要 c2|c| \le 2;于是"zn|z_n| 是否越过了 22"就成了一张有限步可判定的逃逸证书(这正是每个 Mandelbrot 渲染器实际检查的东西)。

Mandelbrot 集

M={cC:Ofc(0) is bounded}M = \{c \in \mathbb{C} : O_{f_c}(0) \text{ is bounded}\}——注意它生活在参数空间里:MM 中的每一个点对应一个映射,判据是单个点 00 的轨道是否有界。

为什么偏偏是 0000z2+cz^2 + c临界点fc(z)=2z=0f_c'(z) = 2z = 0),而根据 Fatou 的一个定理,每个吸引循环都会吸引至少一个临界点——所以临界轨道是一根探针,能探测到该映射所拥有的每一个吸引循环。

基本二分定理(Fatou–Julia + Douady–Hubbard)

cM    Jcc \in M \iff J_c 连通。否则 JcJ_c 是一个 Cantor 集(完全不连通的"尘埃"),其上的动力学与满 2-移位共轭(symbolic-dynamics)。

两个可精确求解的参数

c=0c = 0 f0(z)=z2f_0(z) = z^2。轨道行为:z<10|z| < 1 \to 0z>1|z| > 1 \to \infty,于是 K0K_0 是闭单位圆盘,J0J_0 是单位圆。在圆上取 z=e2πiθz = e^{2\pi i \theta},映射就是倍角映射 θ2θmod1\theta \mapsto 2\theta \bmod 1——正是 ergodic-theory-of-orbits 里那个倍增映射本尊。这个最简单的 Julia 集,正是遍历理论反复倚重的基本例子。

c=2c = -2 J2=[2,2]J_{-2} = [-2, 2],一条直线段。共轭关系:z=w+w1z = w + w^{-1}ww2w \mapsto w^2 变换成 zz22z \mapsto z^2 - 2;在这条线段上(代入 z=2cos(2πθ)z = 2\cos(2\pi\theta) 之后)又还原成倍角映射——f2f_{-2} 就是 Chebyshev 映射,与 topological-dynamics 里的帐篷映射共轭。c=0,2c = 0, -2 这两个边界情形,是仅有的 Julia 集光滑的 cc;夹在中间的全都是分形。

那些图像究竟是什么

一张 Mandelbrot 图是参数空间的地图,按临界轨道的逃逸时间上色;一张 Julia 图固定住 cc,给动力空间上色。归根结底,这一切都是关于轨道有界性的问题被可视化了——而至今悬而未决的MLC 猜想MM 是否局部连通?)就是这个领域的 Collatz 猜想。

about this entry

One of sijie's wiki entries. The AI on this site is grounded in the same corpus and answers in sijie's voice, with citations back to entries like this one — answering costs sijie money, so it waits behind a code: enter an access code →