SONoiseSimulator

class mapsims.SONoiseSimulator(nside=None, shape=None, wcs=None, ell_max=None, return_uK_CMB=True, sensitivity_mode='baseline', apply_beam_correction=False, apply_kludge_correction=True, homogeneous=False, no_power_below_ell=None, rolloff_ell=50, survey_efficiency=0.2, full_covariance=True, LA_years=5, LA_noise_model='SOLatV3point1', elevation=50, SA_years=5, SA_one_over_f_mode='pessimistic', sky_fraction=None, cache_hitmaps=True, boolean_sky_fraction=False, instrument_parameters=None)[source] [edit on github]

Bases: BaseNoiseSimulator

Simulate noise maps for Simons Observatory

Simulate the noise power spectrum in spherical harmonics domain and then generate a map in microK_CMB or microK_RJ (based on return_uK_CMB)

In the constructor, this object calls the published 20180822 noise simulator and generates the expected noise power spectra for all channels. Then you need to call the simulate method with a channel identifier to create a simulated map.

Parameters:
nsideint

nside of HEALPix map. If None, uses rectangular pixel geometry specified through shape and wcs.

shapetuple of ints

shape of ndmap array (see pixell.pixell.enmap). Must also specify wcs.

wcsastropy.wcs.wcs.WCS instance

World Coordinate System for geometry of map (see pixell.pixell.enmap). Must also specify shape.

ell_maxint

Maximum ell for the angular power spectrum, if not provided set to 3 * nside when using healpix or 10000 * (1.0 / pixel_height_arcmin) when using CAR, corresponding roughly to the Nyquist frequency.

return_uK_CMBbool

True, output is in microK_CMB, False output is in microK_RJ

sensitivity_modestr

Value should be threshold, baseline or goal to use predefined sensitivities

apply_beam_correctionbool

Include the effect of the beam in the noise angular power spectrum

apply_kludge_correctionbool

If True, reduce the hitcount by a factor of 0.85 to account for not-uniformity in the scanning

homogeneousbool

Set to True to generate full-sky maps with no hit-count variation, with noise curves corresponding to a survey that covers a sky fraction of sky_fraction (defaults to 1).

no_power_below_ellint

The input spectra have significant power at low \(\ell\), we can zero that power specifying an integer \(\ell\) value here. The power spectra at \(\ell < \ell_0\) are set to zero.

rolloff_ellint

Low ell power damping, see the docstring of so_noise_models.so_models_v3.SO_Noise_Calculator_Public_v3_1_1.rolloff

survey_efficiencyfloat

Fraction of calendar time that may be used to compute map depth.

full_covariancebool

Whether or not to include the intra-tube covariance between bands. If white noise (atmosphere=False) sims are requested, no covariance is included regardless of the value of full_covariance.

LA_yearsint

Total number of years for the Large Aperture telescopes survey

LA_noise_modelstr

Noise model among the ones available in so_noise_model, “SOLatV3point1” is default, “SOLatV3” is the model released in 2018 which had a bug in the atmosphere contribution

elevationfloat

Elevation of the scans in degrees, the V3.1.1 noise model includes elevation dependence for the LAT. This should reproduced original V3 results at the reference elevation of 50 degrees.

SA_yearsint

Total number of years for the Small Aperture telescopes survey

SA_one_over_f_mode{“pessimistic”, “optimistic”, “none”}

Correlated noise performance of the detectors on the Small Aperture telescopes

sky_fractionoptional,float

If homogeneous is True, this sky_fraction is used for the noise curves.

cache_hitmapsbool

If True, caches hitmaps.

boolean_sky_fraction: bool

If True, determines sky fraction based on fraction of hitmap that is zero. If False, determines sky_fraction from <Nhits>.

instrument_parametersPath or str

See the help of MapSims

Methods Summary

get_survey(tube)

Internal function to get the survey object from the SO noise model code.

Methods Documentation

get_survey(tube)[source] [edit on github]

Internal function to get the survey object from the SO noise model code.