Skip to content

do_freq_est: document the state×arm incidence (table + diagram)#82

Merged
bobvan merged 1 commit into
mainfrom
charlie/dofreqestStateArmMap
May 29, 2026
Merged

do_freq_est: document the state×arm incidence (table + diagram)#82
bobvan merged 1 commit into
mainfrom
charlie/dofreqestStateArmMap

Conversation

@bobvan
Copy link
Copy Markdown
Owner

@bobvan bobvan commented May 29, 2026

Summary

Documents which of DOFreqEst's 6 measurement arms observes which of its 4 states — and which state is hidden. Purely additive (docstring + docs), no logic change.

  • scripts/peppar_fix/do_freq_est.py (+24): ASCII state×arm incidence table in the module docstring (renders in-place), with footnotes for the one non-diagonal arm (TICC, intermittent at 125 MHz tick boundaries) and for x3 (DO frequency) — the lone HIDDEN state, recovered only via the predict-step integrator coupling, yet the state the servo actuates on (adjfine ≈ −f_do).
  • docs/dofreqest-state-arm-map.svg + its generator scripts/gen_dofreqest_state_arm_svg.py.

No overlap with the in-flight PR #79 (routedQErrArm), which edits do_freq_est.py from line 69+; this change is the top module docstring.

Test plan

  • do_freq tests pass (15); full suite 1380 passed, 1 skipped, 22 subtests.
  • SVG validates as well-formed XML; docstring imports cleanly with the table present.

🤖 Generated with Claude Code

DOFreqEst fuses up to 6 measurement arms into a 4-state EKF, but which
arm observes which state — and which state is hidden — wasn't written
down anywhere.  Add a state×arm incidence table to the module docstring
(ASCII, renders in-place) and a matching SVG, making the structure
explicit: x0/x1/x2 are directly measured; x3 (DO frequency) is the lone
HIDDEN state, recovered only through the predict-step integrator coupling
— and it's the very state the servo actuates on (adjfine ≈ −f_do).
Also flags TICC (Arm 4) as the only non-diagonal arm, intermittent at
125 MHz tick boundaries.

Files: docs/dofreqest-state-arm-map.svg + its generator
scripts/gen_dofreqest_state_arm_svg.py (keep the two in sync).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bobvan bobvan merged commit fe52766 into main May 29, 2026
@bobvan bobvan deleted the charlie/dofreqestStateArmMap branch May 29, 2026 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant