The difference-imaging window of Rubin Data Preview 2 runs from MJD 60865 to 60878 — fourteen nights, 6,960 visits, 390 million difference-image detections. This page is the standing record of what we have established about it while building a blind linking search, including the figures that turned out to be wrong.
The merge is in, and it is a floor rather than an estimate. Merging 625 of the 660 search tiles recovers 94,804 of the 97,145 discoverable objects, 97.6%. The denominator comes from the truth table rather than from the tiles, so it does not move as tiles are added: the 35 tiles still outstanding can only raise this figure, never lower it. What they can move is purity, discussed below.
Asked how complete the search is, there are two honest answers an order of magnitude apart, and the difference is entirely in the denominator.
| Stage | Objects | Share of those present |
|---|---|---|
| Catalogued objects appearing in detections that survive the cuts | 245,598 | |
| … with a detection on three or more separate nights | 200,195 | 81.5% |
| … with two detections on each of three or more nights | 125,228 | 51.0% |
| … with a 5–90 minute pair on each of three or more nights — discoverable | 97,145 | 39.6% |
The linking search is scored against the last row. Against those 97,145 discoverable objects it recovers 97.6%. But only 39.6% of the cataloged objects that DP2 detected at all ever become discoverable, so the end-to-end figure — objects present, orbits produced — is 38.6%. Both numbers are real. The linker finds all but a fortieth of what it is handed; it is handed fewer than half of what was seen. Nothing that follows about missing detections is a shortcoming of the linker, and everything that follows is where the other 60% went.
The large step is the third row: 37.4% of objects detected on three separate nights never got two detections on three nights. A tracklet needs a pair, so a single missed detection costs the whole night.
This is the measurement that reframed everything else, and it needs no orbit determination to make. An asteroid's apparent path across two weeks is smooth, so a quadratic in time fitted to an object's own cataloged positions reproduces its whole track. Evaluating that curve at the epoch of any visit says where the object was while that exposure was open, and comparing it to where the telescope was pointing says whether it fell inside the field.
That is the only thing the prediction is used for. Once a visit is known to have contained the object, the test becomes a lookup rather than a search: does the catalog record a detection of this object in this visit, or does it not?
A quadratic is not a lazy choice. Dropping a whole night from the fit and predicting it back — which is what a miss asks of the curve, since a miss has no detection of its own to pass through — gives a median error of 11 arcseconds against the 1.6° radius the in-field decision turns on. A linear fit gives 308 arcseconds and is useless; a cubic fits the existing points better and predicts a held-out night far worse, 1,614 arcseconds against 124 at the 90th percentile, because the extra freedom goes into wiggles that diverge across a gap. More to the point, recovery is the same for the objects the curve fits best as for the ones it fits worst — 69.2% for those held to within 5 arcseconds — so the missing detections are not an artifact of the interpolation. Across 48,128 object–visit pairs where the object sat inside the field:
| Outcome | Share of pairs |
|---|---|
| Recorded, and survived the quality cuts | 66.9% |
| Recorded, then discarded by the cuts | 1.7% |
| Never recorded at all | 31.3% |
Our own quality cuts — signal-to-noise, the real-bogus reliability score, and eight pixel flags — account for only 1.7 points of the loss. The remaining 31.3% never entered the catalog.
Four explanations were tested and none survives:
| Candidate | Test | Verdict |
|---|---|---|
| Chip gaps, or the field edge | Shrink the field radius and re-measure | Flat: 73.3% at 0.6° against 72.8% at 1.6° |
| The object was too faint | Split on the object's own median SNR | Worth about 8 points, not 30 |
| Detected, but not associated | Distance to the nearest raw detection | Only 1.1% of misses have anything within 10″ |
| The visit was never processed | Visits with no detections at all | 267 of 6,960, about 4% |
The association test is the informative one. On visits that did produce a detection, the nearest raw detection to the predicted position is a median of 1.25 arcseconds away, which both validates the prediction and shows what a real association looks like. On the misses, the overwhelming majority have nothing within ten arcseconds. The detection was not mislabeled. It does not exist.
The two effects compound, and the compounding is visible in the cadence census: the same objects counted by what a 1.75° field should have delivered, against what the catalog holds.
| Measure | From geometry | Actually delivered |
|---|---|---|
| Mean nights carrying a visit pair | 4.32 | 2.77 |
| Reach three such nights | 91.4% | 57.8% |
| Sit at exactly three | 16.3% | 35.4% |
Geometry offers a mean of 4.32 nights with a pair and the data delivers 2.77. The share of objects sitting at exactly three nights more than doubles, from 16.3% to 35.4%, and those objects have no margin at all: every one of the three nights must produce a tracklet. They account for 61% of everything the linker misses.
One part of this is still unexplained. At |b| above 45° there is essentially no crowding, and recovery is still only 80.2%. Chip gaps, faintness and mislabeling are all ruled out above, so something accounts for a twenty-point floor that we have not yet identified. The leading suspect is detector-level processing gaps, which would be invisible to the field-radius test because missing detectors are scattered across the focal plane rather than concentrated at its edge.
| Coverage | Area, sq deg |
|---|---|
| At least one visit | 3,797 |
| Two or more | 3,536 |
| Five or more | 3,238 |
| Ten or more | 2,882 |
| Twenty or more | 1,371 |
| Forty or more | 121 |
| Sum of visit areas, counting overlap | 66,963 |
| Inside at least one search tile | 4,780 |
| Covered sky no tile reaches | 180 |
Of the 3,797 sq deg the survey covered, our lattice of 660 tiles reaches 4,780 sq deg and misses 180 — 4.7% of the covered sky, dropped because those tiles hold too few detections to be worth running. Those objects still count against us.
Every surviving cluster gets a two-body orbit fitted to its detections. From the 447 tiles finished when this was sampled:
| Measure | Value |
|---|---|
| Objects with a fitted orbit | 105,837 |
| Median observed arc | 8.06 days |
| Median astrometric residual | 0.051″ |
| Semi-major axis in the main belt | 95.6% |
| Fits returning an unbound orbit | 3.1% |
Nothing in the pipeline knows anything about asteroid dynamics. Hypotheses propose heliocentric distances, clustering groups whatever agrees, and the catalog labels are opened only to score the result. That blind procedure producing orbits which land in the main belt, with main-belt eccentricities, is strong independent evidence the linkages are real — false linkages do not do that.
The unbound fraction is the most useful number in that table. A two-body fit that comes back unbound on a two-week arc cannot be a real object, so its rate estimates contamination. It is the only purity measure here that would still work on real sky, where there is no truth table to score against.
The search began with a grid of 7,868 heliocentric distances from 1.5 to 5.5 AU. It now uses the grid Rubin runs in production: 324 hypotheses from 1.5 to 9.8 AU, about fifty times coarser in distance and reaching nearly twice as far. Both were run over the same detections, so they can be compared directly.
| Measure | 7,868 hypotheses, to 5.5 AU | 324 hypotheses, to 9.8 AU |
|---|---|---|
| Completeness | 92.1% | 97.6% |
| Purity | 84.7% | 82.7% |
| Objects linked | 98,174 | 105,837 |
| Fits returning an unbound orbit | 2.4% | 3.3% |
| Compute over the timed tiles | 203 CPU-hours | 118 CPU-hours |
The coarse grid is the better search on both counts that matter here, and the reason is range rather than resolution. Nothing beyond 5.5 AU was reachable before, so the Hildas, Cybeles and Trojans were not merely missed, they were outside the hypothesis set: 7.7% of the linkages the new grid makes sit past that old ceiling. Sampling distance fifty times more finely bought almost nothing, because the error in an assumed distance is common to every tracklet of the same object and largely cancels when they are clustered.
The two points of purity are a real cost, not a rounding error. A coarse grid casts a wider net per hypothesis, so nearby objects are more often swept into one cluster: on a dense tile the coarse grid produces fewer clusters than the fine one but its largest are twice the size. That is also why the tiles on the ecliptic are the slow ones, since the work of sorting a cluster out grows faster than the cluster does.
| Ecliptic latitude, degrees | Median detections per tile | Median runtime | Share of all compute |
|---|---|---|---|
| 0–5 | 50,495 | 630 s | 69.4% |
| 5–10 | 32,758 | 130 s | 25.8% |
| 10–90 | 8,932 | 7 s | 4.8% |
Ecliptic latitude predicts tile runtime better than galactic latitude does. The 38% of tiles within 5° of the ecliptic consume 69% of the compute, which is not waste — it is the search spending its time where the asteroids are. Away from the ecliptic a tile is nearly free: beyond 10° the median one finishes in seven seconds, and that quarter of the sky costs under 5% of the total.
553 timed tiles come to 118 CPU-hours, but that is not the price of the footprint, because the tiles still outstanding are precisely the expensive ones. The distribution has a very long tail — the five slowest finished tiles took 523, 481, 295, 225 and 222 minutes, against a median of about two minutes — so a handful of fields on the ecliptic dominate the bill, and the densest of them are still running.
This is where DP2 runs out. Counting every cataloged object by apparent rate:
| Rate, arcsec/hr | Objects | Of those, discoverable |
|---|---|---|
| 30–60 | 61,579 | 29,624 |
| 60–90 | 824 | 236 |
| 90–150 | 93 | 32 |
| 150–300 | 53 | 20 |
| 300–600 | 17 | 4 |
The entire fast test set is 56 discoverable objects at or above 90 arcsec/hr, only four of them above 300, and the fastest object in the whole dataset moves at 529 arcsec/hr. The current search cuts at 0.6 deg/day, which is exactly 90 arcsec/hr, so it already covers the 236 discoverable objects in the 60–90 band and misses precisely those 56.
Fifty-six objects is enough to tell a scheme that works from one that returns nothing, which is the live question, because a dedicated fast pass returned zero linkages and that is still undiagnosed. It is not enough to tune on: the binomial uncertainty on 56 is about seven points, worse than the tile-to-tile scatter we already cannot see through.
Recorded because several were used to justify decisions that have since been reversed.
| Earlier figure | Corrected to | Why |
|---|---|---|
| Solar elongation band of 40–70° | No tiles below 70° | The Sun sat at RA 115.1°, dec +21.4° mid-window |
| 49.3% of fast objects reachable at 2.5° | 67.9% | Measured against the discoverable fast set, not all fast objects |
| 10° tiles needed for the fast pass | 5° suffices, at 91.1% | Ten degrees adds 7 points for four times the compute |
ompdanby preferred on dense tiles | kd everywhere | 19.6 cores against 1, and three points more complete |
| About 98% completeness | About 90–93%, pending the merge | Per-tile denominators excused the objects each tile lost |
| About 90–93% once merged | 97.6% over 625 tiles | Tiles overlap, so what one tile drops a neighbour usually catches |
Measurements from the local mirror of the DP2
diaSource catalog and visit table. The probes that produced each
block are named in the source of this page.