Commit 1bfa71e6ec9569fa49986adb3a1a66ca0f10b393

Authored by Josh Cardenzana
Committed by Jürgen Knödlseder
1 parent 30fe50a9

Add comments to csresmap fix (#2136)

Removed a couple of unnecessary computations and added comments to the code.
Showing 1 changed file with 13 additions and 5 deletions
cscripts/csresmap.py
... ... @@ -246,19 +246,27 @@ class csresmap(ctools.cscript):
246 246 # Compute sign map
247 247 signmap = (self._resmap - modelmap).sign()
248 248  
249   - # Compute logarithm of map. For that we mask pixels
250   - #logmap = self._resmap/modelmap
251   - logmap = self._resmap.copy() # Python 3.x kluge
252   - logmap /= modelmap
253   - for i in range(logmap.npix()):
  249 + # Loop over every bin in the map
  250 + for i in range(self._resmap.npix()):
  251 +
  252 + # If the model value > 0.0 do the computation as normal
254 253 model_val = modelmap[i]
255 254 if model_val > 0.0:
  255 +
  256 + # If the data value is also > 0 then proceed as normal
256 257 data_val = self._resmap[i]
257 258 if data_val > 0.0:
  259 + # Compute the significance^2 and save it to the map
258 260 log_val = math.log(data_val/model_val)
259 261 self._resmap[i] = (data_val*log_val) + model_val - data_val
  262 +
  263 + # If the data value is less than zero, then compute the
  264 + # reduced value of the above expression. This is necessary
  265 + # to avoid computing log(0).
260 266 else:
261 267 self._resmap[i] = model_val
  268 +
  269 + # If the model value is zero, hard-code the significance to 0
262 270 else:
263 271 self._resmap[i] = 0.0
264 272  
... ...