9 std::vector<Gep::Cluster> customTowers;
12 static constexpr int nEta{98};
13 static constexpr int nPhi{64};
19 for (
const auto* iClust : clusters) {
23 for (; cellBegin != cellEnd; ++cellBegin) {
24 unsigned int cellIndex = cellBegin.
index();
25 if (cellIndex >= cells.size())
continue;
26 const CaloCell* cell = cells[cellIndex];
30 int eta_index =
static_cast<int>(std::floor(cell->eta() * 10)) + 49;
31 int phi_index =
static_cast<int>(std::floor(cell->phi() * 10)) + 32;
34 if (eta_index < 0 || eta_index >= nEta || phi_index < 0 || phi_index >= nPhi)
continue;
37 TLorentzVector cellVector;
38 cellVector.SetPtEtaPhiE(cell->energy() * 1.0 / TMath::CosH(cell->eta()),
39 cell->eta(), cell->phi(), cell->energy());
40 tow[eta_index][phi_index].vec += cellVector;
45 for (
int i = 0; i < nEta; ++i) {
46 for (
int j = 0; j < nPhi; ++j) {
47 if (tow[i][j].
vec.Et() > 0) {
48 customTowers.push_back(tow[i][j]);