Skip to content

Latest commit

 

History

1,613 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sp_validation

Validation of weak-lensing catalogues (galaxy and star shapes and other parameters) produced by ShapePipe.

docs CI container python license code style: ruff contribute code of conduct


Authors: the CosmoStat lab at CEA Paris-Saclay — Martin Kilbinger, Cail Daley, Sacha Guerrini.
Contributors: Emma Ayçoberry, Lucie Baumont, Clara Bonini, Samuel Farrens, Lisa Goh, Axel Guinot, Fabian Hervas Peters.
Contact: martin.kilbinger@cea.fr


This package contains a library and several scripts and notebooks. The main tasks that can be performed by sp_validation are:

  • Shear validation, in particular for the output of the shapepipe pipeline. This task takes on input a shear catalogue with metacal information, performs the calibration and carries out various tests, e.g. PSF leakage. A calibrated shear catalogue is then created on output.
  • Post processing. A number of scripts allow further processing of the above output calibrated shear catalogue.
  • Cosmology validation. This task uses the calibrated shear catalogue from above to run detailed diagnostics useful for further cosmology analysis, e.g. rho- and tau-statistics, E-/B-mode decomposition. Several catalogues can be compared and useful plots are created.
  • Cosmology inference. This task uses the calibrated shear catalogue from a shear validation run and performes cosmology inference using the two-point correlation function.

Repository layout

src/sp_validation/    library code (incl. glass_mock core)
cosmo_val/            validation: code + config        (promoted from notebooks/)
cosmo_inference/      inference: code + config         (cosmosis / cosmocov)
workflow/             ALL analysis — modular Snakemake, multi-person → results/
papers/               final-figure assembly only (PDF, colour, layout)
scripts/              real reduction + runner scripts (catalog builders, masking, glass-mock runners)
scratch/              per-person — ad hoc work + personal workflows (tracked)
results/              analysis products + diagnostic plots (contents gitignored, dir kept)
docs/  tests/  config/

The dividing line is the inputs to a paper figure. Everything up to that point is analysis and lives in workflow/: generic, reusable, modular Snakemake, organized for several people, producing both products and diagnostic plots into a single top-level results/. The figure itself is presentation and lives in papers/<paper>/: final-figure assembly only — PDF, colour, layout — tied to one paper, and free to never touch Snakemake. scratch/<person>/ is personal and ad hoc, tracked because sharing scratch is useful. cosmo_val/ and cosmo_inference/ are the side-by-side code+config homes for the validation and inference stages.

The workflow scales by being modular, not monolithic: Snakemake's module directive imports the shared rules under each run's own config and an output prefix, so runs namespace under results/<name>/ without clobbering one another.

Installation

sp_validation runs from a pre-built container: CI builds an image carrying the full scientific stack on every push and publishes it to the GitHub Container Registry. The bundled spv-container CLI installs and manages your personal copy of it:

git clone https://github.com/CosmoStat/sp_validation.git
cd sp_validation
ln -s "$PWD/src/sp_validation/container.py" ~/.local/bin/spv-container

spv-container pull                                    # fetch the image (~1.5 GB)
spv-container exec python -c "import sp_validation"   # confirm it works

That is the whole install. pull puts the image at its canonical per-user path (~/.cache/sp_validation/), and everything else finds it there — spv-container exec for one-off commands (spv-container exec bash for an interactive shell) and the Snakemake workflow for cluster jobs. spv-container status says what you have and how current it is; spv-container sandbox gives you a writable copy for mid-analysis pip installs. On a cluster, run the pull from a compute node.

To run the analysis workflow (workflow/), see workflow/README.md: Snakemake runs on the host, and the profile puts each job in the container itself. For Docker, development installs, and more depth, see the installation docs.

Flow chart

The following flow chart illustrates the steps required to go from ShapePipe output products to calibrated and well-selected galaxy catalogues.

Flow chart

Run shear validation

See the documentation for instructions on how to set up and run sp_validation.

Post processing

The output(s) of one or more shear validation runs can be processed further with post-processing scripts. See here for details.

Cosmology validation

TBD.

Cosmology inference

See the corresponding documentation.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages