Scripts and parameter files used in the pair differencing project.
The simulation comprises only the SAT 90 GHz frequency band and spans one observing year.
We simulate the following data:
- noise: atmosphere, instrumental noise
- cmb
We only simulate the first calendar day of each month.
The software packages used are TOAST 3, sotodlib and mappraiser. They are provided as submodules of this repository so that the exact setup can be reproduced easily.
The simulation worfklow, so_mappraiser.py
, is a modified version of a script in sotodlib and can be obtained by running the following command:
patch sotodlib/sotodlib/toast/scripts/so_sim.py -o so_mappraiser.py < so_sim.patch
Unless otherwise noted, all scripts should be run from the root of the repository.
Setup
get_defaults.sh
: Useso_mappraiser.py
to generate a default parameter file for referencesat.toml
: Master parameter file for theso_mappraiser.py
workflowschedule.opti.txt
: Schedule file with a single scanschedule.01.south.txt
: Schedule fileschedule.small.txt
: Truncated schedule file for laptop testsffp10_lensed_scl_100_nside0512.fits
: Input map to be observed during simulation
Tests (laptop: truncated schedule, decimated focal plane)
opti
: Evaluate the optimality of pair-differencing compared to maximum-likelihood (single observation)run.white.uniform.sh
: all detector pairs have the same white noise level (but not detectors in a pair)run.white.variable.sh
: all detectors have different white noise levelsrun.one_over_f.sh
: all detectors have different 1/f noise parameters
syst
: Evaluate the impact of systematic effects on the pair-differencing approachrun.atm.cache.sh
: simulate and cache the atmosphere simulationrun.baseline.sh
: run the baseline configuration (ideal case)run.gains.constant.sh
: run with gain errors which are the same for all detector pairs
Execution (Jean-Zay: full schedule)
slurm/run.atm.cache.slurm
: Simulate and cache the atmosphere simulationslurm/run.baseline.slurm
: Run the baseline configuration (ideal case)slurm/run.gains.constant.slurm
: Run with gain errors which are the same for all detector pairsslurm/run.gains.random.slurm
: Run with Gaussian distributed gain errors
Post-processing
utils.py
: Some utility routinesplot_maps.py
: Produce difference maps and histograms for a given runplot_maps_all.py
: Plot difference maps and histograms for all runs under a given directoryspectrum.py
: Power spectrum routinesget_mask_apo.py
: Create and save a mask (requires NaMaster)compute_spectra.py
: Compute and save power spectra for all runsslurm/run.spectra.slurm
: Job script to compute power spectra