← ギャラリーへ

かけ算第21号|川の分岐 × 葉脈と血管 — 葉脈は二分木の 2 か、川の 5 か

対称二分木・羽状脈・川の3つの網目に、同じStrahler次数の物差しを当てて分岐比を出した図。二分木2.000、羽状脈12.41、川4.27
同じ物差し(Strahler 次数 → Horton の分岐比 R_B)を3つに当てる。太さはどれも Murray(r³ 保存)で、つながり方だけが違う。二分木 2.000・羽状脈 12.41・川 4.27

この作品の問い

川の分岐の発見32は「分岐比 R_B は木であることでは決まらない」だった。完全二分木もランダム二分木も R_B = 2.000(厳密)なのに、川は 5 前後——決めているのは「どこに水が集まるか」だった。

いっぽう葉脈と血管は、太さの帳簿(Murray: 親の r³ = 子の r³ の和)と分岐角(張力の釣り合い)を持っていたが、木のつながり方は対称二分木を仮定したままだった。実際の羽状脈は二分木ではない。主脈に側脈が横から入り、側脈にまた細い脈が横から入る。

そこで Horton の物差しを葉脈に当てる。葉脈の R_B は二分木の 2 か、川の 5 か、それとも別の数か。

横枝の帳簿

「横から入る」を帳簿にしたのが Tokunaga の木で、次数 ω の流路は、頭で次数 ω−1 の2本が合流してでき、さらに横から T_k 本の次数 ω−k の支流を受ける(T_k = a·ck−1)。a = 0 なら純粋な二分木、a が大きいほど「主脈に側脈がたくさん入る」羽状脈になる。

無限に大きい木での分岐比は、本数の釣り合い Nω = 2Nω+1 + Σ Tk Nω+k に Nω ∝ R−ω を入れるだけで出る——R² − (2+c+a)R + 2c = 0。この二次方程式は自分で出した(式が釣り合いを残差 10⁻¹⁶ で満たすことを検査している)。

式と実測は独立2経路。自分で作った有限の木で N₁/N₂ を数えると、a=1, c=2 で木を Ω = 4 → 8 と大きくするにつれ 3.909 → 3.977 → 3.994 → 3.9985 → 3.9996 と式の 4.000 へ単調に近づいた。a を 1〜16、c を 1〜3 に振った 8 通りで 2% 以内。
⚠️ ただしT_k が整数になる組でしか成り立たない。a = 0.5 のような組は T_k = 0.5, 1, 2, … を丸めるので帳簿そのものが歪み、式から 9.7% 外れる。最初これで悩んだ——合わないのは式ではなく木のほうだった。

★答え——葉脈は 2 でも 5 でもない

主脈に側脈が 10 本ずつ横から入る羽状脈(a = 10, c = 1)の分岐比は 12.41(式では 12.84)。二分木の 2 より、川の 4.27 よりずっと大きい。しかも手で数えられる——次数2の脈は「頭の2本+側脈10本」で 12 本、次数1は 154 本。

羽状脈の分岐比は「主脈に側脈が何本入るか」そのものである。川の 5 前後が「地形がどれだけの支流を横から集めるか」で決まっていたのと、帳簿の形は同じ——ただ、葉は地形なしにその帳簿を自分で持っている

網目横から入る枝R_B次数ごとの本数
対称二分木なし(頭で2本ずつ)2.000(厳密)64, 32, 16, 8, 4, 2, 1
川(地形を削ったあと・窪地埋めあり)地形が決める4.27313, 62, 14, 3, 1
羽状脈(側脈 10 本ずつ)a = 10, c = 112.41154, 12, 1

⚠️ 実物の葉の側脈を数えたわけではない。「側脈が a 本ずつ入る木なら R_B はこうなる」という模型の帳簿である。⚠️ 全次数の片対数の傾きで測る R_B は、上の次数が数本しかないぶん式より小さく出る(a=1, c=2 で 3.79 < 4.00)。の「5 前後」も同じ物差しで測っているので、同じ癖を持つ比較になっている。

つながり方と太さは、別の帳簿

左: 横枝の帳簿(a,c)から出る式と実測の分岐比が対角線上に並ぶ図。右: 横枝が幹に入る角度を支流の細さに対して描いた図。Murrayは細いほど直角に近づき、レオナルドは全部0°
左: 式(横)と実測(縦)。●は全次数の傾き、○は N₁/N₂。右: 横枝が幹に入る角度。Murray(r³)は細いほど直角に近づき(87.5° → 37.5°)、レオナルド(r²)は細さによらず 0°

同じ木に Murray(p = 3)とレオナルド(p = 2)の太さを与えても、R_B は === で一致する。つながり方の帳簿は太さの帳簿を知らない。合流ごとの保存 r₀p = r₁p + r₂p は、太さを「集める葉先の数の 1/p 乗」で決めているので、どちらの p でも 10⁻¹⁶ で成り立つ。

横枝の角度を決められるのは Murray だけだった。葉脈と血管の角度の式(張力 r² の釣り合い)に横枝を入れると、Murray では細い支流ほど直角に近い角度で幹に入る(t/n₀ = 1/4096 で 87.5°、対等なら 37.5°)。細い極限では cos θ ≈ (2/3)(t/n₀)1/3 という閉じた式になり、数値と 0.1% 以内で合う。
いっぽうレオナルド(r² 保存)では横枝の角度がすべて 0°——親の張力 r₀² が子の r₁² + r₂² にちょうど等しく、張力の三角形が潰れる。木はどこまで高くなれるかの発見40(レオナルド則は角度を決められない)と同じ退化が、横枝でも出る。羽状脈が側脈を「横から」出せるのは、r³ の帳簿だからである。

どう作ったか

generators/riverleaf.js。Tokunaga の木を節の型 { 上流, 支流 } で作り、Strahler 次数と葉先の数を葉から根へ数え、流路(同じ次数の連なり)ごとに本数・長さ・葉先を集めて片対数の傾きから R_B を出す(と同じ数え方)。太さは venation.js の Murray、角度は同じく venation.js の anglesFormula をそのまま使い、川は river.js の buildEroded(N = 160・侵食 40 回・窪地埋めあり)。

⚠️ 図で踏んだ罠: 頭で合流する2本を横枝としても描いていて、二分木の線分が 127 本のはずが 5,461 本になっていた。線分の数=節の数を検査に固定した。⚠️ 1本1要素の SVG は 1.4MB になったので、太さを 10 段に量子化して段ごとに1つの path にまとめた(99KB)。

検査は 19 件。対称二分木の R_B が厳密に 2 で川の作品の実装と一致すること、式が釣り合いを満たすこと、N₁/N₂ が木を大きくすると式へ単調に近づくこと、丸めた帳簿では外れること、p=2 と p=3 で R_B が === であること、横枝の角度の単調性・閉じた式との一致・レオナルドの 0° 退化、図の線分数などを機械検査している。

出典

数理
R. E. Horton (1945) 分岐比・長さ比/A. N. Strahler (1957) 次数/E. Tokunaga (1978) 横枝の帳簿 T_k = a·ck−1(⚠️ 無限木の R_B の式は自分で出したもので、文献の式との照合はしていない)/C. D. Murray (1926)/M. Zamir (1978) 分岐角
川の分岐(発見32・Horton の物差し)× 葉脈と血管(Murray 則・分岐角の式)。退化の型は 木はどこまで高くなれるか(発見40)
生成
generators/riverleaf.js(riverleaf.svg 三兄弟・riverleaf-laws.svg 帳簿)