Winding-direction follow-up: reference comparison and Fourier directional tests

The new reference comparison and the Fourier directional tests are complete. No statistically significant directional winding pattern is detected with either method under the conditional shuffle null, and the two methods give different labels for 12,119 of 30,910 common targets.

1. Agreement with reference labels, and coverage

Coverage. Of 49,211 attempted targets, the Fourier method assigned a sign to 49,007 (204 have no retained tensor). SpArcFiRe resolved 30,910 and left 18,301 unresolved. On the 30,910 targets with both labels the methods agree for 18,791 and disagree for 12,119. A sign assignment is not a quality guarantee.

Reference comparison. For cases with a strong Galaxy Zoo reference label, the chart shows how often each method gave the opposite direction among the cases it assigned. Fourier assigned every such case; SpArcFiRe abstained on some. The fractions are therefore conditional on different assigned sets and are not a fair whole-population accuracy ranking.

Limits. Reference labels are human classifications, not physical truth. DEV and EVAL were both exposed during development: neither is an untouched or representative validation set, and they are never pooled. The separate CzSL expert cohort is historical context only; it lies outside the current Fourier parent.

EVAL split: reference disagreement (opposite direction / assigned cases) with nominal Clopper-Pearson 95% intervals for these conditional counts. Notes give opposite/assigned; assigned/reference cases. CW ref rows count CW-to-ACW disagreement, ACW ref rows ACW-to-CW.

DEV split, shown separately and never pooled with EVAL. Intervals exclude reference error, the vote threshold, selection into the reference set and any transfer to the science sample. These are reference disagreements, not classifier error rates.

2. Directional tests: no significant pattern detected

Amplitude. The dipole amplitude is 2|b| in A = 2p - 1: a one-sided cosine coefficient, not a hemisphere contrast or a pooled imbalance. Fourier labels give 1.65% on full coverage (approximate 95% Wald envelope 0.00 to 6.03%) and 2.16% on the common set (0.00 to 7.68%). The unchanged SpArcFiRe result is 2.27% (0.00 to 7.79%).

Tests. Four new tests were declared before any draw: a dipole likelihood ratio and a maximum hemisphere contrast over 648 axes, each on full and common coverage, with 1,024 label shuffles per coverage set. The largest observed contrasts in A are 2.04 and 2.49 percentage points. All four Bonferroni-adjusted p-values are 1.000. The earlier SpArcFiRe test (p = 0.684) is separate and not part of this family.

Meaning. Under a null that fixes positions and the CW count and treats labels as exchangeable, no statistically significant directional winding pattern is detected. This is not a physical-spin or cosmic-parity result, and absence of significance does not prove exact symmetry.

Fitted dipole amplitude with approximate 95% Wald envelopes. The envelopes are asymptotic, have no guaranteed coverage and exclude classification and selection uncertainty. Best-fit axes are not established and are not shown. The SpArcFiRe row is the retained earlier result, not recomputed.

Conditional plus-one permutation p-values with the four-test Bonferroni correction. The maximum over axes is recomputed in every shuffle, which accounts for that grid search; the likelihood ratio refits a continuous direction. The correction covers these four tests only. Full and common coverage overlap and the two algorithms are correlated. Spatial selection and classification effects are not removed. Monte Carlo intervals are in the appendix. pp = percentage points of A.

3. Where the two methods disagree, and scope

Disagreement by brightness and size. The chart gives the share of common targets on which Fourier and SpArcFiRe labels differ, in bins frozen before any winding outcome was read. These are descriptive proportions: no intervals or tests were computed and no cause is inferred from any bin. Empty bins are marked; bins with fewer than 30 common targets are flagged sparse.

Takeaway. The new reference comparison and the Fourier directional tests are complete. No statistically significant directional winding pattern is detected with either method under the conditional shuffle null, and the two methods give different labels for 12,119 of 30,910 common targets.

Scope. Nothing was reclassified and the historical SpArcFiRe test was not rerun. The optional group and cluster audit was not run in this phase; group results are unchanged. Axis-dependent maps remain descriptive, not evidence of a preferred direction. No calibration-adjusted population asymmetry was calculated.

