Drift diagnostics: Tasks 10 and 11 diagnostic / conditional

Codex results read from your files, plus my mean-flow check on your forcing cache. Frozen B0 physics, assumed find coordinates and dates, zero-delay matching. State as of 6 Oct 2026: boxes B, W and M are finished through stage 2, the permutation null and delay runs are in, B1 stopped at Step A, and the Task 16 source-region likelihood is complete. The E box was not run because the forcing domain ends at 115°E.

What the results say, in short

Task 10: where does the western focus come from? complete

CheckResult
Scope of the nullsThe shuffled null can change the joint mixture of location, dates, classes and jitter. Both nulls retain western receiving geography.
Inputs and zero-motion testLaunch tables differ as intended. Zero-motion differences are zero.
Attrition, original N2 run (16,000)6,602 survive · 5,725 land · 3,664 leave the domain · 9 invalid forcing
Contributors to the western peak (observed replicate 1)C2 64%, C3 30%, C1 6%. C2 is untestable and C3 unsupported as measured classes. All entered the last 11.68 h hold, as every event survivor must.
Denominator variantsPeak moves 414 km between pooled and equal-item smoothing. Changing only the pooled denominator leaves it unchanged.
Checkpoint divergenceShuffled total variation 1.000 at start → 0.454 at event (minimum 0.352 at 360 d). Random coast 0.096 → 0.585. No common convergence interval.
Synthetic recovery (original 5-site design)Untestable: 0–2 matched items per site under the primary rule, 0–7 under the regional rule, none reach all 32. No reverse set was substituted.
Ring distanceTask 9 peaks are 726–1,059 km inside the full ring (earlier values used the truncated arc).
Codex ran the original Task 10 Step E, not the revised one, so the drifter hindcast and forward grid became Task 11.

Task 11, Step E: drifter hindcast of the frozen model

NOAA GDP drifter tracks, known-track transport tests with the frozen B0 model (daily NCEP wind, K = 10 m²/s, absorbing mask, wind slip floor of 1.2%). C0 is the pre-declared primary undrogued proxy. These are not flaperon proxies.

Median model-minus-observed zonal displacement versus horizon, all classes, undrogued and drogued, three splits

Median and interquartile range, east positive, by drogue status and split (Codex figure).

Holdout, C0 undrogued, all directions

Horizon dMedian error / persistence kmSkillZonal error median [IQR] km
112.65 / 20.980.398+1.0 [−6.5, 7.7]
331.48 / 55.910.418+1.8 [−16.7, 20.6]
758.78 / 107.170.414+2.1 [−31.5, 39.0]
1498.73 / 172.350.349+4.8 [−53.1, 66.7]
30204.88 / 318.700.294+19.9 [−96.3, 150.1]
60362.89 / 523.720.303+91.1 [−122.8, 290.2]
90491.87 / 699.810.319+135.5 [−106.3, 419.7]
180824.95 / 1139.850.314+330.9 [−39.0, 774.1]

No frozen criterion failed for C0 undrogued (the pre-declared primary). C2 and C3 do fail some criteria, see the Task 12 section below. The pre-set B1 trigger (all-direction calibration errors at 7 and 14 d) was false. That design cannot see an effect that only appears after about 30 days.

Median zonal error at 14 d / 180 d by starting region, C0 undrogued, both directions (km)

Start longitudeCalibrationValidationHoldout
Western 40–55°E+0.8 / +111.7+3.1 / +171.5+4.1 / +311.9
Transit 55–80°E+2.5 / +106.0+19.6 / +278.1+10.4 / +342.7
Source 80–100°E−1.9 / +105.0−14.3 / +159.7−3.4 / +340.7
Eastern >100–110°E+4.8 / +338.9+5.2 / +199.1+13.6 / +112.5

All 14-day IQRs span zero. At 180 d the holdout source and transit IQRs are entirely positive (+6.6 to +827.3 and +2.5 to +720.8 km).

Observed-westward subset, C0 undrogued, 180 d

