Difference between revisions of "SMICA propagation code"

From Planck Legacy Archive Wiki
Jump to: navigation, search
(SMICA-weights-propagation)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  
  
= SMICA-weights-propagation =
+
= Propagation through the SMICA pipeline =
  
The script `smica_coadd` allows to combine a set of Planck frequency maps into a single component separated like map using SMICA weights. It has been used by the Planck team to propagate CMB and noise Monte Carlo realizations to get the set of SMICA simulations.
+
We provide code and ancillary data for reproducing the SMICA
 +
filtering, that is, the propagation from simulated input (frequency
 +
channel maps) to output (CMB map). This propagation is done by linear
 +
combination of the input maps in the harmonic domain with
 +
mutipole-dependent weights.
  
== Dependancies ==
+
The code is only intended to be used with simulations, not real
 +
data. It is not meant to reproduce the SMICA Planck maps. The
 +
propagation code is a (fast) simplified version of the SMICA pipeline,
 +
which does not include, for example, the point sources pre-processing
 +
and other complications due to the presence of galactic and extra
 +
galactic foreground emission.
 +
 
 +
The deliverable consists of a single archive file which contains a
 +
python script as well as all required ancillary data (harmonic weights
 +
ans transition mask).
 +
 
 +
It can be retrieved from the Planck Legacy Archive http://pla.esac.esa.int/pla
 +
under "Software, beams and instrument model" and then "Software"
 +
or directly from:
 +
 
 +
http://pla.esac.esa.int/pla/aio/product-action?SOFTWARE.FILE_ID=COM_Code_SMICA-weights-propagation_R3.00.tar.gz
 +
 
 +
== Dependencies ==
  
 
The script is written in Python2 and depends on several Python modules:
 
The script is written in Python2 and depends on several Python modules:
  