Checks. Independent numerical checks reproduced the tables (21 checks) and certified 2,050 saved optima with no new optimisation or draw. They confirm arithmetic, not the scientific assumptions.

Disagreement share (disagree / common, percent) by frozen r-magnitude and size bins; notes give disagree/common counts. Declination, score-magnitude and exposure-count bins and all denominators are in the appendix. Method context only, not validation of this pipeline: arxiv.org/html/2404.06617v2 and arxiv.org/abs/1610.07060.

Limitations and scope

Frozen strata: declination_deg

labelall_targetssparcfire_resolvedfourier_assignedcommonagreedisagreesparsedisagree/common
[-90,-30)14625933414535933457033631False0.3890
[-30,0)1579110058157251005861053953False0.3930
[0,30)1752010789174741078965524237False0.3927
[30,90]12757291273729431298False0.4088
missing_or_nonfinite000000Trueno common cases

Frozen strata: fourier_abs_chi

labelall_targetssparcfire_resolvedfourier_assignedcommonagreedisagreesparsedisagree/common
[0,0.01)2647147926471479770709False0.4794
[0.01,0.05)876050598760505926802379False0.4703
[0.05,0.1)765445417654454125122029False0.4468
[0.1,0.25)13372836713372836748023565False0.4261
[0.25,0.5)10584699910584699945102489False0.3556
>=0.559904465599044653517948False0.2123
missing_or_nonfinite20400000Trueno common cases

Frozen strata: magnitude_dered_mag_r

labelall_targetssparcfire_resolvedfourier_assignedcommonagreedisagreesparsedisagree/common
<14727211True0.5000
[14,15)964695462521False0.4565
[15,16)29431719293017191050669False0.3892
[16,17)2137412873212861287378764997False0.3882
[17,17.7)2479116270246891627098396431False0.3953
>=17.7000000Trueno common cases
missing_or_nonfinite000000Trueno common cases

Frozen strata: nobs_r

labelall_targetssparcfire_resolvedfourier_assignedcommonagreedisagreesparsedisagree/common
0000000Trueno common cases
1000000Trueno common cases
2000000Trueno common cases
3plus492113091049007309101879112119False0.3921
missing000000Trueno common cases

Frozen strata: size_shape_r

labelall_targetssparcfire_resolvedfourier_assignedcommonagreedisagreesparsedisagree/common
<1.5000000Trueno common cases
[1.5,2)10668502710617502728712156False0.4289
[2,3)1931711880192461188071024778False0.4022
[3,5)1472410537146611053766733864False0.3667
[5,10)388029493866294918041145False0.3883
>=10622517617517341176False0.3404
missing_or_nonfinite000000Trueno common cases

Parent coverage

fieldvalue
common.agree18791
common.disagree12119
common.n30910
fourier.ACW24363
fourier.CW24644
fourier.classes.REFUSED_NO_TENSOR204
fourier.classes.SCORED49007
fourier.no_sign204
photometry_rows49211
photometry_rows_outside_parent0
sparcfire.ACW15431
sparcfire.CW15479
sparcfire.outcomes.CHIRALITY_EQ_OR_OTHER5183
sparcfire.outcomes.RENDER_REFUSED204
sparcfire.outcomes.RESOLVED30910
sparcfire.outcomes.SHORT_ROW12914
sparcfire.unresolved18301
targets49211
targets_without_photometry_row0

Reference comparison, DEV (never pooled)

fieldvalue
direction.fourier_current.ACW_reference.assigned67
direction.fourier_current.ACW_reference.assigned_cp95[0.9464303458729033, 1.0]
direction.fourier_current.ACW_reference.assigned_fraction1.0
direction.fourier_current.ACW_reference.error_direction"ACW_to_CW"
direction.fourier_current.ACW_reference.opposite9
direction.fourier_current.ACW_reference.opposite_cp95[0.06330822616769438, 0.23974175206255288]
direction.fourier_current.ACW_reference.opposite_fraction0.13432835820895522
direction.fourier_current.ACW_reference.reference_n67
direction.fourier_current.ACW_reference.same_as_reference58
direction.fourier_current.ACW_reference.sparsefalse
direction.fourier_current.ACW_reference.unassigned0
direction.fourier_current.CW_reference.assigned69
direction.fourier_current.CW_reference.assigned_cp95[0.9479419421369204, 1.0]
direction.fourier_current.CW_reference.assigned_fraction1.0
direction.fourier_current.CW_reference.error_direction"CW_to_ACW"
direction.fourier_current.CW_reference.opposite11
direction.fourier_current.CW_reference.opposite_cp95[0.08236224782544471, 0.26736809587640353]
direction.fourier_current.CW_reference.opposite_fraction0.15942028985507245
direction.fourier_current.CW_reference.reference_n69
direction.fourier_current.CW_reference.same_as_reference58
direction.fourier_current.CW_reference.sparsefalse
direction.fourier_current.CW_reference.unassigned0
direction.sparcfire_retained.ACW_reference.assigned64
direction.sparcfire_retained.ACW_reference.assigned_cp95[0.8746729640060595, 0.9906691565872429]
direction.sparcfire_retained.ACW_reference.assigned_fraction0.9552238805970149
direction.sparcfire_retained.ACW_reference.error_direction"ACW_to_CW"
direction.sparcfire_retained.ACW_reference.opposite2
direction.sparcfire_retained.ACW_reference.opposite_cp95[0.003807181381872282, 0.10837052222451793]
direction.sparcfire_retained.ACW_reference.opposite_fraction0.03125
direction.sparcfire_retained.ACW_reference.reference_n67
direction.sparcfire_retained.ACW_reference.same_as_reference62
direction.sparcfire_retained.ACW_reference.sparsefalse
direction.sparcfire_retained.ACW_reference.unassigned3
direction.sparcfire_retained.CW_reference.assigned64
direction.sparcfire_retained.CW_reference.assigned_cp95[0.8389382597263875, 0.9760533790312954]
direction.sparcfire_retained.CW_reference.assigned_fraction0.927536231884058
direction.sparcfire_retained.CW_reference.error_direction"CW_to_ACW"
direction.sparcfire_retained.CW_reference.opposite2
direction.sparcfire_retained.CW_reference.opposite_cp95[0.003807181381872282, 0.10837052222451793]
direction.sparcfire_retained.CW_reference.opposite_fraction0.03125
direction.sparcfire_retained.CW_reference.reference_n69
direction.sparcfire_retained.CW_reference.same_as_reference62
direction.sparcfire_retained.CW_reference.sparsefalse
direction.sparcfire_retained.CW_reference.unassigned5
exposure"development-exposed; not an untouched holdout"
fourier_outcomes.ACW1858
fourier_outcomes.CW1968
fourier_outcomes.NO_TENSOR11
joint.ACW|S_ACW|F_ACW54
joint.ACW|S_ACW|F_CW8
joint.ACW|S_CHIRALITY_EQ_OR_OTHER|F_ACW2
joint.ACW|S_CHIRALITY_EQ_OR_OTHER|F_CW1
joint.ACW|S_CW|F_ACW2
joint.AMBIGUOUS|S_ACW|F_ACW653
joint.AMBIGUOUS|S_ACW|F_CW438
joint.AMBIGUOUS|S_CHIRALITY_EQ_OR_OTHER|F_ACW193
joint.AMBIGUOUS|S_CHIRALITY_EQ_OR_OTHER|F_CW193
joint.AMBIGUOUS|S_CW|F_ACW458
joint.AMBIGUOUS|S_CW|F_CW716
joint.AMBIGUOUS|S_RENDER_REFUSED|F_NO_TENSOR11
joint.AMBIGUOUS|S_SHORT_ROW|F_ACW485
joint.AMBIGUOUS|S_SHORT_ROW|F_CW554
joint.CW|S_ACW|F_ACW1
joint.CW|S_ACW|F_CW1
joint.CW|S_CHIRALITY_EQ_OR_OTHER|F_CW5
joint.CW|S_CW|F_ACW10
joint.CW|S_CW|F_CW52
reference_outcomes.ACW67
reference_outcomes.AMBIGUOUS3701
reference_outcomes.CW69
reference_outcomes.MISSING0
rows3837
rows_absent_from_current_sparcfire0
sparcfire_headline_reproduced.ACW_reference.a_scheduled_matched67
sparcfire_headline_reproduced.ACW_reference.agreements62
sparcfire_headline_reproduced.ACW_reference.b_prediction_resolved64
sparcfire_headline_reproduced.ACW_reference.c_reference_resolved67
sparcfire_headline_reproduced.ACW_reference.d_jointly_resolved64
sparcfire_headline_reproduced.CW_reference.a_scheduled_matched69
sparcfire_headline_reproduced.CW_reference.agreements62
sparcfire_headline_reproduced.CW_reference.b_prediction_resolved64
sparcfire_headline_reproduced.CW_reference.c_reference_resolved69
sparcfire_headline_reproduced.CW_reference.d_jointly_resolved64
sparcfire_headline_reproduced.headline.a_scheduled_matched3837
sparcfire_headline_reproduced.headline.agreements124
sparcfire_headline_reproduced.headline.b_prediction_resolved2393
sparcfire_headline_reproduced.headline.c_reference_resolved136
sparcfire_headline_reproduced.headline.d_jointly_resolved128