SplitMedian [IQR] km
Calibration+396.8 [−137.5, 943.1]
Validation+488.2 [−82.7, 1,000.5]
Holdout+473.3 [+95.1, +946.2] (observed −754.5)
Reading. Positive means model minus observed is east, so insufficient westward motion for westward-moving drifters. Equivalent speed is about 0.6–2.2 cm/s. A linear extrapolation to 500 days gives roughly 290–950 km, the same order as the 726–1,059 km offset from the ring. That extrapolation is mine and the growth is not shown to be linear.
Limits. The windows overlap and are not independent drifters. Conditioning on observed westward motion builds in part of the positive error, so the unconditioned regional table carries more weight. The holdout has been seen and cannot now be used for tuning. A B1 fit has not been made. My proposal is a regression of model on observed displacement on the calibration split first, with a speed scale used only if the slope and intercept support it.
Drogued drifters show a negative error (model too far west) that grows with the assigned slip, as expected when wind slip is applied to objects with almost none. They are not used to judge the slip classes.

Task 11, Step F: forward release from 24.5–41°S, 80–100°E (box B)

1,394 cells at 0.5°, 100 particles per cell per class, released 8 Mar 2014 00:19, classes C0–C3 separately, frozen B0 physics. Stage 1 integrates to 31 Jul 2015 (only item 1, Réunion, is scored). Stage 2 continues offshore particles to the end of the last find interval (day 1,638). Controls W (40–60°E) and M (60–80°E) use 25 particles per cell per class.

Accounting against released mass, box B

StageReleasedLandedLeft domainInvalidOffshore at horizon
1 (day 510)557,600116,607 (20.9%)146,548 (26.3%)886293,559 (52.6%)
2 (day 1,638)557,600252,840 (45.3%)210,285 (37.7%)2,686 (0.5%)91,789 (16.5%)

Accounting residual is zero for every class and stage. Stage 2 landed by class: C0 75,044 · C1 65,358 · C2 60,100 · C3 52,338.

Where left-domain particles exit (box B, stage 2)

EdgeParticlesMedian day
East, 115°E135,596 (64%)178
North, 5°N40,304 (19%)548
West, 20°E34,124 (16%)985
South, 55°S261 (0.1%)171

For release cells at 36–41°S, 93% of leavers exit east. In total 24% of every particle released leaves by the east edge, so the closed domain boundary removes mass that could recirculate in the real gyre.

Matching, box B, stage 2 (all 32 items scored)

Rule · classCells with ≥1 match (of 1,394)Max items by one cellMax distinct date windowsCells matching Réunion
Primary · C0898741
Primary · C1428534
Primary · C2160637
Primary · C368313
Primary · assigned146534
Regional · C01,2971571
Regional · assigned7331044

There are 23 distinct date windows across the 32 items. Items 13, 14, 16, 17 and 18 share one window, so one landing counts for five items. The best primary cell (34°S, 92.5°E, C0, 110 km inside the ring) matches items 13, 14, 16, 17, 18, 24 and 31 but not Réunion. Under the primary rule no release cell matches items 2, 6, 7, 9, 20 or 27.

Réunion (item 1, window day 508–509) matches 15 of 557,600 particles. Cells that match it match at most one other item, and that one has a wide window (day 938–1,395).

Controls W and M against B, stage 1 (Réunion region)

BoxC0 median arrival dayC1C2C3Exact-date matches
B 80–100°E4043693552941 / 4 / 7 / 3 (C0–C3)
M 60–80°E3012031831420
W 40–60°E161130124970

In stage 2, box W has no cell matching Réunion either, and its best cell matches 5 items under the primary rule (2 date windows). Box M stage 2 is now complete (see the follow-up below).

How to read this. The primary rule requires a landing within 100 km, inside a window often one day wide, with zero delay. Most of the filtering comes from that rule, not from transport. Nearer boxes deliver to Réunion too early, which any beach residence, refloat or detection delay would repair, so the zero-delay comparison favours the farther box by construction. The stage 1 median arrival days above only count particles that arrived before day 510, so they are biased early. Over the full horizon, box B's median Réunion arrival is day 814, 591, 530 and 326 for C0 to C3, against the find at day 508 (see the Task 12 section). That removes the timing conflict with Task 7 that I flagged earlier: it came from comparing a truncated median. The best-cell counts are maxima over 5,576 cell-classes at 100 particles each, and the permutation null is reported in the follow-up below (it shows transport coherence, not a joint source). B0 under-delivers westward motion, so a miss here is not an exclusion of any cell.

Task 11 follow-up: permutation null, delay sensitivity, controls M and W complete, 6 Oct

Source: MH370_requested_diagnostics_v1.zip (frozen B0, stage 2, all 32 items, 23 distinct date windows). Zero-delay counts reproduce the saved summaries in all 66,000+ cell/class/rule rows. B1 stopped at Step A (next section).

Common-source permutation null (1,000 shuffles of window hit flags among cells)

Observed maximum number of distinct windows matched by one cell, against the null. Stage 2, 30 tests (3 boxes, 5 class sets, 2 rules).

Delay sensitivity (delay added to first land hit)

The maximum number of distinct windows for C0 is unchanged by delay: B primary 4, 4, 4, 4; W 2, 2, 2, 2; M 3, 4, 3, 3 at 0, 30, 90, 180 d. Raw items rise slightly (B primary 7 to 10). Beach residence does not create a convergent source in these runs.

Réunion (item 1, one-day window 29 July 2015), primary rule, stage 2

BoxClassReleasedBefore windowInsideAfterLanded 0–180 d before
BC0139,40057012,983408 (0.29%)
BC1139,40077941,462490 (0.35%)
BC2139,4008587965509 (0.37%)
BC3139,4009473212360 (0.26%)
MC0–C334,850 each306–701057–94787–138 (0.25–0.40%)
WC0–C3about 34,400 each160–273081–41221–32 (0.06–0.09%)

Limits

Cell samples are 100 particles in B and 25 in W and M (smallest nonzero fraction 1% and 4%). The per-item intervals are pooled and do not cover between-cell differences. Window 5 (items 28, 29, 31, 32) spans 15 months and window 0 one month, so the wide windows are easy to hit; the shuffle preserves each window's prevalence. Class assignment, assumed find coordinates, daily NCEP winds, no explicit Stokes, the 1.2% floor, the static absorbing coast and noon boundary holds remain assumptions.

Task 12 (B1 bias fit) and the final Task 11 report complete, 6 Oct

B1 stopped at Step A, as registered. Using calibration drifters only (C0 undrogued, 139 to 179 drifters), none of the three correction forms was supported at both 90 and 180 days. Steps B, C and D (fit, gates, corrected grids) were not run, so there is no corrected model. This is exploratory and post-hoc, because the holdout has been seen.

One thing worth knowing, not a finding. The error does correlate with the mean current along the observed track (R² about 0.11 at 180 d, slope excluding zero). That correlation is not part of the registered rule and I would not read it as a current-speed error. The current is sampled along the track the drifter actually took, so a drifter that moved west met westward current by construction. Telling the two apart would need the same regression on the model's own track, which was not run and was not authorized.

This does not show the model is unbiased. It shows the calibration data do not identify one of the three allowed fixes under the declared thresholds. The 100 to 340 km eastward error at 180 d stays a documented limit.

Class gates from the final report (undrogued drifters)

ClassResult against the frozen drifter criteria
C0 (primary)Passes every criterion in all three splits.
C1Fails only the 180 d endpoint criterion on the calibration split.
C2Fails the 90 d endpoint criterion in all splits and 180 d in two.
C3Fails the 14 d endpoint and skill criteria and all longer endpoint criteria, in all splits.

Why this matters: in the Task 10 reverse run, C2 and C3 supply 64% and 30% of the western peak. Those are the two classes with the weakest drifter support. A failure on drifters says that high wind slip is not plausible for objects that mostly follow the water. It does not say the slip is wrong for a flaperon, whose slip is not measured.

Réunion arrival over the full horizon (box B, stage 2)

ClassC0C1C2C3
Median Réunion arrival day (find at day 508)814591530326

Box B delivers 8,791 particles to Réunion over the full horizon, 97,600 to Madagascar and 24,736 to Mozambique. Arrival at a coast is not the same as exact-date recovery.

Coastline sensitivity

