UNDER CONSTRUCTION
First, a definition of precession angle. Let A and be B successive points of closest farthest distance (aphelia) from the origin O (centre of display). Angle AOB is the precession angle. The condition for a repeated orbit is that the precession angle divides evenly into an integral multiple of 360 degrees, i.e., n*360/(precession angle) = m, where n and m are integers. If this is true, then the total precession after m aphelia is n complete circles, hence the repetition. For example, if m = 5 and n=2, then two full circles are split up into 5 equal pieces, with the angle subtended by each piece equal to the precession angle. Rearranging gives (precession angle) = (n/m)*360, i.e., closure results when the precession angle is any fraction of 360 degrees.
The interface below allows experimentation with precession, and with closure of orbits. The interface calculates:
1) precession angle (in degrees), given launch distance and horizontal launch speed;
2) horizontal launch speed, given the precession angle and the launching speed.
In order to to do either calculation 1) or 2), all three fields *must* contain numbers. Calculation 1) ignores the number in the precession field, while calculation 2) ignores the number in the v field. While these calculations are proceeding, the animation slows noticeably because priority is given to the programme thread that does these calculations. If the message "falls in" appears in the precession field, than the launching speed is too low for the launching position, i.e., the particle will fall into the black hole. If the message "unbounded" appears in the precession field, then the launching speed is too high, i.e., the particle will escape to infinity.
Example: n = 1, m = 3. This results in a precession angle of 120 degrees. Set precession to 120, r = 200, and v to anything reasonable, like 0.3 (remember, v is ignored). Click on "calculate v". The programme will iterate until a reasonable accurarcy for the required v is achieved. On each iteration, a number is displayed in the v field that gives some idea of how the calculation is proceeding. The iterations will stop when this number becomes less than 1. To see that the orbit closes after the third aphelion is reached, set r = 200, v = number displayed (Ctrl-c works), angle = 0 (since the launch is horizontal) in the animation interface, and run the animation with the trail on.
Example: n = 3, m = 8. This results in a precession angle of 135 degrees. Repeat above steps, and see that the orbit close after the eighth aphelion is reached.
Example: try something large, like 2160.
Note: the allowed range of precessions for a given launching position has no maximum, but it does have a minimum value that is dependent on the launching position. Entering a value below this minimum results in the message "too small".
Experiment 1: Falling Into a Black Hole
Experiment 3: Investigation of Stable Circular Orbits
Experiment 4: Investigation of Unstable Circular Orbits
Experiment 5: Investigation of Spiral Orbits