If some MPI processes are left unused (for example, while using attribute based detector blocks), it now breaks the workflow at many places. I am listing here some of them that I found:
Traceback (most recent call last):
File "/mnt/Data/Projects/uniroma2/coding/dev_cosmomap2/playground/lbsim_set_n_blocks/mpi_set_n_blocks_test2.py", line 117, in <module>
sim.prepare_pointings()
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 250, in profile_wrapper
result = function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 1312, in prepare_pointings
prepare_pointings(
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/pointings_in_obs.py", line 46, in prepare_pointings
assert all(m is None for m in cur_obs.mueller_hwp), (
^^^^^^^^^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable
Traceback (most recent call last):
File "/mnt/Data/Projects/uniroma2/coding/dev_cosmomap2/playground/lbsim_set_n_blocks/mpi_set_n_blocks_test2.py", line 167, in <module>
binned_maps = sim.make_binned_map(nside)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 250, in profile_wrapper
result = function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 1726, in make_binned_map
return make_binned_map(
^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 330, in make_binned_map
nobs_matrix = _build_nobs_matrix(
^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 209, in _build_nobs_matrix
cur_weights = get_map_making_weights(cur_obs, check=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/common.py", line 118, in get_map_making_weights
assert np.all(
^^^^^^^
AssertionError: Not all the detectors' weights are positive: [0.]
Traceback (most recent call last):
File "/mnt/Data/Projects/uniroma2/coding/dev_cosmomap2/playground/lbsim_set_n_blocks/mpi_set_n_blocks_test2.py", line 167, in <module>
binned_maps = sim.make_binned_map(nside)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 250, in profile_wrapper
result = function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 1726, in make_binned_map
return make_binned_map(
^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 330, in make_binned_map
nobs_matrix = _build_nobs_matrix(
^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 224, in _build_nobs_matrix
pixidx_all, polang_all = _compute_pixel_indices(
^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/common.py", line 206, in _compute_pixel_indices
assert len(pol_angle_detectors) == num_of_detectors
^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: object of type 'int' has no len()
Up to this point, patching up was trivial. But it is not trivial for the following (and maybe more) issue:
Traceback (most recent call last):
File "/mnt/Data/Projects/uniroma2/coding/dev_cosmomap2/playground/lbsim_set_n_blocks/mpi_set_n_blocks_test2.py", line 167, in <module>
binned_maps = sim.make_binned_map(nside)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 250, in profile_wrapper
result = function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/simulations.py", line 1726, in make_binned_map
return make_binned_map(
^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 330, in make_binned_map
nobs_matrix = _build_nobs_matrix(
^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/binner.py", line 224, in _build_nobs_matrix
pixidx_all, polang_all = _compute_pixel_indices(
^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/mapmaking/common.py", line 215, in _compute_pixel_indices
curr_pointings_det, hwp_angle = pointings(idet)
^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/observations.py", line 859, in get_pointings
return self.pointing_provider.get_pointings(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/pointings.py", line 118, in get_pointings
full_quaternions = (self.bore2ecliptic_quats * detector_quat).slerp(
~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
File "/mnt/Data/Projects/uniroma2/coding/dev_litebirdsim/litebird_sim/litebird_sim/scanning.py", line 480, in __mul__
if (self.start_time is not None) and (other.start_time is not None):
^^^^^^^^^^^^^^^^
AttributeError: 'numpy.int64' object has no attribute 'start_time'
If some MPI processes are left unused (for example, while using attribute based detector blocks), it now breaks the workflow at many places. I am listing here some of them that I found:
Up to this point, patching up was trivial. But it is not trivial for the following (and maybe more) issue: