107 def GetGain(self, receiver, orig_gain, layer_corr_ref, layer_corr_new, layer_names):
109 coolid = self.geometry_convertor.getPPMfromReceiver(receiver)
111 eta_bin = self.geometry_convertor.
getEtaBin(coolid)
118 if self.geometry_convertor.isCoolEm (coolid):
120 is_overlap = self.geometry_convertor.isPPMOverlap(coolid)
124 for n
in range(len(layer_names)):
126 layer = layer_names[n]
130 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_em [eta_bin][0]
131 hv_coef_new += layer_corr_new[n] * self.layer_weights_em [eta_bin][0]
135 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_em [eta_bin][1]
136 hv_coef_new += layer_corr_new[n] * self.layer_weights_em [eta_bin][1]
140 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_em [eta_bin][2]
141 hv_coef_new += layer_corr_new[n] * self.layer_weights_em [eta_bin][2]
145 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_em [eta_bin][3]
146 hv_coef_new += layer_corr_new[n] * self.layer_weights_em [eta_bin][3]
150 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_em [eta_bin][4]
151 hv_coef_new += layer_corr_new[n] * self.layer_weights_em [eta_bin][4]
155 if self.geometry_convertor.isCoolHad(coolid):
157 regions =
"EmbFcalHighEta"
161 for n
in range(len(layer_names)):
163 layer = layer_names[n]
167 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_had[eta_bin][0]
168 hv_coef_new += layer_corr_new[n] * self.layer_weights_had[eta_bin][0]
172 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_had[eta_bin][1]
173 hv_coef_new += layer_corr_new[n] * self.layer_weights_had[eta_bin][1]
177 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_had[eta_bin][2]
178 hv_coef_new += layer_corr_new[n] * self.layer_weights_had[eta_bin][2]
182 hv_coef_ref += layer_corr_ref[n] * self.layer_weights_had[eta_bin][3]
183 hv_coef_new += layer_corr_new[n] * self.layer_weights_had[eta_bin][3]
185 pred_gain = orig_gain * (hv_coef_new/hv_coef_ref)