太阳花曲线:137.5° 的黄金角,种出最均匀的花盘
把一把葵花籽撒进圆盘,它们不会挤成一团,也不会规规矩矩排成方格,而是自己绕出两组交错的螺旋,从中心一直卷到边缘。这朵“花”其实是一条曲线——太阳花曲线(Sunflower Curve),也叫叶序螺旋(phyllotaxis)。它只用两个数字就能画完:一个半径、一个角度。
1979 年,数学家 Helmut Vogel 给出了一个极简的葵盘模型:第 i 颗种子放在极坐标 (r, θ) 上,其中 r = √i,θ = i × 137.5°。就这么两行,整个花盘就长了出来。
先看半径为什么取开方。圆盘上半径 r 以内装着 i 颗种子,而这块的面积是 πr²——想让“每颗种子分到的面积”处处相等,就必须让 i ∝ r²,也就是 r ∝ √i。半径取开方,种子密度才会从中心到边缘一直不变;若改成半径均匀增长(r = i),种子会全部挤在中心,边缘稀稀拉拉。
再看角度。每颗种子都比前一颗多转 137.5°——这个角不是随便挑的,它叫黄金角:把圆周按黄金比例切开,较小那段弧对应的圆心角就是 360° × (1 − 1/φ) ≈ 137.5077°。黄金比例 φ 的连分数展开是 [1;1,1,1,…],全是 1,因此它是所有无理数里“最不好用分数逼近”的那一个;以黄金角转动的种子,方向几乎永不重复,也永远不会落在有限条辐射线上。
反过来看就明白了:把发散角换成 120°(360° 的 1/3,一个有理数),种子每转三圈就回到原来的方向,花盘立刻裂成 3 条粗螺旋臂;换成 135°,裂成 8 条。用本应用的滑杆可以自己验一遍:500 颗种子按 12 个扇区计数,黄金角 137.5° 时各扇区几乎等量(方差约 1.1),而 120° 时方差高达 2228——一头是均匀的花盘,一头是几条空荡荡的手臂。相邻种子的最近距离同样被黄金角推到最大(约 0.045,而 120° 时只有约 0.003,几乎叠在一起)。所以黄金角不是审美偏好,而是“互不遮挡、铺满圆盘”的最优解。
眼睛看到的那两组螺旋,是种子之间的近邻连起来形成的。在葵盘上数一数,多数能数出 34 条逆时针螺旋和 55 条顺时针螺旋——恰好是相邻的两个斐波那契数。原因还是黄金角:φ 的渐近分数正是斐波那契数之比,越往外圈,螺旋条数就越跳到下一对斐波那契数(21/34、34/55、55/89)。松果的鳞片、菠萝的果眼、多肉植物和仙人掌的棱,都是同一套公式在不同尺度上的复现。
在本应用中,花盘用抗锯齿圆点一颗一颗画出来:圆点直径按种子数自适应(种子越多点越小,否则上千颗会糊成一团),边缘用 1 物理像素宽的羽化过渡,放大看也是一颗颗圆润的种子,而不是带锯齿的小方块。拖动文章顶部的两个滑杆:种子数从 50 加到 1500,看花盘一点点种满;再慢慢拖动发散角,从 137.5° 挪到 120°,你会亲眼看到螺旋臂怎样从均匀的花盘里长出来。
不妨记住这条公式:r = √i,θ = i × 137.5°。一捧种子、两行算式,长出的却是一片分毫不乱的秩序。
评论 0
评论加载中…