Repository navigation
feat(rf): Smith chart matches complex loads; accessible Radio tools and SVGs (to main) - #16
Merged
Merged
Conversation
…nd SVGs - fix: the Smith chart's L-network matched only the load's resistance, so its components were wrong for any reactive load. rf.l_match_complex now returns every lossless L-network (shunt-at-load and series-at-load) for R + jX, each verified numerically (Zin == Z0); rf.match_path traces each network across the chart. - Smith chart dialog: all solutions listed, the chosen one drawn along its constant-R / constant-G circles, constant-VSWR circle, mismatch loss, theme colours, text labels on every mark, keyboard focus, and a live screen-reader description. - VSWR, REFLCOEF, RETURNLOSS, MISMATCHLOSS and VSWRG accept Excel complex strings; numeric behaviour is unchanged. - core.science.svgaccess.make_accessible adds role="img", <title> and <desc>; the Smith, antenna-pattern (linear or dB-aware) and I/Q exports use it. - Accessible names for the RF toolkit results, RF reference filter and tables, activation-log fields and table, and satellite TLE and passes; the antenna pattern plot is focusable and self-describing. - tests/test_gui_radio_accessibility.py checks every Radio dialog through Qt's accessibility layer (fails on the pre-fix tree: 7 of 9 dialogs). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0157FDmhHjtSvT3pWABUTvmX
…h it on Linux Windows CI failed test_radio_dialog_is_accessible[HamLogDialog]: the ruleset QComboBox had no accessible name. Its "Ruleset:" label sat beside it but was not its buddy, so Windows screen readers (NVDA, JAWS, Narrator) announced an unlabelled combo box. The test passed on Linux and macOS because Qt's accessibility layer reports a combo box's *name* as its current value on Unix platforms (labels travel as relations there), so the name was never empty. The audit now requires a combo box to have an explicit accessible name or a buddy label, which is what Windows needs, so the same gap fails on every platform. Verified: with the dialog fix reverted, the hardened test fails on Linux. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0157FDmhHjtSvT3pWABUTvmX
…-smith feat(rf): Smith chart matches complex loads; accessible Radio tools and SVGs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR carries the work from #15 to
main.Why a second PR
#15 was merged into
claude/sleepy-edison-2492mm, but #13, that branch's PR tomain, had already been merged about 30 minutes earlier. So #15's commits landed on a branch that nothing further merges intomain. This PR brings exactly those commits over:4d593e2feat(rf): Smith chart matches complex loads; accessible Radio tools and SVGsf526a27fix(a11y): name the activation-log ruleset combo; make the audit catch it on Linux1867d88the merge commit for feat(rf): Smith chart matches complex loads; accessible Radio tools and SVGs #15mainalready has the circuit math (#13) and the RF exposure work (#14), so the diff here is only the Smith chart and accessibility change set.What's in it
The full description is on #15. In short:
VSWR,REFLCOEF,RETURNLOSS,MISMATCHLOSSandVSWRGaccept complex strings such as"75+25j".role="img",<title>, and a generated<desc>.Verification
On #15's head
f526a27, every check passed, including all Windows, macOS and Linux jobs, coverage, benchmarks and the science extras. This PR's CI will re-run againstmain.🤖 Generated with Claude Code
https://claude.ai/code/session_0157FDmhHjtSvT3pWABUTvmX
Generated by Claude Code