Skip to content

Implement ITU-R P.618-14 Earth-space propagation recommendation#105

Merged
inigodelportillo merged 2 commits intomasterfrom
claude/dazzling-hodgkin
Mar 8, 2026
Merged

Implement ITU-R P.618-14 Earth-space propagation recommendation#105
inigodelportillo merged 2 commits intomasterfrom
claude/dazzling-hodgkin

Conversation

@inigodelportillo
Copy link
Copy Markdown
Owner

Summary

  • Adds _ITU618_14 class delegating to _ITU618_13; the core algorithms (rain attenuation, rain probability, XPD, scintillation el≥5°, total attenuation) are identical between the two revisions — P.618-14 extends the §2.4.1 scintillation validity range from 20 GHz to 55 GHz without changing the equations
  • Updates the default active version in the _ITU618 wrapper from 13 to 14
  • Fixes the scintillation_attenuation and scintillation_attenuation_sigma docstrings to say "55 GHz" (was stale "20 GHz" inherited from P.618-12)
  • Adds ITUR618_14TestCase to both ITU_validation_test.py and ITU_validation_report_test.py
  • Adds four validation CSV files extracted from the ITU Validation examples spreadsheet Rev 8.3.0 (not Rev 5.1 used for P.618-13): A_rain, A_sci, A_total, A_xpd
    • A_sci: 48 rows — P.618-14 drops the out-of-range p = 0.001% cases (valid range is 0.01 ≤ p ≤ 50%)
    • A_total: 48 rows with new frequencies (13.75, 14.25, 17, 20 GHz) and locations vs the P.618-13 set
  • Adds docs/validation/itur618_14.rst documentation page

Test plan

  • ITUR618_14TestCase — 6 unit tests in ITU_validation_test.py all pass
  • ITUR618_14TestCase — 5 report tests in ITU_validation_report_test.py all pass (generates correct HTML tables from Rev 8.3.0 data)
  • ITUR618_13TestCase tests unaffected

🤖 Generated with Claude Code

- Add _ITU618_14 class delegating to _ITU618_13 (algorithms unchanged
  between revisions; P.618-14 extends §2.4.1 scintillation validity
  from 20 GHz to 55 GHz without modifying the equations)
- Update default version in _ITU618 wrapper from 13 to 14
- Update scintillation_attenuation and scintillation_attenuation_sigma
  docstrings to reflect the extended 55 GHz upper frequency limit
- Add ITUR618_14TestCase to ITU_validation_test.py and
  ITU_validation_report_test.py
- Add validation CSV files extracted from ITU Validation examples
  Rev 8.3.0 (A_rain, A_sci, A_total, A_xpd for P.618-14)
- Add docs/validation/itur618_14.rst documentation page

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Comment thread docs/validation/itur618_14.rst Outdated

The table below contains the results of testing function ``atmospheric_attenuation_slant_path``.
The test cases were extracted from spreadsheet ``ITURP618-14_A_total.csv`` from the
`ITU Validation examples file (rev 5.1) <https://www.itu.int/en/ITU-R/study-groups/rsg3/ionotropospheric/CG-3M3J-13-ValEx-Rev5_1.xlsx>`_.
Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should link to the right file, the new version.

Comment thread docs/validation/itur618_14.rst Outdated


.. raw:: html
:file: itur618_14_cross_polarization_discrimination_table.html
Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The HTML file also need to be included as part of this PR.

- Generate 5 HTML validation tables (rain attenuation, rain probability,
  scintillation, XPD, total attenuation) by running the report test suite
- Update itur618_14.rst: replace stale Rev 5.1 URL with correct Rev 8.3.0
  URL (https://www.itu.int/en/ITU-R/study-groups/rsg3/rwp3m/Validation
  %20Example/CG-3M3J-13-ValEx-Rev8.3.0.xlsx) in all 6 occurrences

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@inigodelportillo inigodelportillo merged commit 6d7f35c into master Mar 8, 2026
6 checks passed
@inigodelportillo inigodelportillo deleted the claude/dazzling-hodgkin branch March 8, 2026 17:30
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