docs(spec): protected bands — record model, UI panel, remez notch stage, validation L17/L18 (round 9 planning) #41

Merged
ykp merged 1 commit from protected-bands-spec into master 2026-09-28 18:24:27 +02:00
Owner

Spec updates for the operator-confirmed protected bands design (round 9, all 9 clarification answers incorporated):

  • §1/§2: post chain gains the ProtectedNotch stage (CFR → BandFilter → ProtectedNotch → Windowing)
  • §3.1: optional project key "ProtectedBands"; new §3.4 Protected Band record {Fmin, Fmax, Transition, Rejection} (absolute RF MHz / MHz / MHz / dB; remez shape factor deduced from the record: cut starts at Fmin−tr, max rejection on [Fmin, Fmax], stops after Fmax+tr)
  • §4.2.5: protected bands panel — Import/Export/Clear/Edit + the "x protected bands" count label (overlap rule [fc−BW/2, fc+BW/2]); Edit opens a modal 4-column table dialog
  • §5.3.3: successive remez (Parks–McClellan) bandstop notch stage; passband ripple + tap cap as global settings (defaults 0.05 dB / 512); windowing renumbered §5.3.4
  • §7.1: L17 record checks (Fmin < Fmax, Transition > 0, Rejection ∈ [10, 120] dB, instrument range) and L18 overlap-free records (signal-band overlap allowed)
  • §8.1: project-JSON example gains "ProtectedBands"
  • §9: protected-bands testing note

Backlog round 9 planned locally (tickets 43–46, four waves, one PR each; gitignored). Docs-only — no code.

Spec updates for the operator-confirmed **protected bands** design (round 9, all 9 clarification answers incorporated): - **§1/§2**: post chain gains the ProtectedNotch stage (CFR → BandFilter → **ProtectedNotch** → Windowing) - **§3.1**: optional project key `"ProtectedBands"`; new **§3.4 Protected Band** record `{Fmin, Fmax, Transition, Rejection}` (absolute RF MHz / MHz / MHz / dB; remez shape factor deduced from the record: cut starts at `Fmin−tr`, max rejection on `[Fmin, Fmax]`, stops after `Fmax+tr`) - **§4.2.5**: protected bands panel — Import/Export/Clear/Edit + the "x protected bands" count label (overlap rule `[fc−BW/2, fc+BW/2]`); Edit opens a modal 4-column table dialog - **§5.3.3**: successive remez (Parks–McClellan) bandstop notch stage; passband ripple + tap cap as **global settings** (defaults 0.05 dB / 512); windowing renumbered §5.3.4 - **§7.1**: **L17** record checks (`Fmin < Fmax`, `Transition > 0`, `Rejection ∈ [10, 120]` dB, instrument range) and **L18** overlap-free records (signal-band overlap allowed) - **§8.1**: project-JSON example gains `"ProtectedBands"` - **§9**: protected-bands testing note Backlog round 9 planned locally (tickets 43–46, four waves, one PR each; gitignored). Docs-only — no code.
docs(spec): protected bands — record model, UI panel, remez notch stage, validation L17/L18 (round 9 planning)
All checks were successful
test / test (ubuntu-latest) (pull_request) Successful in 2m57s
d030eee4a3
Spec updates for the operator-confirmed protected-bands design:
- §1 overview + §2 diagram: post chain gains the ProtectedNotch stage
  (CFR → BandFilter → ProtectedNotch → Windowing)
- §3.1: optional project key "ProtectedBands"; new §3.4 Protected Band
  record {Fmin, Fmax, Transition, Rejection} (absolute RF MHz, transition
  MHz, rejection dB; remez shape factor deduced from the record)
- §4.2.5: protected bands panel (Import/Export/Clear/Edit + the
  "x protected bands" count label, overlap rule [fc−BW/2, fc+BW/2]);
  Edit opens a modal 4-column table dialog
- §5.3.3: successive remez (Parks–McClellan) bandstop notch stage;
  passband ripple + tap cap as global settings (defaults 0.05 dB / 512);
  windowing renumbered §5.3.4
- §7.1: L17 protected-band record checks, L18 overlap-free records
  (signal-band overlap allowed)
- §8.1: project-JSON example gains "ProtectedBands"
- §9: protected-bands testing note (rejection measurement, order
  invariance, count-label agreement, JSON round-trip)

Backlog round 9 planned locally (tickets 43–46, four waves, one PR each).
ykp merged commit 14c211b59b into master 2026-09-28 18:24:27 +02:00
Sign in to join this conversation.
No description provided.