~starkingdoms/starkingdoms

ref: 23bf3e09b7adf56c13b54ffcd16549553f008ac3 starkingdoms/server/src/orbit/kepler.rs -rw-r--r-- 489 bytes
23bf3e09 — c0repwn3r resolve asset merge conflict 2 years ago
                                                                                
1
2
3
4
5
6
7
/// Kepler's equation: M = E - e * sin(E)
/// M is the Mean Anomaly (angle to where body would be if its orbit was actually circular)
/// E is the Eccentric Anomaly (angle to where the body is on the ellipse)
/// e is the eccentricity of the orbit (0 = perfect circle, and up to 1 is increasingly elliptical)
pub fn kepler_equation(eccentric_anomaly: f64, mean_anomaly: f64, eccentricity: f64) -> f64 {
    eccentricity.mul_add(eccentric_anomaly.sin(), mean_anomaly - eccentric_anomaly)
}