Skip to content
No description or website provided.
Python JavaScript CSS
Latest commit 682ac9e Aug 1, 2014 Andrea Zonca year maps
Failed to load latest commit information.
dx9null moving back Sep 25, 2012
html improvements for dx10 Mar 11, 2014
obsolete documentation in readme Aug 24, 2012
tests restructured the ini files, implemented and tested new DXReader Oct 4, 2012
.gitignore production of dx8 Oct 5, 2012
README.md documentation Oct 4, 2012
__init__.py files structure Aug 14, 2012
compute_union_mask.py hfi union mask Dec 21, 2012
differences.py Support for a galaxy mask used to compute chi2 of differences May 23, 2014
dpc_reader.py reorganized reader, now only one class does DPC and NERSC, only rewri… Sep 27, 2012
read_dx10.conf configuration dx10 Jul 27, 2013
read_dx11.conf Support for a galaxy mask used to compute chi2 of differences May 23, 2014
read_dx11d.conf year maps Aug 1, 2014
read_dx8.conf compute union mask moved to own file, renamed conf files Oct 4, 2012
read_dx9.conf compute union mask moved to own file, renamed conf files Oct 4, 2012
read_dx9_nersc.conf updated nersc readers Oct 18, 2013
read_ffp6.conf toast and ffp6 readers Nov 5, 2012
read_hfi_dx10.conf configuration dx10 Jul 27, 2013
read_hfi_dx9_nersc.conf hfi tests and toast Dec 21, 2012
read_pre_dx10_2.conf updated templates Oct 18, 2013
read_pre_dx10_3.conf updated templates Oct 18, 2013
read_toast.conf updated nersc readers Oct 18, 2013
reader.py Support for a galaxy mask used to compute chi2 of differences May 23, 2014
run_dx10.conf configuration dx10 Jul 27, 2013
run_dx11.conf Support for a galaxy mask used to compute chi2 of differences May 23, 2014
run_dx11_serial.conf dx11 Mar 22, 2014
run_dx11d.conf dx11_delta May 24, 2014
run_dx9_10deg.conf run ecn May 7, 2013
run_hfi_dx9_10deg.conf hfi tests and toast Dec 21, 2012
run_null.py Support for a galaxy mask used to compute chi2 of differences May 23, 2014
run_pre_dx10_2.conf pre dx10 2/3 Jun 26, 2013
run_pre_dx10_3.conf pre dx10 2/3 Jun 26, 2013
run_pre_dx10_diode.conf dx10 run May 9, 2013
run_pre_dx10_rad.conf dx10 run May 9, 2013
toast_reader.py reorganized reader, now only one class does DPC and NERSC, only rewri… Sep 27, 2012
utils.py set regression=False in smoothing of variance Apr 20, 2014

README.md

Null tests library for Planck

This code provides a library and example scripts to run null tests on the products of a Planck Data eXchange (DX).

Overview

This repository provides a library for interactive and serial usage:

  • differences.py

and a run script that can run either serially or in parallel:

  • run_null.py

run_null.py requires a configuration file as argument, for example:

  • run_dx9_10deg.conf

which includes all the parameter for the run and also the path to the configuration for reading the maps from disk, in this case:

  • read_dx9.conf

Once the tests have been executed, the user can produce a HTML report using plancknull_generate_html, which is a separate program.

Library

Input maps are read by a class that inherits from reader.BaseMapReader that implements a __call__ method that given channel, frequency, survey, halfrings and requested polarization returns a map (typically either "I" or "IQU"). Therefore the first step with a new dataset is to implement a new reader.BaseMapReader child class, or to use the reader.DXReader with a file patters configuration files, for example read_dx9.conf.

The differences.py library provides 3 functions that create specific null tests, they read the maps thanks to the input reader object:

  • halfrings: halfring differences
  • surveydiff: survey differences
  • chdiff: either channels or horn differences

Those functions can be used interactively, see their docstrings and the example script for reference.

Serial usage

In order to run all null tests serially, just set paral=False and run python run_null.py run_dx9_10deg.conf, this might take few hours, as about 380 maps are produced, the outputs will be stored in the output_folder folder.

Parallelization

The code is trivially parallel, parallelization is achieved using ipython cluster computing features.

See ipython documentation for installing it, it requires to build libzmq and install pyzmq.

Once ipython is installed, you can just:

  • run ipcontroller on the login node
  • submit a pbs job which spawns a number of ipengines (see ipython documentation)
  • open an ipython session on the login node (possibly inside screen) and then launch run run_null.py run_dx9_10deg.conf after setting paral=True in the configuration file.
Something went wrong with that request. Please try again.