Reference comparison, EVAL (never pooled)

fieldvalue
direction.fourier_current.ACW_reference.assigned116
direction.fourier_current.ACW_reference.assigned_cp95[0.96869963925671, 1.0]
direction.fourier_current.ACW_reference.assigned_fraction1.0
direction.fourier_current.ACW_reference.error_direction"ACW_to_CW"
direction.fourier_current.ACW_reference.opposite11
direction.fourier_current.ACW_reference.opposite_cp95[0.04829408879656623, 0.16333953564569703]
direction.fourier_current.ACW_reference.opposite_fraction0.09482758620689655
direction.fourier_current.ACW_reference.reference_n116
direction.fourier_current.ACW_reference.same_as_reference105
direction.fourier_current.ACW_reference.sparsefalse
direction.fourier_current.ACW_reference.unassigned0
direction.fourier_current.CW_reference.assigned111
direction.fourier_current.CW_reference.assigned_cp95[0.9673130059760522, 1.0]
direction.fourier_current.CW_reference.assigned_fraction1.0
direction.fourier_current.CW_reference.error_direction"CW_to_ACW"
direction.fourier_current.CW_reference.opposite12
direction.fourier_current.CW_reference.opposite_cp95[0.057123306469608406, 0.1812295433599722]
direction.fourier_current.CW_reference.opposite_fraction0.10810810810810811
direction.fourier_current.CW_reference.reference_n111
direction.fourier_current.CW_reference.same_as_reference99
direction.fourier_current.CW_reference.sparsefalse
direction.fourier_current.CW_reference.unassigned0
direction.sparcfire_retained.ACW_reference.assigned108
direction.sparcfire_retained.ACW_reference.assigned_cp95[0.868628957975097, 0.96975720146949]
direction.sparcfire_retained.ACW_reference.assigned_fraction0.9310344827586207
direction.sparcfire_retained.ACW_reference.error_direction"ACW_to_CW"
direction.sparcfire_retained.ACW_reference.opposite7
direction.sparcfire_retained.ACW_reference.opposite_cp95[0.02645383502149381, 0.12899055619716915]
direction.sparcfire_retained.ACW_reference.opposite_fraction0.06481481481481481
direction.sparcfire_retained.ACW_reference.reference_n116
direction.sparcfire_retained.ACW_reference.same_as_reference101
direction.sparcfire_retained.ACW_reference.sparsefalse
direction.sparcfire_retained.ACW_reference.unassigned8
direction.sparcfire_retained.CW_reference.assigned105
direction.sparcfire_retained.CW_reference.assigned_cp95[0.8860555122954583, 0.9799073406955345]
direction.sparcfire_retained.CW_reference.assigned_fraction0.9459459459459459
direction.sparcfire_retained.CW_reference.error_direction"CW_to_ACW"
direction.sparcfire_retained.CW_reference.opposite3
direction.sparcfire_retained.CW_reference.opposite_cp95[0.005931321957887028, 0.08123193276839347]
direction.sparcfire_retained.CW_reference.opposite_fraction0.02857142857142857
direction.sparcfire_retained.CW_reference.reference_n111
direction.sparcfire_retained.CW_reference.same_as_reference102
direction.sparcfire_retained.CW_reference.sparsefalse
direction.sparcfire_retained.CW_reference.unassigned6
exposure"development-exposed; not an untouched holdout"
fourier_outcomes.ACW6430
fourier_outcomes.CW6329
fourier_outcomes.NO_TENSOR45
joint.ACW|S_ACW|F_ACW91
joint.ACW|S_ACW|F_CW10
joint.ACW|S_CHIRALITY_EQ_OR_OTHER|F_ACW8
joint.ACW|S_CW|F_ACW6
joint.ACW|S_CW|F_CW1
joint.AMBIGUOUS|S_ACW|F_ACW2261
joint.AMBIGUOUS|S_ACW|F_CW1486
joint.AMBIGUOUS|S_CHIRALITY_EQ_OR_OTHER|F_ACW665
joint.AMBIGUOUS|S_CHIRALITY_EQ_OR_OTHER|F_CW686
joint.AMBIGUOUS|S_CW|F_ACW1480
joint.AMBIGUOUS|S_CW|F_CW2234
joint.AMBIGUOUS|S_RENDER_REFUSED|F_NO_TENSOR45
joint.AMBIGUOUS|S_SHORT_ROW|F_ACW1907
joint.AMBIGUOUS|S_SHORT_ROW|F_CW1813
joint.CW|S_ACW|F_ACW2
joint.CW|S_ACW|F_CW1
joint.CW|S_CHIRALITY_EQ_OR_OTHER|F_ACW2
joint.CW|S_CHIRALITY_EQ_OR_OTHER|F_CW3
joint.CW|S_CW|F_ACW7
joint.CW|S_CW|F_CW95
joint.CW|S_SHORT_ROW|F_ACW1
reference_outcomes.ACW116
reference_outcomes.AMBIGUOUS12577
reference_outcomes.CW111
reference_outcomes.MISSING0
rows12804
rows_absent_from_current_sparcfire0
sparcfire_headline_reproduced.ACW_reference.a_scheduled_matched116
sparcfire_headline_reproduced.ACW_reference.agreements101
sparcfire_headline_reproduced.ACW_reference.b_prediction_resolved108
sparcfire_headline_reproduced.ACW_reference.c_reference_resolved116
sparcfire_headline_reproduced.ACW_reference.d_jointly_resolved108
sparcfire_headline_reproduced.CW_reference.a_scheduled_matched111
sparcfire_headline_reproduced.CW_reference.agreements102
sparcfire_headline_reproduced.CW_reference.b_prediction_resolved105
sparcfire_headline_reproduced.CW_reference.c_reference_resolved111
sparcfire_headline_reproduced.CW_reference.d_jointly_resolved105
sparcfire_headline_reproduced.headline.a_scheduled_matched12804
sparcfire_headline_reproduced.headline.agreements203
sparcfire_headline_reproduced.headline.b_prediction_resolved7674
sparcfire_headline_reproduced.headline.c_reference_resolved227
sparcfire_headline_reproduced.headline.d_jointly_resolved213

Retained CzSL context (historical, not pooled)

fieldvalue
czsl_expert_sparcfire.ACW_reference.pred_ACW2512
czsl_expert_sparcfire.ACW_reference.pred_CW200
czsl_expert_sparcfire.CW_reference.pred_ACW196
czsl_expert_sparcfire.CW_reference.pred_CW2489
czsl_expert_sparcfire.scheduled6000
note"Separate 6,000-object expert cohort outside the current parent; no current Fourier sign exists for it; retained historical counts, not recomputed, not pooled with DEV or EVAL."
source"combined_reference_calibration_20261008/REPORT.txt 8c6f4ad7ea2622583b6bc90d7d00c68b5599b42f0eb263484f2b7e6e6bf61749 (literals, not re-read)"

Four new tests, including Monte Carlo CP95

fieldvalue
LR_common.draws1024
LR_common.exceedance_cp95[0.4757439237251521, 0.5378885532131564]
LR_common.exceedance_cp95_upper_times41.0
LR_common.exceedance_fraction0.5068359375
LR_common.null_ge_observed519
LR_common.null_max14.502917640078522
LR_common.null_median2.309314351343346
LR_common.null_min0.0480084948358126
LR_common.observed2.251825547849876
LR_common.p_bonferroni41.0
LR_common.p_plus_one0.5073170731707317
LR_full.draws1024
LR_full.exceedance_cp95[0.6163271034585034, 0.6757966171121428]
LR_full.exceedance_cp95_upper_times41.0
LR_full.exceedance_fraction0.646484375
LR_full.null_ge_observed662
LR_full.null_max13.508218108283472
LR_full.null_median2.5643871209031204
LR_full.null_min0.010075242316816002
LR_full.observed1.7795677581598284
LR_full.p_bonferroni41.0
LR_full.p_plus_one0.646829268292683
maxabs_common.draws1024
maxabs_common.exceedance_cp95[0.5236379981697006, 0.5854217792836737]
maxabs_common.exceedance_cp95_upper_times41.0
maxabs_common.exceedance_fraction0.5546875
maxabs_common.null_ge_observed568
maxabs_common.null_max0.053021518706879184
maxabs_common.null_median0.025832238115830602
maxabs_common.null_min0.013080474026117804
maxabs_common.observed0.02491056859693656
maxabs_common.p_bonferroni41.0
maxabs_common.p_plus_one0.5551219512195122
maxabs_full.draws1024
maxabs_full.exceedance_cp95[0.49525854083696325, 0.5573238661970638]
maxabs_full.exceedance_cp95_upper_times41.0
maxabs_full.exceedance_fraction0.5263671875
maxabs_full.null_ge_observed539
maxabs_full.null_max0.03988054348497862
maxabs_full.null_median0.020638241821186783
maxabs_full.null_min0.008853330195522145
maxabs_full.observed0.020386140738532177
maxabs_full.p_bonferroni41.0
maxabs_full.p_plus_one0.526829268292683

