ClusterMET calculation tool for JETM derivations
This tool is designed to perform a simplified MET calculation that avoids the use of METMaker. This MET calculation uses CaloCalTopoClusters that are not available in JETM1 DAODs, and thus the MET must be calculated at the derivation level and saved to event info.
The general form of the calculation is a sum of all clusters, followed by the removal of clusters within R < 0.2 of electrons/muons. The lepton momentum replaces the removed cluster, and pileup is added back into the area of the removed clusters. The addition of pileup to the replacement leptons differs from METMaker, and the lepton selection of R<0.2 is used instead of ghost association.
Local testing on JETM1 and JETM3 AODs has been successful and DAODs of these types have been produced. As only two floats are added per event (clusterMETx and clusterMETy), the effect on the final file size is small. The results of this MET have been compared to a similar calculation performed directly on DAODs at the analysis level agree well.
The draft flag is to ensure review from the JETM team before the request is sent for full review.
Merge request reports
Activity
added 21.2 Derivation JetEtmiss labels
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka
Thanks for this MR. I've posted some specific comments, I had a few about code simplicity and a few about the logic of the implementation. I'm not sure I completely understand the motivation for this tool - why not just use METMaker? Why wouldn't you want to use calibrated jets in your MET calculation?
Thank you all for your patience while I made revisions, the updated version has been posted. while most of the minor stuff was easy to change (variable names, container labels...), Bill's comments regarding the cone size and low occupancy definition led to the discovery of a significant issue with the code. The pileup definition had been selecting a single low occupancy cluster and defining an r=0.2 cone around it to estimate pileup. This had two main issues: Selecting only the first cluster typically meant selecting the highest energy cluster (excluding jets and leptons) in every event. Second, using r=0.2 for both the low occupancy definition and the pileup cone caused non-low occupancy clusters to be counted towards pileup. After testing a few different methods, we will be going with a random cone algorithm: 100 random cones (r=0.2) per event are tested against leptons with r = 0.2 and jets with r = 0.4, then the average energy of the cones passing this selection is used as a pileup estimate. So, big thanks to Bill for pointing out issues with the pileup definition! It was very much wrong and an important catch.
Thanks, Alex
Edited by Alexander Taras Bunka- Resolved by Alexander Taras Bunka
Hello everyone, Now that the bulk of the holidays has passed, what is the timeline/next steps for getting this into a derivation?
Thanks, Alex
- Resolved by Alexander Taras Bunka
- Resolved by Alexander Taras Bunka