research/lab/py/toolpath-turns
0 directories and 2 files in research/lab/py/toolpath-turns.
Toolpath Turns
- Replacement curves on the triangular lattice: a generator of
nunit steps from0to a chordcwithN(c) = n, and a flagF,R,MorMRper step;MandMRonly whenc/conj(c)is a unit. census [orders] [stop]: every gentle generator walk (turns at most 60 degrees, point-avoiding), every flag assignment gentle by the junction closure and point-avoiding at level 2, expanded to the first crossing, up to level 4; mirrors where the chord allows them; prints the (generator, flags) pairs and, when the order is exhausted, their classes up to reversal and mirror;stopcuts after that many walks.plain [orders] [stop]: the same withF, Ronly.gosper: the Gosper curve's turn counts, axis counts andabs(h2)^2at levels 1 to 6, asserted against7^(k-1),4*7^(k-1) - 1,2*7^(k-1)and7^k; its mirror image at level 2 asserted against the first 49 terms of A229214.bead: the second harmonich2of Hilbert's curve at levels 1 to 6 and Peano's at levels 1 to 4.rate [orders]: every curve avoiding points through level 4 at an order, one per class up to reversal and mirror, with its 120-degree turn counts at levels 1 to 5.- Asserts exit nonzero; nothing is written.
RUN
uv run python research/lab/py/toolpath-turns/toolpath.py census 3,4,7,9,13: 4 s.uv run python research/lab/py/toolpath-turns/toolpath.py plain 12: 1 s.uv run python research/lab/py/toolpath-turns/toolpath.py census 12 379: 84 s, order 12 with mirrors cut after walk 379 of 2646.uv run python research/lab/py/toolpath-turns/toolpath.py plain 16 97426: 60 s, order 16 withF, Rcut after walk 97426 of 122964.uv run python research/lab/py/toolpath-turns/toolpath.py gosper: under 1 s.uv run python research/lab/py/toolpath-turns/toolpath.py bead: under 1 s.uv run python research/lab/py/toolpath-turns/toolpath.py rate 7: under 1 s; order 9 with mirrors passes 300 s.
WITNESSES
toolpaths.md, The census: orders 3, 4, 7, 9 (mirrors), 12 (F, R) and 13 exhausted, pairs and classes, no gentle curve avoids points at level 3 (census 3,4,7,9,13,plain 12, Verified); the cuts at order 12 with mirrors and order 16 (census 12 379,plain 16 97426, Conjecture).toolpaths.md, The Gosper count: the turn triple at levels 1 to 6 and the mirror image against A229214 (gosper, Verified).toolpaths.md, The bead axis:abs(h2)^2 = 7^kfor Gosper,h2 = -1for Hilbert,h2 = (9^k - 1)/2for Peano (gosper,bead, Verified).toolpaths.md, The printer's line: the two order-7 classes and their sharp counts2*7^(k-1)and3*7^(k-1)(rate 7, Verified).
- README.md2.6 kB
- toolpath.py10.7 kB