Fourier fits (approximate Wald; direction descriptive)

fieldvalue
common.argmax_axis_ra_dec[175, -55]
common.codes.below_min0
common.codes.valid648
common.codes.void_tie0
common.covariance_4x4[[1.0268156131626012e-05, 2.452541987754972e-06, 3.303961410968269e-06, 1.3100518305268401e-05], [2.4525419877549776e-06, 4.0184225507941266e-05, -2.3152290703796685e-05, 2.1768205112819615e-05], [3.303961410968264e-06, -2.3152290703796712e-05, 5.816574655586314e-05, 2.3347877971422715e-05], [1.3100518305268404e-05, 2.1768205112819588e-05, 2.3347877971422745e-05, 8.215445168592784e-05]]
common.cw15622
common.direction_dec_deg-49.5744145183887
common.direction_ra_deg129.36904479845978
common.handedness_amplitude0.02161335771997713
common.labels"approximate Wald covariance/envelope; direction and arg-max axis descriptive only"
common.n30910
common.observed.argmax_axis125
common.observed.convergedtrue
common.observed.errornull
common.observed.grad[-2.909001484141527e-09, 2.8403777230445134e-10, 3.2926367091032964e-11, 5.993008253864266e-10]
common.observed.hess[[-123663.45184242773, -8778.09820158089, -6003.645550199473, 23751.739563138715], [-8778.09820158089, -57080.550452863754, -32570.068969008953, 25780.474687993938], [-6003.645550199473, -32570.06896900896, -37998.541579006036, 20386.33437134052], [23751.739563138715, 25780.47468799393, 20386.33437134052, -28584.359810557846]]
common.observed.iterations3
common.observed.ll-21422.248873937584
common.observed.ll0-21423.37478671151
common.observed.lr2.251825547849876
common.observed.maxabs0.02491056859693656
common.observed.score_norm9.65326813924808e-14
common.observed.status"OK"
common.observed.theta[0.5038761451354012, -0.004445073436760983, 0.005417485783030145, -0.008226571455678964]
common.observed_map_cells_reproduced648
common.wald.amplitude_approx_95_envelope[0.0, 0.07681694449554513]
common.wald.amplitude_point0.02161335771997713
common.wald.chi2_df3_crit7.8147279032511765
common.wald.covariance_b_3x3[[4.0184225507941266e-05, -2.3152290703796685e-05, 2.1768205112819615e-05], [-2.3152290703796712e-05, 5.816574655586314e-05, 2.3347877971422715e-05], [2.1768205112819588e-05, 2.3347877971422745e-05, 8.215445168592784e-05]]
common.wald.delta_b_radial0.027601793387784
common.wald.eigenvalues[1.0625271280833713e-05, 7.238900212022691e-05, 9.749015034867161e-05]
common.wald.is_approximatetrue
common.wald.lambda_max9.749015034867161e-05
full.argmax_axis_ra_dec[285, -75]
full.codes.below_min0
full.codes.valid648
full.codes.void_tie0
full.covariance_4x4[[6.385488201063234e-06, 1.651514297312687e-06, 2.0166008062890805e-06, 8.026926452789328e-06], [1.6515142973126874e-06, 2.5209061245658246e-05, -1.4398305373974172e-05, 1.3834677691239247e-05], [2.016600806289079e-06, -1.4398305373974178e-05, 3.65264212707629e-05, 1.4768466490397526e-05], [8.026926452789326e-06, 1.3834677691239245e-05, 1.476846649039753e-05, 5.177817420073338e-05]]
full.cw24644
full.direction_dec_deg-76.31492067510122
full.direction_ra_deg273.234100413496
full.handedness_amplitude0.016487240025423112
full.labels"approximate Wald covariance/envelope; direction and arg-max axis descriptive only"
full.n49007
full.observed.argmax_axis64
full.observed.convergedtrue
full.observed.errornull
full.observed.grad[-1.7709167465795872e-10, -8.454198152530949e-11, -3.6271537957715875e-11, 1.0194917539041854e-10]
full.observed.hess[[-196041.5650978347, -11448.11034209877, -8154.480638880952, 35776.103428582865], [-11448.11034209877, -90769.07897882833, -51625.18956527777, 40752.28619914356], [-8154.4806388809575, -51625.189565277775, -60322.12834175354, 32263.37412559291], [35776.103428582865, 40752.28619914356, 32263.37412559291, -44950.35777725278]]
full.observed.iterations3
full.observed.ll-33967.368480004974
full.observed.ll0-33968.258263884054
full.observed.lr1.7795677581598284
full.observed.maxabs0.020386140738532177
full.observed.score_norm4.5726912321874596e-15
full.observed.status"OK"
full.observed.theta[0.5014800678563769, 0.00011002861281070668, -0.0019472117843950159, -0.008009589932390709]
full.observed_map_cells_reproduced648
full.wald.amplitude_approx_95_envelope[0.0, 0.06033912110328302]
full.wald.amplitude_point0.016487240025423112
full.wald.chi2_df3_crit7.8147279032511765
full.wald.covariance_b_3x3[[2.5209061245658246e-05, -1.4398305373974172e-05, 1.3834677691239247e-05], [-1.4398305373974178e-05, 3.65264212707629e-05, 1.4768466490397526e-05], [1.3834677691239245e-05, 1.476846649039753e-05, 5.177817420073338e-05]]
full.wald.delta_b_radial0.02192594053892995
full.wald.eigenvalues[6.658109341536125e-06, 4.533749140892431e-05, 6.151805596669409e-05]
full.wald.is_approximatetrue
full.wald.lambda_max6.151805596669409e-05

