Add harris priester drag model - #583
Conversation
There was a problem hiding this comment.
🤖 Automated Gemini Code Review
Summary
Adds the Harris-Priester atmospheric density model for drag calculations, implementing exponential density interpolation across altitude bands and accounting for diurnal atmospheric expansion via a bulge angle offset.
Architectural Changes
No change
New Features
- Added
HarrisPriestervariant to theAtmDensityenum. - Implemented Harris-Priester density evaluation in
Drag::eom, including diurnal bulge modification.
Improvements
No change
Bug Fixes
No change
Testing and validation
- Added a regression test
regression_harris_dragcomparing the Harris-Priester model propagation against an expected state to ensure no regressions.
Documentation
This PR does not primarily deal with documentation changes.
|
Visit the preview URL for this PR (updated for commit 285b217): https://nyx-rustdoc--pr583-feat-drag-harris-pri-flguhi2q.web.app (expires Wed, 05 Aug 2026 06:25:31 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: d8e2a55934352d850c15d11866c39eb2d2e029be |
There was a problem hiding this comment.
🤖 Automated Gemini Code Review
Summary
Added the Harris-Priester atmospheric density model to the AtmDensity enum, providing a simple mean solar activity model that accounts for diurnal atmospheric expansion. The model interpolates exponentially between altitude bands and applies a diurnal bulge modifier.
Architectural Changes
No change
New Features
- Added
HarrisPriestervariant to theAtmDensityenum. - Added
HP_TABLEcontaining standard Harris-Priester altitude profile nodes.
Improvements
No change
Bug Fixes
No change
Testing and validation
- Added a regression test
regression_harris_dragto ensure the Harris-Priester model propagates correctly and matches expected state values. - Added a comparison against the NRLMSISE-00 model in the test output.
Documentation
This PR does not primarily deal with documentation changes.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #583 +/- ##
==========================================
+ Coverage 79.61% 79.65% +0.03%
==========================================
Files 107 107
Lines 18861 18901 +40
==========================================
+ Hits 15016 15055 +39
- Misses 3845 3846 +1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Summary
Harris Priester drag model is a simple mean solar activity model (akin to F10.7 ~= 150 SFU). It performs a simple exponential density interpolation in between altitude bands. It accounts for diurnal atmospheric expansion with a bulge angle offset.
Verification tests show that NRLMSISE00 is ~100 km off the HP model for the same test case. In general, one should prefer MSISE.
Architectural Changes
No change
New Features
HarrisPriester enum variant for AtmDensity.
Improvements
No change
Bug Fixes
No change
Testing and validation
Documentation
This PR does not primarily deal with documentation changes.