Orbits playground
What you are looking at- Time
- 0
- Ω − κ/2, 8 kpc
- …km/s/kpc
- Ω, 8 kpc
- …km/s/kpc
- Pitch, 8 kpc
- …
- Ω − κ/2, 4 and 12 kpc
- …km/s/kpc
- Altitude
- … km
- Eccentricity
- …
- Speed
- … km/s
- zmax
- …kpc
- Lz
- …kpc km/s
- Energy E
- …km²/s²
- Energy error
- …
Loading the orbits (15 KB).
Drag to turn the view. A line joins a station to each satellite above its horizon.
The satellites and the stations
Molniya elements from Kidder and Vonder Haar (1990) and the NASA orbit catalogue; the Earth is a sphere turning once a sidereal day.
The six stars
Catalogue values from Gaia DR3 at epoch J2016.0 with their published uncertainties; reference orbit from a 10 Gyr galpy integration.
The potential
MWPotential2014 (Bovy 2015), each component scaled to the listed share of the radial force at R = 8 kpc.
A geostationary satellite sits over the equator, so above 81.3 degrees of latitude it never rises: at the pole there is no signal from it at all. The Molniya orbit is the answer to that, and this page is the demonstration.
What you are looking at
In Earth mode the view shows three Molniya satellites and one geostationary satellite around the turning Earth, to scale. A Molniya orbit has a semi-major axis of 26,562 km, an eccentricity of 0.74, an inclination of 63.4 degrees and its perigee at the southernmost point of the orbit, so each pass takes half a sidereal day and the satellite spends about two thirds of it high over the northern hemisphere.
The three orbital planes are 120 degrees apart and the satellites are timed so that one of them is always near apogee above the same longitude, here 37.6 degrees east (Moscow's). The geostationary satellite circles 35,786 km above the equator at longitude 0, in step with the ground.
The timeline fills in whenever a satellite is above a station's horizon. The test is the elevation angle, the angle between the line from the station to the satellite and the station's horizontal plane, sin ε = (r − s) · ŝ / |r − s|, positive when the satellite is above it.
Porto, in the northern hemisphere, always has at least one Molniya satellite above the horizon over the 24 hours shown. Santiago, in the southern, sees one for about 1 per cent of the time and the geostationary satellite all of it: the Molniya apogees hang high in the northern hemisphere, so the southern hemisphere is covered only briefly, and that share depends on Santiago's longitude relative to the apogees.
The polar station can be moved between 60 and 90 degrees north, along the geostationary satellite's own meridian, where that satellite stands highest for a given latitude. Above arccos(R_Earth / r_geo) = 81.3 degrees the line of sight to it grazes the Earth and it never rises, so its share of the timeline falls to zero while the Molniya satellites stay at 100 per cent.
That is what the orbit is for: an orbit whose apogee hangs over the northern hemisphere covers the latitudes no satellite above the equator can reach, which is the use Kidder and Vonder Haar (1990) study for middle and high latitudes.
The integrator menu switches between three ways of stepping the same equations. The leapfrog kicks the velocity by half a step, drifts the position by a full step and kicks again, v(n+1/2) = v(n) + (h/2) a(x(n)), x(n+1) = x(n) + h v(n+1/2), v(n+1) = v(n+1/2) + (h/2) a(x(n+1)) which is symplectic: its energy error oscillates over each orbit and does not grow.
The fourth-order Runge-Kutta scheme compares one step with two half steps and shrinks or grows the step to keep the difference below a tolerance of one part in 10¹⁰; it is far more accurate per step, so its error starts lower, but it drifts in one direction over long runs.
The first-order scheme advances the position to second order and the velocity by an explicit Euler step, x(n+1) = x(n) + h v(n) + (h²/2) a(x(n)), v(n+1) = v(n) + h a(x(n)) and its energy climbs at every perigee pass, so a Molniya orbit widens within a day. The energy panel plots |E − E₀| / |E₀| for every body on a log scale, the followed body drawn thicker, with E = v²/2 − GM/r around the Earth and E = v²/2 + Φ(R, z) in the Galaxy.
In Galaxy mode the same code integrates six stars in MWPotential2014 (Bovy 2015): a power-law bulge with an exponential cut-off, a Miyamoto and Nagai disc, Φ_d = −GM_d / sqrt(R² + (a + sqrt(z² + b²))²), and a Navarro, Frenk and White halo, scaled so that the circular speed at the Sun's radius of 8 kpc is 220 km/s. Each star starts from its Gaia DR3 position, parallax, proper motion and radial velocity, converted to Galactocentric coordinates with astropy.
The Sun is integrated like the others, in the same potential and frame, from its position and velocity (Schönrich, Binney and Dehnen 2010; Bennett and Bovy 2019), so no point of the view is special. The main view looks down from the north Galactic pole, where the disc turns clockwise and the dashed ring marks 8 kpc, the radius at which the Sun starts; the side panel plots the distance from the axis against the height above the plane, the plane in which the orbit is a filled band rather than a line.
The Spiral arms mode shows 5,000 test stars on slightly eccentric orbits in the same potential, with no self-gravity. Each orbit is close to an oval, and when the ovals at larger radii are turned a little further than those inside, the stars crowd along a two-armed spiral (Kalnajs 1973; Binney and Tremaine 2008, section 6.2).
The arms are kinematic density waves in Lindblad's sense. Stars move through them, so an arm is a place where orbits crowd and not a fixed set of stars. Aligning the ovals this way is an organised phase relation that needs a cause, such as a perturber, a bar or a self-gravitating wave.
Because Ω − κ/2 changes with radius, the pattern winds up slowly, at about 30 per cent of the material rate for a flat rotation curve (Hamilton, Modak and Tremaine 2022; Dobbs and Baba 2014). Real discs need self-gravity to maintain or regenerate spirals (Lin and Shu 1964; Sellwood and Carlberg 2014). The stars and their set-up are illustrative, not catalogue data.
The readouts give four numbers for the followed star. The eccentricity, e = (R_apo − R_peri) / (R_apo + R_peri), comes from the smallest and largest distances from the Galactic centre reached so far, zmax is the largest height reached so far, E is the energy and Lz = R v_φ is the vertical component of the angular momentum, positive for stars that turn with the disc. Both settle once the star has completed a radial and a vertical oscillation, and the small print beneath each gives the value from a 10 Gyr galpy integration.
In my research these are the quantities that separate the thin disc, on near-circular orbits that stay within a few hundred parsecs of the plane, from the thick disc, on hotter orbits reaching a kiloparsec or more, and from the halo, on eccentric orbits with slow or reversed rotation; the Starfold demo uses the same ones for 9,242 stars. Kapteyn's star and HD 140283 have negative Lz: they orbit against the disc's rotation.
The test particle starts on the Sun's side of the Galaxy at the chosen distance from the axis and height, with the chosen radial (outward positive), azimuthal (positive with the disc) and vertical velocities; the defaults put it on the circular orbit at the Sun's radius.
Run advances the clock at the chosen speed, Step takes one integration step and Reset returns every body to its starting point. The adaptive RK4 treats the step as its ceiling and reports the step it is using. The leapfrog also conserves Lz to rounding error in this axisymmetric model, because each kick lies in the plane through the axis.
Where it came from
This page is rebuilt from project 3 of the Computational Astronomy course at the University of Porto (2018/19): an N-body integration of a Molniya constellation and a geostationary satellite, with signal reception at Porto, Moscow and a station at 80 degrees north.
Three integrators run the same equations here, a symplectic leapfrog, an adaptive fourth-order Runge-Kutta and a first-order Euler step, so the energy panel shows what each one costs; the Earth turns under the satellites and visibility follows from the elevation angle at each station; and the Galaxy mode sends the same integrators after real stars through a model of the Milky Way.
Data and credits
The Molniya eccentricity of 0.74 and inclination of 63.4 degrees are the values of Kidder and Vonder Haar (1990, J. Atmos. Oceanic Technol. 7, 517); NASA's Catalog of Earth Satellite Orbits gives 63.4 degrees, a 12 hour period and 0.722 for the same orbit type, and real Molniya satellites fell between the two.
The period is half a sidereal day, and the semi-major axis follows from Kepler's third law with GM = 398,600.4418 km³/s² (IERS Conventions 2010, Table 1.1), which with the geostationary period gives a radius of 42,164 km, the figure NASA quotes, and an altitude of 35,786 km, the figure on ESA's Types of orbits page. The Earth's radius of 6,378.137 km and its rotation come from the NSSDC Earth fact sheet and the IERS conventions.
The Milky Way model is MWPotential2014 of Bovy (2015, ApJS 216, 29): a bulge with density falling as r−1.8 and cut off at 1.9 kpc, a Miyamoto and Nagai (1975) disc with scale length 3 kpc and scale height 0.28 kpc, and a Navarro, Frenk and White (1997) halo with scale radius 16 kpc, contributing 5, 60 and 35 per cent of the radial force at 8 kpc, where the circular speed is 220 km/s.
The page's potential was checked against galpy's at ten points to one part in 10¹². The Sun sits 20.8 pc above the plane (Bennett and Bovy 2019) and moves at (11.10, 12.24, 7.25) km/s relative to the local circular orbit (Schönrich, Binney and Dehnen 2010).
The Spiral arms mode draws on Kalnajs (1973, PASA 2, 174), Binney and Tremaine (2008, Galactic Dynamics, section 6.2), Lin and Shu (1964, ApJ 140, 646), Sellwood and Carlberg (2014, ApJ 785, 137), Dobbs and Baba (2014, PASA 31, e035) and Hamilton, Modak and Tremaine (2022, arXiv:2206.03495).
The six stars are Gaia DR3 sources with a radial velocity, chosen to span the disc and the halo: 61 Virginis, Proxima Centauri, Barnard's star, Lalande 21185, Kapteyn's star and HD 140283. Arcturus and Alpha Centauri, the obvious bright examples, are brighter than the Gaia DR3 limit and have no entry, and tau Ceti and epsilon Eridani have no DR3 radial velocity.
Names were resolved through SIMBAD. This page uses data from the European Space Agency mission Gaia (Gaia Collaboration, Vallenari et al. 2023, A&A 674, A1), processed by the Gaia Data Processing and Analysis Consortium (DPAC); the astrometry is described by Lindegren et al. (2021, A&A 649, A2) and the radial velocities by Katz et al. (2023, A&A 674, A5). Gaia data are © ESA/Gaia/DPAC and released under CC BY-SA 3.0 IGO, and the derived file below is shared under the same licence.
Download the data (15 KB) and its provenance, which records the queries, their dates, the candidates set aside and why, and the galpy cross-checks. The integration runs in your browser, and nothing you do here is sent anywhere.