I've been working on a system with a habitable moon (Moon A) for a story, and I'm now trying to populate the other moons around the parent planet. I'm considering placing one (Moon B) in a co-orbit, horseshoe configuration, with my habitable moon.

While I understand the concept of these orbits, the actual calculations of the orbital times is beyond my mathematical capabilities.

I understand that on a horseshoe orbit there is an inside section and outside section where Moon B is catching up to, or falling behind, Moon A, respectively.

I understand that if the 'inside ring' is nearer the parent body (the 'planet' in the case of co-orbital moons) than the L1 Lagrange point of Moon A, then Moon B will escape the horseshoe orbit and just start orbiting the planet directly. And, similarly, if the 'outside' ring is outside of L2 Lagrange point of Moon A, Moon B will escape and orbit the planet directly. And if either ring is too near the actual orbit of Moon A, it will be a tadpole orbit(never passing the L3 Lagrange point of Moon A before returning to Moon A from the same direction it left it), instead of a full horseshoe.

What I can't figure out (again, math skills limitation) is How long it would take (longest and shortest possible times) for Moon B to make one complete cycle of the horseshoe? And so I can't decide if I should use this type of orbit or not. For example, 3753 Cruithne takes about 770 years to complete it's horseshoe cycle relative to Earth, far too long to be useful for my story. But I don't know how to calculate ho long my co-orbit scenario would take. I'm confident it could be made significantly shorter than 770 years, but exactly how short it would be is still a key factor in the decision.

I would like to know how often the two bodies would approach each other at the two extremes of possibilities, the longest possible time between complete cycles, and the shortest possible time between cycles.

For this question: Planet mass is 477 Earth masses, Moon A's mass is 0.11 Earth masses, Moon B's mass is 0.01 Earth masses. Moon A's semi major axis is 4 million kilometers. (please let me know if any other variables or details are needed)

To re-word the original question: By adjusting the semi major axes of the inner and outer rings of Moon B's horseshoe orbit, either closer to or farther from the semi major axis of Moon A, what are the longest cycle time, and shortest cycle time possible for a horseshoe orbit in this system?

Here is a visual representation of the types of orbit changes I'm referring to. The contour lines inside the highlighted one (nearer L3 L4 and L5) are what I'm referring to when I mentioned adjusting the horseshoe orbit Axes nearer to the semi major axis of Moon A. And the contour lines outside of the highlighted one are what I'm referring to when I mention moving those axes farther from the semi major axis of Moon A. When I refer to a complete 'cycle', I mean the time it takes for Moon B to go from Point A on that image, through Points B, C, D, and E and back to A.

  • $\begingroup$ As I understand it, such orbits tend to only exhibit a stable patern for a comparativley short time, in the order of tens of thousands of years, unless you have a peculiarly isolated and quiet solar system this may be difficult to justify realistically. I don't know the maths either. Maybe worth tryiing to recruit from astronomy.se maybe even maths.se. $\endgroup$ Jan 19, 2019 at 2:10
  • $\begingroup$ @FaySuggers Yes, I've noticed the pattern of instability comments in my research as well, but tens of thousands of years is more than enough for my story, and while I'm not willing to handwave the actual physics, I'm more than willing to handwave the probability of something occurring naturally. As long as the orbit cycle time makes sense within the physics and is in a useful range for the story, I'm willing to accept that it would be an absurdly improbable coincidence that it happened to happen at the right time for the story timeline, and do it anyway. $\endgroup$
    – Harthag
    Jan 21, 2019 at 13:59
  • $\begingroup$ Fair enough, sounds good to me. Do let us know when you publish. Time to ask about a three body problem at physics.se perhaps then. $\endgroup$ Jan 21, 2019 at 15:15
  • $\begingroup$ "Planet mass is 477 Earth masses." Just to be sure, are you picturing a gas giant? (I assume you didn't choose 477 randomly, since that's right around 50% more massive than Jupiter.) $\endgroup$
    – Dan
    Jan 27, 2019 at 22:01
  • 1
    $\begingroup$ @JBH How about now? $\endgroup$
    – Harthag
    Feb 18, 2019 at 15:31

1 Answer 1


The direct calculation of the orbital times is beyond just about everybody's mathematical capabilities. This is an example of the infamous three-body problem, for which there is no analytic solution in the general case (and it's not one of the few special cases that do have analytic solutions, either).

In order to get accurate results, therefore, you will have to resort to numeric simulation, and just sweep over a range of orbital parameters to simulate until you find the inner and outer edges where the system no longer displays horseshoe behavior.

To get a very rough approximation, though, we can just compare the keplerian periods of each orbit. Orbital period $T$ is proportional to $R^\frac{3}{2}$. The period of a horseshoe cycle will be the time it take the small world to lap the large one on the inner track, and vice-versa when the small world is on the outer track. The lap time $T_L$ is given by $T_L = \frac{T_O T_I}{T_O - T_I}$, where $T_O$ and $T_I$ are the orbital periods of the outer and inner moons, respectively. We can also make the simplifying assumptions that the large world will have its orbit changed only insignificantly, and the small world's orbit will differ from the larger world's orbit by the same amount in either direction.

Putting those all together, we first get the cycle time in terms of individual orbital periods to be $C = \frac{T_M T_i}{T_M - T_i} + \frac{T_M T_o}{T_o - T_M}$, where $T_M$ is the period of the larger moon, and $T_i$ and $T_o$ are the inner and outer orbital periods of the smaller moon, respectively. If we then sub in $R^\frac{3}{2}$ for $T$, using $r$ for the difference in orbital radius between the large and small moons, we get

$C = \frac{(R (R - r))^\frac{3}{2}}{R^\frac{3}{2} - (R - r)^\frac{3}{2}} + \frac{(R (R + r))^\frac{3}{2}}{(R + r)^\frac{3}{2} - R^\frac{3}{2}}$

This is obviously not a good approximation for the longest cycle time, because it tends towards infinity where $r$ approaches zero (and you end up with a fixed-separation Trojan orbit), by which time you will long have left the horseshoe regime behind. It also won't tell you how much separation you can have before the worlds are too far apart to exhibit co-orbital behavior anymore, but if you can establish that independently, it should be reasonably accurate (within an order of magnitude, anyway) for the fastest possible cycle times.

  • $\begingroup$ I'm trying to check that I'm using your information correctly. I plugged in an orbital radius of 4 million km for the main moon, and plus or minus 150000 km for the secondary moon. 4 million km gave me about 42 day orbit time on the main moon, minus 150k km gave me about 40 days for the smaller moon on the inside track, and plus 150k km gave me about 44.5 days for the smaller moon on the outside track. Those gave me an inside track lap time of about 800 days, and an outside track lap time of about 840 days (about 4.5 years total). Does that sound like I'm properly applying your answer? $\endgroup$
    – Harthag
    Feb 27, 2019 at 16:32
  • $\begingroup$ @Dalila Yeah, those sound like the right ballpark. $\endgroup$ Feb 27, 2019 at 18:16
  • $\begingroup$ Yeah, there was a lot of rounding involved between what I calculated specifically, and what I posted in that comment, but as long as it looks like I got it reasonably close to what your calculations are intending, I think we're good to go. Thanks for that confirmation. $\endgroup$
    – Harthag
    Feb 27, 2019 at 18:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .