Model

class pysm.Model(nside, map_dist=None, dataurl=None)[source] [edit on github]

Bases: object

This is the template object for PySM objects.

If a MPI communicator is passed as input and pixel_indices is None, the class automatically distributes the maps across processes. You can implement your own pixel distribution passing both a MPI communicator and pixel_indices, however that won’t support smoothing with libsharp. If libsharp is available, the rings are distributed as expected by libsharp to perform distributed spherical harmonics transforms, see pysm.mpi.distribute_rings_libsharp(), the libsharp grid object is saved in self.libsharp_grid. If libsharp is not available, pixels are distributed uniformly across processes, see pysm.mpi.distribute_pixels_uniformly()

Parameters:
mpi_comm: object

MPI communicator object (optional, default=None).

nside: int

Resolution parameter at which this model is to be calculated.

smoothing_lmax : int

\(\ell_{max}\) for the smoothing step, by default \(2*N_{side}\)

Methods Summary

get_emission(self, freqs[, weights]) This function evaluates the component model at a either a single frequency, an array of frequencies, or over a bandpass.
read_map(self, path[, unit, field]) Wrapper of the PySM read_map function that automatically uses nside, pixel_indices and mpi_comm defined in this Model
read_txt(self, path, \*\*kwargs)

Methods Documentation

get_emission(self, freqs: Unit("GHz"), weights=None) -> Unit("uK_RJ")[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:
output : astropy.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.

read_map(self, path, unit=None, field=0)[source] [edit on github]

Wrapper of the PySM read_map function that automatically uses nside, pixel_indices and mpi_comm defined in this Model

read_txt(self, path, **kwargs)[source] [edit on github]