観測 039

犬

Inu — Dog

式で遊ぶ

画かボタンを押すと、点が減ります。40,000 → 625 → 40 → 1 の次は、40,000に戻ります。
少数点では、点を大きくし、残像を長くして通り道を見やすくしています。
「聴く」は、表示中の点の配置を音へ写します。点数を変えると音を作り直します。

章
空
制作
2026
媒体
数式・ブラウザで実行
点
40,000
周期
20秒でひと巡り
指紋
sha256 90bf74d4…41dc

胴震いをしています。

ねじれの波が、頭で生まれて尾へ抜けていきます。
背骨の輪は、一つずつ別の角度に回っています。

毛は、速さがいちばん大きくなる瞬間だけ、遠心で立ちます。
波が通り過ぎた輪の毛は、もう寝はじめています。

垂れた耳は、頭に遅れて振られます。
尾はいちばん最後に、いちばん大きく振られます。

四本の足は踏ん張って、動きません。
動きは全部、上半身が持っていきます。

点を減らすと、立った毛が先に消えます。
六百二十五点では、輪ごとに別の角度へ回る背骨が残ります。
四十点では、震えの拍だけになります。
一点は、毛の一本だった点が、回されて立ち、寝る通り道です。

体を震わせて水を飛ばすのに、犬は考えてから始めません。
頭が始めると、体は順番に、それに巻き込まれていくだけです。

式を読む・確かめる
(i, t,
        bd = i < 22000, hd = i < 27000, mz = i < 29500, er = i < 33000, lg = i < 37000,
        sb = i / 5 | 0, q = (i % 5) / 4, S = sb * .618034 % 1, ar = (sb * .754878 % 1) * TAU,
        w2 = i * .324717 % 1, v = i * .754878 % 1, gg = i * 2.39996,
        W = 4 * t - 3.5 * S, A = (.28 + .34 * S) * sin(W), fl = 1 + 1.3 * q * abs(cos(W)),
        Ys = 58 + 5 * S, Xs = 66 - 124 * S,
        R = 10 + 10 * exp(0 - ((S - .15) / .38) ** 2),
        e = ((i - 22000) % 5000) / 4999 * 2 - 1, rr = sqrt(max(0, 1 - e * e)),
        Wh = 4 * t, Ah = .3 * sin(Wh),
        pe = (i - 29500) % 1750 / 1749, sd = i < 31250 ? -1 : 1,
        ew = 1.1 * sin(4 * t - 1.2) * pe,
        m = (i - 33000) / 1000 | 0, p = (i - 33000) % 1000 / 999,
        fx = [50, 36, -40, -54][m],
        u = (i - 37000) / 2999, wg = sin(4 * t - 3.5 - 1.5 * u), tz = (10 + 36 * u) * wg,
        X = bd ? Xs - q * 3 : hd ? 88 + (23 - 6 * max(0, e)) * rr * cos(gg) * (1 - .3 * abs(Ah))
          : mz ? 108 + 22 * pe : er ? 90 + sd * 8 - 6 * pe + 5.5 * (w2 - .5)
          : lg ? fx + 4 * sin(PI * p) * (m < 2 ? 1 : -1) + 4 * (w2 - .5) + 3 * max(0, .3 - p) * 3
          : -56 - (46 - 15 * abs(wg)) * u + 4 * (w2 - .5),
        Y = bd ? Ys + (R + q * 6.5 * fl) * cos(ar + A) * .94
          : hd ? 76 + 17 * rr * cos(gg) + 5 * e
          : mz ? 72 - 5 * pe + 7 * (1 - pe) * (v - .5) * 2
          : er ? 88 - 40 * pe * cos(ew) : lg ? 28 * (1 - p)
          : 60 - 12 * u + 44 * u * u + 3 * (v - .5),
        Z = bd ? (R + q * 6.5 * fl) * sin(ar + A) * .8 : hd ? 15 * rr * sin(gg) + 16 * Ah * rr
          : mz ? 8 * (1 - pe) * sin(gg) + 12 * Ah
          : er ? sd * (13 + 8 * pe) + 30 * pe * sin(ew) + 14 * Ah * pe
          : lg ? (m % 2 ? 10 : -10) + 2 * (v - .5) : tz,
        Dx = 200 + 8 * sin(t * .25 + .6), Dy = 252 + 6 * cos(t * .25 + 3.2) + 3 * sin(t * .75 + .6),
        Xr = X * .97 - Z * .24, Zr = Z * .97 + X * .24
       ) => [Dx + (Xr + .2 * Zr) * 1.22, Dy + (.16 * Zr - Y) * 1.22]

この式の指紋

sha256:90bf74d425fc79e1bca6c3d1d6499ad53a62baf134489e3382a1590ecf8141dc

同じ点番号と時刻を渡すと、同じ座標が得られます。
残像や点の見え方は、描画設定と端末によって変わります。

上のボタンで式をそのまま持ち出せます。手元で数え直すなら:

pbpaste > f.txt && printf %s "$(cat f.txt)" | shasum -a 256

持ち帰って走らせてください。式を変えると、どんな姿になるでしょう。 この式を、その場で走らせて書き換える →