Repository navigation
Conversation
Previous review (2026-11-09)Automated review note — AI-generated (Claude+Codex), validated against the live diff. Please sanity-check before acting. Reviewed at head The step-response stats table works and gives correct values for the default 400 Hz / 512-sample case, but there are two edge cases where it shows misleading numbers. Should fix
Minor (1)
|
…icked tests No stats when the estimate is shorter than the 0.4 s window, clear the table when the axis data is set up, and leave out tests that are unticked.
|
Automated review note — AI-generated (Claude+Codex), validated against the live diff. Please sanity-check before acting. Reviewed at head The step-response stats table now looks good to merge at head 9eae3fe, with no open findings. All three earlier findings are fixed. Short estimates (under 0.4 s) no longer produce a row, switching to an axis without an FFT clears the table, and unticked tests drop out of the table. Two new concerns were checked and dropped as pre-existing behaviour rather than this PR. After a Scale or Calculate redraw, unticked mean lines come back on the plot, because redraw_step() forces them visible at PIDReview/PIDReview.js:1323. A failed recalculation leaves the step plot stale, and the table matches that stale plot. |
"Settling time read out. also other stats overshoot ect." from #92.
A table under the Step Response title gives, for the mean response of each test: rise time (10 to 90%), peak and peak time, overshoot, settling time (5% band) and final value.
The calculation matches an independent Python version on three analytic second order responses (damping 0.3/0.5/0.8). For damping 0.5 it gives 16.4% overshoot with the peak at 90 ms, against theory's 16.3% at 90.7 ms. The thresholds (
step_stats_*) are easy to change if you'd prefer other definitions. No change to the step estimate itself.