Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
a6cb3c1
catalog: metacal bitmasks use FITS format K, not I or the dead FLAGS_…
cailmdaley Sep 26, 2026
469d82a
catalog: metacal bitmasks as int32; reduce_mem never narrows integers
cailmdaley Sep 28, 2026
9423e93
catalog: layout-agnostic campaign and star catalogue readers
cailmdaley Sep 10, 2026
c755cdd
galaxy: replace IMAFLAGS_ISO cut with config-driven mask columns
cailmdaley Sep 10, 2026
afbc457
retire patch logic (#340)
cailmdaley Sep 10, 2026
df6f1ac
tests: campaign readers, mask cut, and campaign merge
cailmdaley Sep 10, 2026
db93958
catalog: safe, low-memory campaign reading and merging
Sep 10, 2026
03e1dac
config: v2 mask configuration with the MASK_n* columns
Sep 10, 2026
e75f5cb
scripts: finish the campaign rename in configs and entry points
Sep 10, 2026
7f73c83
tests, docs: pin row order, cover the new failure modes
Sep 10, 2026
5c4a636
catalog: promote dtypes across tiles, stream the campaign merge
Sep 10, 2026
335b1a7
config: restore the r-band coverage cut in the v2 mask config
Sep 10, 2026
1fbc27a
scripts: cheaper star mask cut, campaign-derived leakage labels
Sep 10, 2026
81fc03e
masks: treat n64 as a reason bit, not r-band coverage
Sep 10, 2026
98f68a0
ruff autofix (format + safe lint fixes)
github-actions[bot] Sep 10, 2026
aacaca8
galaxy: cut never-fit objects on NGMIX_N_EPOCH explicitly
Sep 10, 2026
dc6eef8
readers: NaN-safe mask cut, star-catalogue provenance and count check
Sep 10, 2026
da09791
ruff autofix (format + safe lint fixes)
github-actions[bot] Sep 10, 2026
eab83e5
config: cut never-fit objects in the v2 mask config too
Sep 10, 2026
8d2e15d
mask_v2.0: FLAGS <= 2, matching the image-sims selection
cailmdaley Sep 17, 2026
1217818
combine_results: drop unused n_campaign
cailmdaley Sep 24, 2026
1ea6ef5
grammar: ShapePipe v1->v2 column-grammar adapter, wired into rho/tau
cailmdaley Sep 28, 2026
0863142
cat_config: psf/shear columns match their files; guard it on candide
cailmdaley Sep 28, 2026
39d9096
rho_tau: build rho/tau catalogues without a scalar-bool mask
cailmdaley Sep 28, 2026
2c6eb14
calibration: read v1 and v2 products through the grammar adapter
cailmdaley Sep 28, 2026
2194a4b
uv.lock: shear_psf_leakage develop@00e38c4 (loaded-catalogue rho/tau …
cailmdaley Sep 28, 2026
34c497b
grammar: v1 no-shear reconvolved-PSF size from NGMIX_Tpsf_1P
cailmdaley Sep 28, 2026
f7aea5f
grammar: select rows of an HDF5-backed view in one pass; cache its dtype
cailmdaley Sep 28, 2026
ea09ed7
catalog.group_dtype: name the tables that lack a column
cailmdaley Sep 28, 2026
e3f2c3f
masks: refuse a mask config's dat_ext list; masking keeps IMAFLAGS_ISO
cailmdaley Sep 28, 2026
b9046e7
galaxy.mask_cut: a NaN mask value masks the object, as the config cut…
cailmdaley Sep 28, 2026
ea8820f
Comments describe the present; calibration configs' relative input_path
cailmdaley Sep 28, 2026
330ac8d
tests: calibration path reproduces a v1.4.6.3 release window (candide…
cailmdaley Sep 28, 2026
9f86152
Drop the SExtractor-only columns DR6 catalogue mode lacks
cailmdaley Sep 29, 2026
9a4c370
Merge develop and address Martin's mask review on #343
cailmdaley Sep 30, 2026
a619c90
Describe halo bit identities and guard independent mask cuts
cailmdaley Sep 30, 2026
cb657ad
Merge develop into feat/v2-catalogue-readers
cailmdaley Oct 1, 2026
2b56509
Name mask columns MASK_{bit}_{label}
cailmdaley Oct 1, 2026
34f9d0a
Retire the remaining patch-era scripts and docs
cailmdaley Oct 1, 2026
82349f8
One catalogue reader; column names configurable through column_map
cailmdaley Oct 1, 2026
b1fbf84
Read lazily where columns are not named; column_map fixes
cailmdaley Oct 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -206,3 +206,6 @@ report.md
check2.txt
format2.txt
residual.md

# Generated by docs/source/_ext/catalogue_columns.py from config/columns/
docs/source/catalogue_columns.md
7 changes: 4 additions & 3 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ is the container (full scientific stack pre-built). For a local dev environment:
- `cosmo_val.py`: Cosmology validation routines
- `cosmology.py`: Cosmological calculations and theory
- `galaxy.py`: Galaxy-specific processing
- `io.py`: Input/output utilities
- `grammar.py`: Column grammars: ShapePipe v1 -> v2 adapter and `column_map` renames (`adapt`)
- `io.py`: Input/output; the catalogue reader (`read_catalogue`, `Catalogue`), which detects FITS/HDF5 layouts
- `plots.py`: Plotting functions
- `rho_tau.py`: Rho and tau statistics calculations
- `statistics.py`: Cosmology-independent statistics (jackknife resampling, χ²/PTE, covariance↔correlation, OneCovariance reshaping)
Expand All @@ -67,10 +68,10 @@ snakemake --profile workflow/profiles/candide -s workflow/Snakefile \

### Configuration
Main configuration in `scripts/calibration/params.py` with parameters:
- `name`: Field/patch identifier
- `campaign`: Campaign name (the ShapePipe tile list); names the input products
- `data_dir`: Input data directory
- `galaxy_cat_path`: Galaxy catalogue path (.fits/.hdf5)
- `star_cat_path`: Star catalogue path (.fits)
- `star_cat_path`: Star catalogue path (.hdf5, or a v1 .fits)

### Key Dependencies
- astropy, numpy, scipy for core calculations
Expand Down
14 changes: 7 additions & 7 deletions config/calibration/mask_from_compr_v1.X.11.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:

# Duplicate objects
Expand All @@ -24,29 +24,29 @@ dat:
kind: greater_equal
value: 2

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
14 changes: 7 additions & 7 deletions config/calibration/mask_from_compr_v1.X.6.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# Duplicate objects
- col_name: overlap
Expand All @@ -23,29 +23,29 @@ dat:
kind: greater_equal
value: 2

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
14 changes: 7 additions & 7 deletions config/calibration/mask_v1.X.10.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# SExtractor flags
- col_name: FLAGS
Expand Down Expand Up @@ -57,29 +57,29 @@ dat:
kind: not_equal
value: -10

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
14 changes: 7 additions & 7 deletions config/calibration/mask_v1.X.11.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# SExtractor flags
- col_name: FLAGS
Expand Down Expand Up @@ -57,29 +57,29 @@ dat:
kind: not_equal
value: -10

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
18 changes: 9 additions & 9 deletions config/calibration/mask_v1.X.2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# SExtractor flags
- col_name: FLAGS
Expand Down Expand Up @@ -57,40 +57,40 @@ dat:
kind: not_equal
value: -10

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)
# Faint star halos
- col_name: 1_Faint_star_halos
- col_name: MASK_1_Faint_star_halos
label: "Faint star halos"
kind: equal
value: False

# Bright star halos
- col_name: 2_Bright_star_halos
- col_name: MASK_2_Bright_star_halos
label: "Bright star halos"
kind: equal
value: False

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
14 changes: 7 additions & 7 deletions config/calibration/mask_v1.X.3.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# SExtractor flags
- col_name: FLAGS
Expand Down Expand Up @@ -57,29 +57,29 @@ dat:
kind: not_equal
value: -10

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
18 changes: 9 additions & 9 deletions config/calibration/mask_v1.X.4.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ params:
verbose: True

# Masks
## Using columns in 'dat' group (ShapePipe flags)
## Cuts on catalogue columns, in the v2 grammar (sp_validation.grammar)
dat:
# SExtractor flags
- col_name: FLAGS
Expand Down Expand Up @@ -57,40 +57,40 @@ dat:
kind: not_equal
value: -10

## Using columns in 'dat_ext' group (post-processing flags)
dat_ext:
# Healsparse mask bits and post-processing columns (the comprehensive
# HDF5's data_ext dataset)
# Faint star halos
- col_name: 1_Faint_star_halos
- col_name: MASK_1_Faint_star_halos
label: "Faint star halos"
kind: equal
value: False

# Bright star halos
- col_name: 2_Bright_star_halos
- col_name: MASK_2_Bright_star_halos
label: "Bright star halos"
kind: equal
value: False

# Stars
- col_name: 4_Stars
- col_name: MASK_4_Stars
label: "Stars"
kind: equal
value: False

# Manual mask
- col_name: 8_Manual
- col_name: MASK_8_Manual
label: "manual mask"
kind: equal
value: False

# r-band footprint
- col_name: 64_r
- col_name: MASK_64_r
label: "r-band imaging"
kind: equal
value: False

# Maximask
- col_name: 1024_Maximask
- col_name: MASK_1024_Maximask
label: "maximask"
kind: equal
value: False
Expand Down
Loading
Loading