pub const FAMILY_PARAMS: &[FamilyParam];Expand description
Every coefficient whose meaning — and so whose reading range — depends on the
attractor family (ADR-0180 rule 4, ADR-0194 point 2). It is what the
generated reference prints in place of the blank cell PARAMS’s
range: None leaves, and what gives a studio four sliders where it has four
number fields.
Inertness is what the map arithmetic reads, and it is held against the
WGSL in STEP_SHADER rather than against
step_once’s mirror alone: De Jong and Clifford read all four, Thomas
reads a — its dissipation — alone, Lorenz reads a, b and c (sigma,
rho, beta) and never d, and every IFS figure reads none of them.
A reading cell’s bounds are the hull of that family’s own tuple roster,
AttractorFamily::extra_tuples plus the canonical
AttractorFamily::default_coeffs, rounded outward to a
readable slider end. The hulls those rosters measure, which the test holds
every declared cell to contain:
| family | a | b | c | d |
|---|---|---|---|---|
de_jong | -2.7 .. 2.1 | -2.53 .. 1.902 | -1.81 .. 2.4 | -2.2 .. 2 |
clifford | -1.9 .. 1.9 | -2 .. 1.8 | -1.9 .. 1.9 | -1.9 .. 1.6 |
thomas | 0.03 .. 0.22 | |||
lorenz | 10 .. 16 | 24.4 .. 126.52 | 1 .. 4 |
A hull is not a map of chaos. Outside it are coefficients nobody
measured, not coefficients that fail; the bound is a slider’s travel and a
guide, and an author who wants a figure past it types the number
(ADR-0194’s second Negative). Thomas’s low end is widened to zero rather
than to the roster’s 0.03 because zero is the undamped limit of its own
parameter and reads as one end of the sweep.