Repository navigation
Tomographic covariances use the binned sample's own footprint and area - #458
Merged
Merged
Conversation
Tomographic bins need photometry the whole sample lacks on part of the sky, so the binned sample can cover less area than the catalogue. cov_th.tomo may now carry A and mask; the tomographic OneCovariance ini uses them, falling back to the whole-sample values. On v2 bound 9 the bins cover 3,815 of 4,690 deg²; with the whole-sample area the analytic shape noise came out ~1.32× too large. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JK7o9EG5R1yAPT98V9j2GJ
cov_th.tomo.mask is the binned sample's footprint. The workflow refuses cov_th.tomo.A without it (or the reverse); CatalogCharacterization's per-bin n_eff and the pseudo-Cl OneCovariance call read its area and map, so n_eff and A always describe the same footprint. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JK7o9EG5R1yAPT98V9j2GJ
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tomographic bins need z-band photometry, so the binned sample covers 3,815 of the 4,690 deg² the whole catalogue covers. Every tomographic covariance used the whole-sample area and footprint. On UNIONS v2 (size bound 9), that made the analytic shape-noise term about 1.32× too large.
What changes.
cov_th.tomocan carry the binned sample's footprint, set asmaskandAtogether. When it does, every tomographic consumer reads it:mask_file_lensing;CatalogCharacterization.calculate_n_eff_gal(tomography=True), so per-bin n_eff is a density over that same footprint;The workflow refuses
Awithoutmask, ormaskwithoutA. Entries without them, and every non-tomographic covariance, are unchanged.n_eff and A must describe the same footprint. If only A is corrected, the noise term goes wrong the other way, by (4690/3815)² ≈ 1.51. The refusal and the shared footprint enforce this.
Covariance diagonal / 100-patch jackknife variance against θ, per bin pair (ξ+ solid, ξ− dotted). Grey is the OneCovariance total with the whole-sample A. Black is the re-run with the binned sample's A, mask and n_eff (Nibi job 25591046, same ξ± covariance inputs as this PR). Blue is the predicted shape-noise term. Median over pairs: θ < 10′ 1.33 → 1.08, 12–83′ 1.21 → 1.03. The remaining ~8% at small scales is weight variation inside the footprint, which only pair-count noise captures.
Consequence for the v2 null tests. The corrected covariance turns the joint pure-mode B-mode tests from pass to fail: ξ−B χ²/dof 85/70 (PTE 0.11) → 105/70 (0.005), ξ±B PTE 0.21 → 0.004. COSEBIs move from 0.97 to 0.44. The pseudo-Cℓ covariance (iNKA, catalogue) doesn't depend on area and is unaffected.
Tests.
workflow/tests/test_onecov_inputs.pychecks the per-bin area in the tomographic ini and the whole-sample area in the non-tomographic one, and that A without its footprint is refused. Workflow tests: 20/20.🤖 Generated with Claude Code
https://claude.ai/code/session_01JK7o9EG5R1yAPT98V9j2GJ