Replacing only the beaching rule with the GSHHG coast changes the landed fraction by −12 to +8 percentage points across the sampled cells and classes. The paired median difference in first-hit position reaches 963 km. The coast treatment is therefore a first-order assumption for any landing-location result here. The comparison keeps the original missing-current areas, so it is not a pure geometric bound.

Synthetic recovery and the eastern control

All five fixed synthetic sites matched no items under either rule at this sample size, so no synthetic observation set formed and no reverse peak was computed for them. Control E (100–120°E) was not run because the box extends past the forcing domain at 115°E.

The report's own decision table: forward reproduces the collection is NOT ESTABLISHED, and conditional mismatch among source, object and observation assumptions is SUPPORTED WITH LIMITATIONS. No source location is established or excluded.

Gyre and mean-flow check (mine, from your forcing cache)

Mean daily surface current (0.494 m GLORYS, cache on your computer), weekly sample of 73 days over the first 510 days, averaged to 0.5°. Mean winds from the atlas's monthly NCEP file, assuming it is stored in hundredths of m/s (it gives about 5 m/s, which is plausible). Nothing here is a new transport run.

Mean surface speed and divergence of mean flow with release boxes and reverse density peak

Mean zonal drift, 80–100°E (cm/s, east positive)

LatitudeMean current1.2% wind slip
36–41°S+4.7+6.2
31–36°S+1.5+1.3
26–31°S−0.8−3.1
21–26°S−1.5−6.3

The hindcast bias (0.6–2.2 cm/s) is the same size as the whole mean current in the gyre interior. Slip and wind therefore dominate the transport, and a few tenths of a percent in slip is as large as the bias.

Mean zonal flow versus latitude in three longitude sectors

Mean zonal flow by latitude, three sectors.

What this does not show. Mean divergence is near zero everywhere at this resolution (box average about −0.03×10⁻⁶ s⁻¹), so I cannot identify a convergence or accumulation zone. The reverse peak (35.25°S, 55.75°E) sits in the band where mean wind and mean current are both close to zero. That makes it plausible that reverse trajectories linger there whatever the finds are. It is a hypothesis: it needs residence-time tracks, and the saved outputs only hold end states. The weekly sample is noisy, so these means are indicative.

Task 16: can a source region be determined at all? complete, 6 Oct

The binary rule (100 km, exact interval, zero delay) found nothing and the permutation null said its best cells matched a shuffle. Task 16 replaced hit-counting with a likelihood: a distance kernel instead of a hard radius, a landing-to-discovery delay distribution instead of a fixed offset, and — for the first time — an explicit detection term, since every item was found on populated accessible coast and none on uninhabited shoreline. 36 configurations: three kernel scales × three delay means × four detection models.

The gate passed, so this is not a power problem

Before touching the real finds, the method had to recover sources it knew were there. Synthetic collections were drawn from known cells in the same particle bank and scored blind against preregistered thresholds. 32 of 36 configurations passed, with HPD50 coverage from 41.0% to 97.5%; the four failures fell below the 60% bar. Only 0 to 3.5% of draws were unformable, so nearly every cell can produce a 32-item collection. The machinery works where a source exists.

On the real finds, the answer is set by the assumptions

Horizontal bar chart comparing, for each box and class, how far the posterior mode moves between assumption sets against the widest 90 percent mass region within any single assumption set. In thirteen of fifteen cases the movement exceeds the width.

Orange exceeding blue means the preregistered failure condition is met: the answer moves further when you change an unmeasured assumption than any single answer is wide.

Box / classMode spread across configurationsWidest 90% regionVerdict
B / C01,552 km905 kmassumptions dominate
B / C11,367 km1,345 kmassumptions dominate
B / C31,383 km1,101 kmassumptions dominate
B / assigned675 km0 kmassumptions dominate
W / C31,914 km1,424 kmassumptions dominate
M / C01,167 km747 kmassumptions dominate

Thirteen of fifteen box/class combinations fail the test; only M/C1 and M/assigned come in under their widest configuration, which is already a generous comparison. Authoritative per-subset flags are in configuration_spread.csv.