verify_calibration summary

fieldvalue
checks.DEV_direction_fourier_currenttrue
checks.DEV_direction_sparcfire_retainedtrue
checks.DEV_jointtrue
checks.DEV_published_headlinetrue
checks.DEV_sparcfire_matches_currenttrue
checks.DEV_unique_disjointtrue
checks.EVAL_direction_fourier_currenttrue
checks.EVAL_direction_sparcfire_retainedtrue
checks.EVAL_jointtrue
checks.EVAL_published_headlinetrue
checks.EVAL_sparcfire_matches_currenttrue
checks.EVAL_unique_disjointtrue
checks.parent_countstrue
checks.producer_completetrue
checks.same_pinned_inputstrue
checks.strata_declination_degtrue
checks.strata_fourier_abs_chitrue
checks.strata_magnitude_dered_mag_rtrue
checks.strata_nobs_rtrue
checks.strata_size_shape_rtrue
checks.tail_fixturetrue
failed_checks0
inputs_sha256.calibration_products"996462d1e3157a934184445ce2ce7442798f86c06256ec31b8988d08e3628789"
inputs_sha256.calibration_results"71e9c4e156ff0f05753f06715bed2d0b5b08c091d1caa757b9e1887a27796c73"
inputs_sha256.calibration_terminal"c0f8279242e7a0dfc5bc9420fd5102295fd85aa6e41a872fbf8b6ac695633808"
inputs_sha256.fourier"528ed2c7cee539928b88882fa080267bb13a48232a89891528bde11deefe397e"
inputs_sha256.gz_dev_joined"b5161211aca1b1b2dd41bf17edbac0f7d69bee69f595b671e969355ea6448322"
inputs_sha256.gz_eval_joined"3ec2fc4c4d0f0e912f73bf3d304598449a04a0324b9c5ec05b9de971cf9f197c"
inputs_sha256.photometry"029fc3db47a7421c6f7c76ade9413e02115a20620f0a16b833fba7478a745cd8"
inputs_sha256.sparcfire"537ea0107d9a5bf7036f1bc6b20fec8418d0b0987b049c4728f6c1c7cb3b6483"
inputs_sha256.targets"bd9eea01b528389a3d74932fdd1d828866f8475bcc3b2c61d62149054bd8bd38"
producer_state"COMPLETE"
public_idsfalse
rng_calls0
scope"Independent recomputation of counts, strata and interval equations from the same pinned inputs. Numerical agreement only: not a method acceptance, not a calibration transfer, not physical truth."
stage"verify_calibration"
state"COMPLETE"
verdict"VERIFIED"