* healpy >= 1.7.4 (https://healpy.readthedocs.io/en/latest/)
+
* healpy >= 1.7.4 (https://healpy.readthedocs.io/en/latest/) ;
* pyfits >= 3.4 (https://pythonhosted.org/pyfits/)
+
* pyfits >= 3.4 (https://pythonhosted.org/pyfits/) ;
* numpy
+
* numpy .
  
 
== Ancillary data ==
 
== Ancillary data ==
  
Ancillary data provided with the script correspond to:
+
Ancillary data provided along with the script corresponds to:
* `transition_mask.fits.gz`: definition of the Xhigh area (see Planck Collaboration IV. 2018 for a description of the SMICA pipeline)
+
* "transition_mask.fits.gz": definition of the Xhigh area (see Planck Collaboration IV. 2018 for a description of the SMICA pipeline);
* `weights_T_smica_R3.00_<X>.txt` with X in `["Xhigh", "Xfull"]`: harmonic weights to be used in temperature.
+
* "weights_T_smica_R3.00_<X>.txt" with X in `["Xhigh", "Xfull"]`: harmonic weights to be used in temperature;
* `weights_EB_smica_R3.00.txt`: harmonic weights to be used in polarization.
+
* "weights_EB_smica_R3.00.txt": harmonic weights to be used in polarization.
  
 
== Input data ==
 
== Input data ==
  
Input data consist in a set of 9 Planck frequency maps, having the same properties than the Planck simulation maps:
+
Input data consist of a set of nine Planck frequency maps, having the same properties as the Planck simulation maps.
  
* '''Units''': maps should be in `K_CMB` units, except for the 545GHz and 857GHz maps which should be in `MJy/sr` (conversion factors are explicitly given in the code).
+
* '''Units''', maps should be in "K_CMB" units, except for the 545-GHz and 857-GHz maps, which should be in "MJy/sr" (conversion factors are explicitly given in the code).
  
* '''Beam convolution''': the weights include a beam correction necessary to put all the maps at the same resolution. The beam window functions that we used are provided within the PLA, and can be used to generate new simulations.
+
* '''Beam convolution'''. the weights include a beam correction necessary to put all the maps at the same resolution. The beam window functions that we used are provided within the PLA, and can be used to generate new simulations.
 
   
 
   
* '''Calibration''': As LFI beam window functions have been de-normalized to account for calibration correction of real data, our weights also include a 're-normalization' of LFI beam window function. Therefore, this can be ignored by users when generating new simulations.  
+
* '''Calibration''': Since LFI beam window functions have been de-normalized to account for calibration correction of real data, our weights also include a "re-normalization" of the LFI beam window function. Therefore, this can be ignored by users when generating new simulations.  
  
The script provides a basic routine (named `my_freq_map_finder` L45) to retrieve input files from a given directory, which should be customized by users to their needs.
+
The script provides a basic routine (named "my_freq_map_finder" L45) to retrieve input files from a given directory, which should be customized by users to match their needs.
  
 
== Examples ==
 
== Examples ==
Line 37: Line 58:
 
  smica_coadd input_directory output_directory 0 1000 --polar
 
  smica_coadd input_directory output_directory 0 1000 --polar
  
will process sequencially the realizations number #0 to #1000 from the input directory. One can call the script in a parallel mode, where realization indices are splitted over processes or threads.
+
will process sequencially the realizations numbered 0 to 1000 from the input directory. One can call the script in a parallel mode, where realization indices are split over processes or threads.
  
 
== Output data ==
 
== Output data ==
  
 
The outputs of a temperature run are FITS files of one column corresponding to intensity pixel values.  
 
The outputs of a temperature run are FITS files of one column corresponding to intensity pixel values.  
The outputs of a polarizatoin run are FITS files of two columns for Q and U stokes parameters.
+
The outputs of a polarization run are FITS files of two columns for Q and U stokes parameters.
 
Units of the output maps are given in the UNITS header keyword.
 
Units of the output maps are given in the UNITS header keyword.

Latest revision as of 05:31, 4 July 2019


Propagation through the SMICA pipeline[edit]

We provide code and ancillary data for reproducing the SMICA filtering, that is, the propagation from simulated input (frequency channel maps) to output (CMB map). This propagation is done by linear combination of the input maps in the harmonic domain with mutipole-dependent weights.

The code is only intended to be used with simulations, not real data. It is not meant to reproduce the SMICA Planck maps. The propagation code is a (fast) simplified version of the SMICA pipeline, which does not include, for example, the point sources pre-processing and other complications due to the presence of galactic and extra galactic foreground emission.

The deliverable consists of a single archive file which contains a python script as well as all required ancillary data (harmonic weights ans transition mask).

It can be retrieved from the Planck Legacy Archive http://pla.esac.esa.int/pla under "Software, beams and instrument model" and then "Software" or directly from:

http://pla.esac.esa.int/pla/aio/product-action?SOFTWARE.FILE_ID=COM_Code_SMICA-weights-propagation_R3.00.tar.gz

Dependencies[edit]

The script is written in Python2 and depends on several Python modules:

Ancillary data[edit]

Ancillary data provided along with the script corresponds to:

  • "transition_mask.fits.gz": definition of the Xhigh area (see Planck Collaboration IV. 2018 for a description of the SMICA pipeline);
  • "weights_T_smica_R3.00_<X>.txt" with X in `["Xhigh", "Xfull"]`: harmonic weights to be used in temperature;
  • "weights_EB_smica_R3.00.txt": harmonic weights to be used in polarization.

Input data[edit]

Input data consist of a set of nine Planck frequency maps, having the same properties as the Planck simulation maps.

  • Units, maps should be in "K_CMB" units, except for the 545-GHz and 857-GHz maps, which should be in "MJy/sr" (conversion factors are explicitly given in the code).
  • Beam convolution. the weights include a beam correction necessary to put all the maps at the same resolution. The beam window functions that we used are provided within the PLA, and can be used to generate new simulations.
  • Calibration: Since LFI beam window functions have been de-normalized to account for calibration correction of real data, our weights also include a "re-normalization" of the LFI beam window function. Therefore, this can be ignored by users when generating new simulations.

The script provides a basic routine (named "my_freq_map_finder" L45) to retrieve input files from a given directory, which should be customized by users to match their needs.

Examples[edit]

smica_coadd input_directory output_directory 0 1000
smica_coadd input_directory output_directory 0 1000 --polar

will process sequencially the realizations numbered 0 to 1000 from the input directory. One can call the script in a parallel mode, where realization indices are split over processes or threads.

Output data[edit]

The outputs of a temperature run are FITS files of one column corresponding to intensity pixel values. The outputs of a polarization run are FITS files of two columns for Q and U stokes parameters. Units of the output maps are given in the UNITS header keyword.

Cosmic Microwave background

Planck Legacy Archive

(Planck) Low Frequency Instrument

Flexible Image Transfer Specification