Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mean motion based "propagation" for N objects in parallel #189

Closed
ChristopherRabotin opened this issue Jun 23, 2023 · 1 comment
Closed
Assignees
Labels
i-python Relative to the Python interface i-rust Relative to the Rust interface P-high

Comments

@ChristopherRabotin
Copy link
Member

High level description

Given just the mean motion, it's possible to compute the the future state vector of an orbit.

Requirements

Given an Orbit structure, compute its future orbit given only two body dynamics of the current central body.

Test plans

TBD

Design

The equation is:

M = E - e*sin(E)

where M is the mean anomaly, E is the eccentric anomaly, and e is the eccentricity. Once you've solved for E, you can calculate the true anomaly (ν) using the following equation:

ν = 2*atan(sqrt((1+e)/(1-e))*tan(E/2))

Then use the from_keplerian initializer to return a new orbit.

This should also include a quick way to create a simple dummy frame with a demo GM value.

This should be available from Python and allow for quick computation of very many orbits at once. This should likely use rayon in Rust to spam the CPUs.

@ChristopherRabotin
Copy link
Member Author

Done in #191.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
i-python Relative to the Python interface i-rust Relative to the Rust interface P-high
Projects
None yet
Development

No branches or pull requests

1 participant