Calculate a local migration-time map
Fix a four-Earth-mass circular planet at one AU, height ratio 0.055 and density scale 0.0001. The public script evaluates 25 temperature slopes from 0.3 to 1.5 and 31 logarithmic viscosities from one billionth to one ten-thousandth in model units. Each of the 775 cells stores both torque contributions, signed drift and local migration time.
The frozen grid has 678 inward and 97 outward cells. Dots flag 222 cells whose net sign can reverse under a chosen twenty-percent perturbation envelope on the individual torque contributions. This is a deterministic sensitivity test, not a confidence interval or a calibrated error distribution. The physical law and units are the same as the preceding chapters.
Near cancellation the local time grows very large and diverges at an exact torque zero. It is radius divided by the current drift rate, not an integrated arrival time. Changing radius, disk evolution or a dynamical torque can change the subsequent route. The static zero is a useful place to test additional physics.
python3 migration-timescale-map.py --output my-map.json --figure my-map.svg
Reading: Paardekooper · Cresswell & Nelson
Know exactly which measurements you have
The input contains all forty-four quarterly transit-time shifts in Mills et al., arXiv:1612.07376v1, Extended Data Table 1: eleven bins for each of planets b, c, d and e. These are fitted timing measurements from real Kepler photometry, not synthetic transit times, individual transits or posterior draws.
The frozen author manuscript is 4,229,509 bytes with SHA-256 ee22071732db64c776a333b99e3e487c7e4ec3ca246cb52c1a1ed5c00f2b8115. The table is PDF page thirty. We redistribute factual numerical measurements with citation and our own scripts, not the paper’s text, figures or code. The table says BJD minus 2454900 without explicitly naming a dynamical time scale; no UTC or TDB conversion is invented.
Reading: Mills et al. · Izidoro et al.
Keep the table’s linear ephemerides
Each measured shift is relative to a particular reference ephemeris. Using the fitted dynamical periods from another table would change the diagnostic. The input metadata therefore stores the exact four reference periods and zero-transit epochs from Extended Data Table 1.
Quarter bins are matched by chronological index, but each planet’s mean observing time differs. Choose the arithmetic mean of those four actual times for a common diagnostic time. Within each bin hold the measured timing shift constant; then repeat the calculation at the earliest and latest planet mean time to measure alignment sensitivity.
| Planet | Reference period (days) | Zero transit (published BJD offset) |
|---|---|---|
| b | 7.3840154 | 70.49489 |
| c | 9.8487130 | 71.37624 |
| d | 14.7883997 | 109.76775 |
| e | 19.7213435 | 68.10686 |
Reading: Mills et al. · REBOUND 5.2.2 and IAS15
Convert a late transit into orbital phase
For an edge-on nearly circular orbit, a transit is assigned a quarter turn of mean longitude under the paper’s convention. If a transit occurs late, its phase at the reference time is behind the unshifted prediction. That fixes the minus sign of the timing shift.
Use the near-circular mean-longitude approximation to form two adjacent-triplet Laplace angles and their four-body combination. The third is algebraically dependent on the first two; it is not a third independent detection.
Reading: Mills et al. · Izidoro et al.
Run the public files in an empty folder
Download the listed scripts, CSV, source metadata and two synthetic reference records. The basic calculation uses Python’s standard library only and does not import this website, a private repository or a Lab Engine. It prints the torque grid, measured-angle ranges and an independent short RK4 check of a synthetic replay.
The checksum manifest verifies the frozen scientific inputs and scripts. Hashes certify exact bytes; numerical outputs are compared with tolerances because Python versions can differ in their last floating-point digits. The script does not claim to regenerate the entire long IAS15 history.
python3 reproduce-migration.py --directory . --output my-results.json
python3 analyze-kepler223.py --directory . --output my-angles.json
Reading: Mills et al. · REBOUND 5.2.2 and IAS15
Read the actual output and its sensitivity
The reconstructed angles stay within the ranges below over the observed eleven bins. Changing the common time from the earliest to latest planet mean time changes the diagnostic by less than one degree in these data. This small alignment sensitivity does not remove the near-circular approximation or the finite observing window.
Each published timing interval is asymmetric and given as a signed offset from its best value at stated changes in chi-square. The script propagates a rectangle made from the four individual intervals by taking extrema of the linear combination. That envelope is neither a joint confidence interval nor a credible interval. It assumes no fabricated independence and supplies no posterior probability.
| Combination | Observed-window range (degrees) | Largest quarter-time sensitivity (degrees) |
|---|---|---|
| Inner triplet | 172.440–190.844 | 0.216 |
| Outer triplet | 47.075–75.434 | 0.786 |
| Four-body combination | 294.286–316.566 | 0.924 |
Reading: Mills et al. · Izidoro et al.
Separate two reproductions
The timing calculation reproduces a limited diagnostic from real measured data. Separately, the synthetic torque grid verifies the Lab’s local prescription, and an independently authored fourth-order Runge–Kutta integration checks an eight-orbit clip against IAS15. With maximum code-time steps 0.04, 0.02 and 0.01, the largest Cartesian differences shrink from 0.00001096 to 0.0000000208 in the adopted length or velocity units.
For a full synthetic rerun, download the optional generator, orbit and disk modules, packer and C force source. Install pinned REBOUND 5.2.2 in a separate environment; the generator also works with a Python force callback. Compiling the optional force source speeds a long rerun. The website distributes no compiled executable. Record actual integrator, parameters, duration, phase cadence and stop reason when making a new comparison.
Reading: REBOUND 5.2.2 and IAS15 · Paardekooper
Say what this has not established
A short bounded angle arc does not by itself prove long-term resonant stability. The original paper’s interpretation also uses interacting-orbit fits and stability calculations. Eccentricity, projection, priors and the covariance of the fitted parameters matter; the quarterly table cannot recreate all of them.
Likewise, a synthetic two-planet disk model does not infer the birth locations or disk parameters of this real four-planet chain. Testing that history requires a forward model tied to the observations and an explicit comparison of competing histories.
Reading: Mills et al. · Izidoro et al.