Version 0.14.0
-
Breaking change: Bug in the 1/f noise generation has been corrected. Previously, the frequency array was miscalculated due to an incorrect factor of 2 in the sample spacing passed to the SciPy function fft.rfftfreq. #362.
-
Breaking change:
PointingSys()
now requiresObservation
as an argument. And several functions to add pointing systematics are merged intoleft_multiply_syst_quats()
. -
Breaking change: Redefinition (ωt instead of 2ωt) of the hwp angle returned by
get_pointings()
. Change in the pointing returned byObservation.get_pointings()
, now behaving as it was before this commit. Documentation updated accordingly. #340 -
Breaking change: Change to the pointing API #358, in detail:
-
DetectorInfo has three new attributes: pol_angle_rad (polarization angle), pol_efficiency (polarization efficiency)and mueller_hwp (mueller matrix of the HWP).
-
get_pointings() return only the orientation ψ of the detector, the polarization angle is a separate variable stored in the
Observation
class. The same class also handles the mueller_hwp for each detector, and it has a new bool variablehas_hwp
that is set to true if an HWP object is passed toprepare_pointings()
. -
The mock vPTEP IMo has been updated accordingly.
-
The
HWP
class has a new field called mueller, that contains the mueller matrix of the HWP. -
The function
scan_map()
now handles three possible algebras: (i) no HWP, (ii) ideal HWP, (iii) generic optical chain.
-
-
Implementation of distributing detectors across the MPI processes by grouping them according to given attributes #334
-
Restructure the manual and use a new, cleaner style #342
-
Module for including nonlinearity in the simulations #331
-
Improve the documentation of the binner and the destriper #333
-
Make the code compatible with Python 3.12 #332
-
plot_fp.py which visualizes focal plane and
DetectorInfo
is implemented. Also it can generate a dector list file by clicking visualized detectors. The function is executable by:python -m litebird_sim.plot_fp
#345 -
Simulation.add_noise() uses self.random as default random number generator #349
-
Mbs updated, code aligned to pysm 3.4.0, CO lines included plus other new foreground models #347