Skip to content

fix(presets): three fading-preset rows deviate from their canonical CCIR/standard values - #5

Open
spinkham wants to merge 1 commit into
bubnikv:masterfrom
spinkham:fix/preset-table-spreads
Open

fix(presets): three fading-preset rows deviate from their canonical CCIR/standard values#5
spinkham wants to merge 1 commit into
bubnikv:masterfrom
spinkham:fix/preset-table-spreads

Conversation

@spinkham

Copy link
Copy Markdown

Three rows in PathSimParams.cpp don't match the canonical channel definitions (CCIR Rec. 520-2 and the standard-settings table in PathSim's own technical guide, pathsimtech100 §4.1.11):

preset in table canonical note
ccir-poor 2 ms / 0.5 Hz 2 ms / 1.0 Hz carries the Moderate spread with the Poor delay
midlat-quiet 0.5 ms / 0.5 Hz 0.5 ms / 0.1 Hz canonical mid-lat quiet equals CCIR Good
midlat-moderate single path {0, 1.0, 0.5} two paths, 1 ms / 0.5 Hz delay/spread collapsed into one entry with a spurious 0.5 Hz offset

All other rows check out against the same sources.

Verified end-to-end by running a 1 kHz tone through the binary and measuring the realized Doppler spread of the output fading (autocorrelation fit against the Gaussian-PSD model, 900 s dwell):

preset before after canonical
ccir-poor 0.497 Hz 0.967 Hz 1.0 Hz
midlat-moderate 0.983 Hz 0.501 Hz 0.5 Hz
midlat-quiet 0.493 Hz 0.107 Hz 0.1 Hz

(The same measurement confirms GaussFIR itself realizes exactly the spread it's asked for — the filter is fine, only these table values were off. Practical effect of the bug: --ccir-poor has been simulating fading at half the canonical rate, which makes modem results on that preset optimistic relative to other CCIR-Poor simulators.)

Companion to #4 (the doc note on the sqrt(2) in the filter width constant).

🤖 Generated with Claude Code

ccir-poor: spread 0.5 -> 1.0 Hz (CCIR 520-2 Poor is 2 ms / 1 Hz; the row
carried the Moderate spread with the Poor delay).
midlat-quiet: spread 0.5 -> 0.1 Hz (canonical mid-latitude quiet is
0.5 ms / 0.1 Hz, same as CCIR Good).
midlat-moderate: garbled single-path {0, 1.0, 0.5} -> canonical two-path
1 ms / 0.5 Hz (delay/spread had collapsed into one entry with a spurious
offset).

Values per the PathSim technical guide's own standard-settings table
(pathsimtech100 sec 4.1.11) and CCIR Rec. 520-2. Verified by feeding a
tone through the binary and measuring the realized Doppler spread of the
output (autocorrelation fit): before = 0.497 / 0.983 / 0.493 Hz, after =
0.967 / 0.501 / 0.107 Hz vs canonical 1.0 / 0.5 / 0.1.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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