← ギャラリーへ

雪の結晶 — 6回対称は、どこにも書き込んでいない

つまみを変えて育てた4つの雪の結晶。樹枝・羊歯・扇・板の4形がいずれも6回対称になっている
規則は3つだけ(凍った縁に付く・水蒸気は拡散する・凍った量は動かない)。つまみを変えると樹枝・羊歯・扇・板が出てくる。うすい灰色は残っている水蒸気——枝のまわりが薄いのは枝どうしが水蒸気を取り合った跡

なにか

六角形のマスを並べ、1マスずつ次の3つを繰り返すだけ。①凍ったセルとその隣は「受容」になり、水蒸気を受け取って動かなくなる ②残りのセルの水蒸気は隣6つの平均へ拡散する ③水分が1を超えたら凍った。乱数はどこにも入れていない。それだけで、雪の結晶の主要な形が出てくる。

つまみは3つ。α=拡散の速さ、β=もとの水蒸気量、γ=付着量。β を下げていくと 樹枝 → 羊歯 → 扇 → 板と連続的に変わる(充填率 0.27 → 0.35 → 0.52 → 0.63 と測った)。雪の結晶が気温と湿度で形を変えることの、いちばん簡単な模型である。

対称性は、格子ではなく成長の規則が決めていた

種を中心に1つ置いた場合は厳密に6回対称、種を2つ置いた場合は対称が壊れることを比べた図
左=種を中心に1つ。60°回した先との差は最大 8.9×10⁻¹⁶=浮動小数の丸めまで一致。右=規則もつまみも同じまま、種を2つ置いただけで対称は消える(最大 1.4 のずれ)

更新の規則には対称化の操作が一切ない。1セルずつ「隣6つの平均」を見るだけである。それでも結果は厳密に6回対称になる——対称性は格子の対称性と、種のかたちから来ている。種を2つ置いて対称だけを壊すと、同じ規則でもばらばらの形になる。

★この作品の本題はここ。異方性DLAで、同じ六角格子の上で乱数に歩かせても6回対称は立たなかった(A₆ は床すれすれの 0.219)。いっぽう乱数を捨てて界面の規則にしたこの模型では 10⁻¹⁶ で立つ。対称性を決めているのは格子ではなく成長の規則だった——v1.16 で「雪が六方なのは界面の異方性が効くから、という説明は未検証」と空欄にしていた場所が、これで埋まった(発見22)。

面白いのは、形が似ていないのに統計は近いこと。箱数え次元は 1.59〜1.74 で、DLA の 1.71 と同じ桁に入る(発見6「自己相似の3つの顔」の統計的自己相似)。枝の見え方は違うのに、太さと隙間の配分は同じという言い方になる。

どう作ったか

軸座標の六角格子(隣6つが等距離であることを検算済み)。拡散は反射境界なので水分の総量が厳密に保存する(差 5.7×10⁻¹⁴)。縁に届いたら止める(境界の影響が出た形は信用しない)。図はセル1つずつ描くと SVG が 5MB になったので、行ごとに連続する塊をまとめている。機械検査は12件: ①隣6つが等距離・領域は 3R(R+1)+1 セル ②拡散で水分保存 ③つまみ4通りで6回対称が 10⁻¹³ 以内 ④充填率が単調に変わる ⑤凍ったセルが全部種から連結 ⑥同じつまみで完全再現 ⑦種2つで対称が壊れる対照 ⑧★DLA との独立対照(A₆=0.219 vs 10⁻¹⁶)⑨次元が DLA と同じ桁 ⑩出荷SVG2枚。

→ 異方性DLA(同じ六角格子で乱数に歩かせた場合=6回対称が立たない)

→ 誘電破壊(場を解いて枝を育てるもうひとつの道)

→ チューリング・パターン(同じ「拡散」から模様が出るしくみ)

出典

数理
Clifford A. Reiter, "A local cellular model for snow crystal growth", Chaos, Solitons & Fractals 23 (2005) 1111–1119。実物の雪の形と気温・湿度の関係(中谷宇吉郎のダイアグラム)や、界面の異方性を入れた連続模型(Gravner–Griffeath 2009 など)とは別物で、ここで確かめたのはこの離散模型の性質だけ——実物の測定と突き合わせたわけではない
生成
generators/snowflake.js(六角格子・受容セルの判定・六方拡散・6回対称のずれの測定・箱数え次元・4つの形と対照図。依存ゼロ・乱数ゼロ)