InterpolatingComponent

class pysm3.InterpolatingComponent(path, input_units, nside, max_nside=None, interpolation_kind='linear', map_dist=None, verbose=False)[source] [edit on github]

Bases: Model

PySM component interpolating between precomputed maps

In order to save memory, maps are converted to float32, if this is not acceptable, please open an issue on the PySM repository. When you create the model, PySM checks the folder of the templates and stores a list of available frequencies. Once you call get_emission, maps are read, ud_graded to the target nside and stored for future use. This is useful if you are running many channels with a similar bandpass. If not, you can call cached_maps.clear() to remove the cached maps.

It always returns a IQU map to avoid broadcasting issues, even if the inputs are I only.

Parameters:
pathstr

Path should contain maps named as the frequency in GHz e.g. 20.fits or 20.5.fits or 00100.fits

input_unitsstr

Any unit available in PySM3 e.g. “uK_RJ”, “uK_CMB”

nsideint

HEALPix NSIDE of the output maps

interpolation_kindstring

Currently only linear is implemented

map_distpysm.MapDistribution

Required for partial sky or MPI, see the PySM docs

verbosebool

Control amount of output

Methods Summary

get_emission(freqs[, weights])

This function evaluates the component model at a either a single frequency, an array of frequencies, or over a bandpass.

get_filenames(path)

read_map_by_frequency(freq)

read_map_file(freq, filename)

Methods Documentation

get_emission(freqs: Unit('GHz'), weights=None)[source] [edit on github]

This function evaluates the component model at a either a single frequency, an array of frequencies, or over a bandpass.

Parameters:
freqs: scalar or array astropy.units.Quantity

Frequency at which the model should be evaluated, in a frequency which can be converted to GHz using astropy.units. If an array of frequencies is provided, integrate using trapz with a equal weighting, i.e. simulate a top-hat bandpass.

weights: np.array, optional

Array of weights describing the frequency response of the instrument, i.e. the bandpass. Weights are normalized and applied in Jy/sr.

Returns:
outputastropy.units.Quantity

Simulated map at the given frequency or integrated over the given bandpass. The shape of the output is (3,npix) for polarized components, (1,npix) for temperature-only components. Output is in uK_RJ.

get_filenames(path)[source] [edit on github]
read_map_by_frequency(freq)[source] [edit on github]
read_map_file(freq, filename)[source] [edit on github]