SSM-Clock—Acceptance & Longbench (2.5–2.6)

2.5 Acceptance bench (stacked + multistart, v1.1)

Four-cycle human/astro set (tested)

python ssm_clock_longbench_v2.py ^
  --period_sets "1,7,29.5306,365.2422" ^
  --seeds 200 ^
  --noise_list "2,6" ^
  --grid_step_min 2.0 ^
  --alpha_kz 0.0 ^
  --stack 5 --stack_dt_days 0.5 ^
  --multistart_k 7 --refine brent --refine_steps 80 --bracket_mult 2

PASS gate

error <= 28.8 min   with   pass_rate >= 95%   across >= 200 seeds

v1.1 defaults

grid 2 min, stack 5, delta 0.5 d (12 h), K=7, refine brent

Outputs

notes/longbench_summary.csv   # one row per set x noise
notes/lb_cfg_*.json           # per-seed configs (synthetic)
notes/lb_obs_*.csv            # per-seed observed phases


2.6 “Thousands of years” stability checks (synthetic)

Why synthetic. Ephemeris-free; we validate the inverse, not any astronomical model.

Method

  1. Draw tau_true uniformly from [0, T_search] for each seed.
  2. Generate phases via the forward model + noise.
  3. Run the stacked + multistart inverse.
  4. Accumulate error modulo T_search.

Interpretation. A uniform draw emulates sampling across many centuries because the symbolic surface repeats; stacking destroys long-horizon aliases.

Example (large seed sweep)

python ssm_clock_longbench_v2.py ^
  --period_sets "1,7,29.5306,365.2422" ^
  --seeds 2000 ^
  --noise_list "2" ^
  --grid_step_min 2.0 ^
  --stack 5 --stack_dt_days 0.5 ^
  --multistart_k 7 --refine brent --refine_steps 80 --bracket_mult 2

Result to expect. PASS-rate ~ 100%, mean error single-digit minutes for noise=2 deg.


Navigation

Back: SSM-Clock—Runner & Streaming Inverse (2.3–2.4)
Next: SSM-Clock—Formats, Determinism & Performance (2.7–2.9)