filters/delay
A scenario of the Gyro filters, from tools/trace/scenarios/filters/delay.cpp.
✓ pass
- The clang run (clang 18.1 optimized) matches the committed trace.
- The gcc run (gcc 13.3 optimized) matches the committed trace.
Shown on
These players show the same trace, with panels chosen to explain it:
- How long do the gyro filters delay a change in roll rate? (How the Gyro Filters Work)
- Does the gyro chain leave the rate loop 45° of phase margin? (Gyro Filters V&V Plan)
Every channel
roll_rate [rad/s] [0] [1] [2] [3]
t = 0.000 s / 0.040 s
Keys (with the player focused): Space play/pause · ← → one sample (Shift: ten) · Home/End · [ ] speed
0.04 s of the dsp/filters scenario delay.cpp, 321 samples every 0.000125 s. The panels plot every channel that changes: roll_rate. 2 events are marked. Pass criteria: BB-C2 rate_loop_phase_margin_deg >= 45 deg.
- a 1 rad/s roll-rate step reaches the gyro
- the chain's output reaches half the step, 3.4 ms after it
- ✓ passBB-C2 rate_loop_phase_margin_deg = 53.04 deg (>= 45), computed by the scenario harness