107 def GetGain(self, receiver, orig_gain, layer_corr_ref, layer_corr_new, layer_names):
108
109 coolid = self.geometry_convertor.getPPMfromReceiver(receiver)
110
111 eta_bin = self.geometry_convertor.getEtaBin(coolid)
112
113 hv_coef_ref = 0.
114 hv_coef_new = 0.
115
116
117
118 if self.geometry_convertor.isCoolEm (coolid):
119
120 is_overlap = self.geometry_convertor.isPPMOverlap(coolid)
121
122
123
124 for n in range(len(layer_names)):
125
126 layer = layer_names[n]
127
129
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]
132
134
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]
137
139
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]
142
144
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]
147
149
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]
152
153
154
155 if self.geometry_convertor.isCoolHad(coolid):
156
157 regions = "EmbFcalHighEta"
158
159
160
161 for n in range(len(layer_names)):
162
163 layer = layer_names[n]
164
166
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]
169
171
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]
174
176
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]
179
181
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]
184
185 pred_gain = orig_gain * (hv_coef_new/hv_coef_ref)
186
187 return pred_gain
188
189
isEmMiddle(layerName, isOverlap)
isEmBack(layerName, isOverlap)
isEmPresampler(layerName)
isHadFirstLayer(layerName, TT_part)
isHadSecondLayer(layerName, TT_part)
isEmFront(layerName, isOverlap)
isHadThirdLayer(layerName, TT_part)
isHadFourthLayer(layerName, TT_part)
isEmOverlapBack(layerName, isOverlap)