Proposal: Encounter-based Mascon Perturbation Module for LLO Analysis: Scope-check before opening an issue #589
Replies: 5 comments 5 replies
|
Hi Ambrose, Thank you for reaching out. I read parts of your preprint: your approach is frankly remarkable. Your approach is novel compared to the methods we used on the missions I've worked on. Nyx focuses entirely on providing the tools for engineers and researchers to solve hard astrodynamic problems without worrying about the intricacies of force model implementations. While I've only recently revived the Python bindings, I think your work would fit best as a Python example of the kinds of hard problems Nyx can help solve. It would also show whether the Python bindings for mission design are currently sufficient to solve these: not everything available in Rust is currently exported to Python, but I'm working on it. To highlight your work for people browsing the repo, you might want to create a new top-level folder called I'd be glad to support your work where I can. I'm currently on a rush to export a lot of functionality in Nyx to Python, but I can make some time for direct support on Github. Thanks again for considering Nyx, I look forward to seeing how it plays out. |
|
Hi Chris, Quick update: Nyx is set up locally, the Python bindings build cleanly, and I've completed a mapping pass across all 11 notebooks of the analysis pipeline onto Nyx's Python API. The good news is that essentially everything I need is already exposed; the port will be mostly mechanical translation rather than new capability. Thank you for reviving the bindings when you did; the timing worked out well. Two things I couldn't resolve from the docstrings alone. Both are precise enough that they should each take one or two lines to answer: Q1. Frame convention for Q2. Obtaining a Everything else I can either discover from Thanks again for the steer on the examples-folder approach. It's shaping up well. Best, |
|
Hi Chris, Quick follow-up: I was able to resolve both questions empirically before starting the port. Q2: Q1: Verified via direct comparison at a known point that Also learned that Nyx doesn't expose DOP853. I'll use Starting the port itself now. Will surface any further questions in a batched follow-up rather than one-off pings. Thanks, |
|
Hi Chris, No apology needed. Thank you for the thorough answers. Both align with what I found empirically before starting the port, and your notes clarified two things I'd been unsure about:
I've opened a draft PR (#598) with the full example. No rush on review, I know you're deep in other work, and I'll be responsive to whatever you flag whenever you get to it. Best, |
|
Hi Chris, Just leaving a reminder here concerning the PR (#598). I surely understand your quite busy schedule, so no rushes certainly. Best, |
Uh oh!
There was an error while loading. Please reload this page.
Hi Christopher,
I've read CONTRIBUTING.md and the quality guidelines, and I want to scope-check with you here before opening a formal issue and assigning myself. Wanted to make sure the capability is one Nyx would want before committing to the process.
The work: I've developed and validated an encounter-based framework that decomposes lunar mascon perturbations on Low Lunar Orbits into discrete gravitational encounters, maps per-encounter eccentricity-vector increments via Gauss variation of parameters, and quantifies natural cancellation between successive encounters along the trajectory. It's built on GRAIL GRGM900C and validated against full spherical-harmonic truth propagation. The underlying application is mascon surfing, a station-keeping strategy that acts only on non-cancelling encounters rather than treating the mascon field as a diffuse background.
Preprint: https://doi.org/10.5281/zenodo.21740514
Reference implementation (Jupyter notebooks, CC0): https://github.com/KayAerospace/Per-Encounter-Quantification-of-Mascon-Effects-on-LLO-Altitude-Drift
Why Nyx?
Nyx already handles high-fidelity gravity via spherical harmonics; the encounter-decomposition layer sits on top of that, using existing propagation and gravity infrastructure rather than replacing it. Given Nyx's flight heritage on Blue Ghost and its focus on lunar and cislunar mission design, I think this capability lands in-scope, though you're the right person to judge.
What I'd like your view on before I open the issue.
Happy to iterate on scope, and grateful for any steer, including if the answer is "not the right fit for Nyx." Not looking to force a contribution that doesn't belong here.
Best,
Ambrose Osadugba
GitHub: @KayAerospace
All reactions