Skip to content

Add harris priester drag model - #583

Merged
ChristopherRabotin merged 3 commits into
masterfrom
feat/drag-harris-priester
Jul 29, 2026
Merged

Add harris priester drag model#583
ChristopherRabotin merged 3 commits into
masterfrom
feat/drag-harris-priester

Conversation

@ChristopherRabotin

Copy link
Copy Markdown
Member

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

  • Only tested the difference between HP and NRLMSISE00, then build a regression test to ensure no regression on that HP model.

Documentation

This PR does not primarily deal with documentation changes.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🤖 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 HarrisPriester variant to the AtmDensity enum.
  • 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_drag comparing the Harris-Priester model propagation against an expected state to ensure no regressions.

Documentation

This PR does not primarily deal with documentation changes.

Comment thread nyx-core/src/dynamics/drag/mod.rs
Comment thread nyx-core/src/dynamics/drag/mod.rs
Comment thread nyx-core/src/dynamics/drag/mod.rs Outdated
@github-actions

github-actions Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

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

Base automatically changed from feat/nrlmsise-00 to master July 29, 2026 06:19

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🤖 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 HarrisPriester variant to the AtmDensity enum.
  • Added HP_TABLE containing standard Harris-Priester altitude profile nodes.

Improvements

No change

Bug Fixes

No change

Testing and validation

  • Added a regression test regression_harris_drag to 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.

Comment thread nyx-core/src/dynamics/drag/mod.rs
Comment thread nyx-core/src/dynamics/drag/mod.rs
Comment thread nyx-core/src/dynamics/drag/mod.rs
@codecov

codecov Bot commented Jul 29, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.67442% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 79.65%. Comparing base (ac81937) to head (285b217).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
nyx-core/src/dynamics/drag/mod.rs 97.67% 1 Missing ⚠️
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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ChristopherRabotin
ChristopherRabotin merged commit 613c343 into master Jul 29, 2026
14 of 15 checks passed
@ChristopherRabotin
ChristopherRabotin deleted the feat/drag-harris-priester branch July 29, 2026 06:46
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