There is no source region here, only a map of our assumptions. Zero distributions are effectively flat and 135 are multimodal, and the 90% widths run down to 0 km. So each configuration returns a confident, concentrated answer — sometimes a single cell — and those confident answers disagree with each other by 1,000 to 1,900 km. Box B is about 1,830 by 1,760 km, so the mode wanders across essentially the whole release region depending on which kernel scale, delay mean and detection model you pick. The declared sensitivities move it by as much as 1,848 km.

What this does and does not mean

This is the same wall reached from two other directions: Task 12 found no supported correction for the transport bias, and Tasks 13 and 14 found the inputs unmeasured. More computation cannot move it.

Provenance audit: what the inputs actually rest on Tasks 13 and 14, 6 Oct

Task 13 catalogued what the project files state about the five open inputs (805 rows across 32 items, 387 sourced rows resolving, 344 of 344 historical hashes unchanged). Task 14 then checked nine claims from an external source index against the documents themselves. Seven of nine documents were obtained; eight claims verified, one locator mismatch, two unobtainable. Nothing was promoted to a model input and no value changed.

The 1.2% wind-slip floor: resolved, and not in the model’s favour

The CSIRO 2016 report’s forcing products are confirmed: ERA-Interim 10 m winds, BRAN2015 currents, and Stokes drift from a CAWCR Wave Hindcast extension. The 1.2% is defined there as the value minimising the unexplained velocities of undrogued drifters — an effective windage fitted to that particular combination of products.

B0 does not use any of those products. It applies the same 1.2% floor with daily NCEP/NCAR R1 T62 winds and GLORYS12V1 currents. A coefficient fitted to absorb residual motion under one forcing set carries no guarantee under another, and no transfer validation exists anywhere in the project files. This is a plausible contributor to the documented eastward hindcast bias, and it is now a named limitation rather than an unresolved citation.

Still no measured slip for any item

The French DGA report’s 3.29% and 2.76% coefficients were confirmed as numerical-model results, not measurements — its cover and conclusion pages identify the method. Nesterov’s 2018 paper describes the same parameters as experimentally established, which the original report contradicts; that conflict is recorded and left unresolved. Neither those values, nor the mean flaperon deflection near 16° from CSIRO Part II, nor a fitted effective windage, map onto the C0–C3 slip minima, maxima or divergence widths. They are different quantities measured on a different object. The class table stays an assumption.

Item 4 (“Roy”, Mossel Bay): the matching window is probably wrong

The CSIRO report records Roy as first seen at Mossel Bay on 23 December 2015. The Malaysian catalogue gives a discovery date of 22 March 2016, and B0 uses that as a one-day matching window. The gap is about 90 days.

This is not a drop-in replacement, because it changes the kind of constraint: item 4 stops being “landed on day 745” and becomes “ashore by day 655”, an upper bound the matching rule has no mode for. It is flagged, not changed. The delay-sensitivity runs already bound how much it could matter: shifting every landing by 30, 90 and 180 days left the maximum distinct-window count unchanged in every box, and one item moving is a smaller perturbation than that.

The general point carries further than the one item. All 32 windows are discovery dates. One is demonstrably 90 days later than its own first sighting, and nothing establishes that the other 31 are better. That is an argument about the zero-delay exact-interval rule as a whole.

Coordinates: unchanged, and one claim did not survive

An external claim of an explicit flaperon coordinate at Saint-André, Réunion (20°56.20′S, 55°40.87′E) from a 2016 Météo-France report could not be verified: the report was not found locally or at its publisher, and the corroborating press page was unreachable. No mirror or search-index text was substituted. The verified side of that conflict is the Malaysian catalogue’s Saint-Denis. The two are 20 to 25 km apart, so both sit well inside the 100 km matching radius and nothing about matching changes either way. Item 6’s examination report was read in full, images included: it gives dimensions but no coordinate or extent. Every page of the items 28–32 report was read; no finer recovery dates exist, so those broad windows stay broad.

All five original gaps still affect all 32 items. Coordinates remain ASSUMED_GEOCODE with no stated centroid construction or extent, so the “wider than 100 km” check cannot be run at all.

Appendix: failed or superseded readings and open items