verify_inference summary

fieldvalue
interpretation"Numerical/algebra verification at saved estimates only. Inference still rests on conditional label exchangeability and the stated model; no acceptance is implied."
new_random_draws0
optima_certified2050
optimisations_performed0
results_sha256"65d023178ee3b072005c9bd5bbe8b8dc8bd861e9b0a0b286c54a60e4479e312d"
samples.common.cw15622
samples.common.draws_certified1024
samples.common.max_null_score_norm1.9697662874596403e-11
samples.common.maxabs_exact_rational_ge568
samples.common.n30910
samples.common.null_ge_observed.LR519
samples.common.null_ge_observed.maxabs568
samples.common.observed_score_norm1.0315699071504528e-13
samples.common.valid_axes648
samples.full.cw24644
samples.full.draws_certified1024
samples.full.max_null_score_norm6.155938246206601e-10
samples.full.maxabs_exact_rational_ge539
samples.full.n49007
samples.full.null_ge_observed.LR662
samples.full.null_ge_observed.maxabs539
samples.full.observed_score_norm9.35542702205375e-15
samples.full.valid_axes648
stage"verify_inference"
state"COMPLETE"

Retained SpArcFiRe dipole content

fieldvalue
amplitude_display"2.27%"
amplitude_percent2.2715183320002987
approximate_95_wald_percent[0.0, 7.792170674924069]
descriptive_apex_dec_deg-51.536294572256274
descriptive_apex_ra_deg262.53291139112946
likelihood_ratio1.421178307813534
no_physical_spin_claimtrue
old_family"M17 retained unchanged"
p_display"0.684"
p_value0.6839024390243903
retained_hemispheres["X_pos", "X_neg", "Z_pos", "Z_neg"]
science_results_sha256"1157f89952115899f14e512f1b51c2d912be51f0b3b56914046b637fea474d30"
source_sha256"69ec0748c3ed9ad59eaced8faaf4ce13d4d82685cff924751c05342772c484b6"
tail700
title"Dipole primary directional analysis"
total_permutations1024

Retained SpArcFiRe verification summary

fieldvalue
all_draws_preservedtrue
interpretation"Numerical verification only; inference requires exchangeability and stated model."
max_null_score_norm7.507816145321195e-12
new_random_draws0
observed_and_null_optima_certified1025
observed_score_norm1.5228215725797444e-14
passedtrue
permutations1024
results_sha256"1157f89952115899f14e512f1b51c2d912be51f0b3b56914046b637fea474d30"
stage"verify"
state"COMPLETE"