Untitled
python
a month ago
2.2 kB
1
Indexable
Never
def findNeighboursV3(self,data): data_tmp = data.query("DET == {0} and SAM == {1} ".format(self.DET,self.SAM)) ieta_iphi_list = [] if self.DET == 0: n_phi = self.layer.GetNPhiBins phi_max = self.iphi + 1 phi_min = self.iphi - 1 eta_max = self.ieta + 1 eta_min = self.ieta - 1 if self.iphi + 1 == n_phi: phi_max = 0 elif self.iphi == 0: phi_min = n_phi - 1 # сейчас это работает только для ячеек которые находятся полностью с своими соседям внутри определенной части детектора # и/или находятся в середине барраля # ЭТА ФУНКЦИЯ НЕ РАБОТАЕТ В СЛУЧАЕ ЕСЛИ У НАС СОСЕДНИЙ СЛОЙ С ДРУГИМ РАЗМЕРОМ ЯЧЕЕК!!!!!!!!11111111 if self.ieta != 0: #data_tmp = data_tmp.query("AC == {0}".format(self.AC)) ieta_iphi_list = [[eta_min, self.iphi],[eta_max, self.iphi], [self.ieta, phi_min], [self.ieta, phi_max],[eta_max, phi_max],[eta_max, phi_min], [eta_min, phi_min],[eta_min, phi_max ]] ieta_iphi_list = [ieta_iphi_list] elif self.ieta == 0: data_AC1 = data_tmp.query("AC == {0}".format(self.AC)) data_AC2 = data_tmp.query("AC == {0}".format(-1*self.AC)) ieta_iphi_list_AC1 = [[eta_max, self.iphi], [eta_max, phi_max], [eta_max, phi_min], [self.ieta, phi_max], [self.ieta, phi_min]] ieta_iphi_list_AC2 = [[self.ieta, abs(self.iphi-63)], [self.ieta, abs(phi_max-63)],[self.ieta, abs(phi_min-63)]] ieta_iphi_list = [ieta_iphi_list_AC1, ieta_iphi_list_AC2]