6 {
7
8 std::vector<Gep::Cluster> customClusters;
9 (void)cells;
10 for(const auto* iClus : clusters){
11 Gep::Cluster clus;
12 clus.
vec.SetPxPyPzE(iClus->p4().Px(), iClus->p4().Py(),
13 iClus->p4().Pz(), iClus->e());
14 customClusters.push_back(std::move(clus));
15 }
16
17
18 static constexpr int nEta{98};
19 static constexpr int nPhi{64};
20
21 auto tow =
new Gep::Cluster[
nEta][
nPhi]();
22
23
24
25 for (const auto& cluster : customClusters) {
26
27 int eta_index =
static_cast<int>(std::floor(cluster.vec.Eta() * 10)) + 49;
28 int phi_index =
static_cast<int>(std::floor(cluster.vec.Phi() * 10)) + 32;
29
30
31 if (eta_index < 0 || eta_index >= nEta || phi_index < 0 || phi_index >= nPhi) continue;
32
33
35 }
36
37
38 std::vector<Gep::Cluster> customTowers;
39 for (
int i = 0;
i <
nEta; ++
i) {
40 for (
int j = 0;
j <
nPhi; ++
j) {
41 if (tow[i][j].
vec.Et() > 0) {
42 customTowers.push_back(tow[i][j]);
43 }
44 }
45 }
46 delete[] tow;
47 return customTowers;
48 }
std::vector< size_t > vec
float j(const xAOD::IParticle &, const xAOD::TrackMeasurementValidation &hit, const Eigen::Matrix3d &jab_inv)
constexpr int nEta
Default bin number of eta for vertex map.
constexpr int nPhi
Default bin number of phi for vertex map.