tauRecTools: associate cluster in CaloCalTopoClusterContainer to the tau candidate
For Topo seed jets, the cluster links in the tau candidate point to the clusters in a shallow copy container, which will not be available in AOD of R22. To fix this, the cluster links point to the cluster in the original container.
For PFlow seed jets, the cluster links in the tau candidate point to the PFOs(neutral or charged). It is confusing. Now the cluster links point to the corresponding cluter in the PFO object.
Previously, only clusters within 0.2 cone of tau candidate is stored. In the tau reconstruction, we need all the clusters. Thus the cut of dR is now removed.
The clusters could have energy <=0, which will be skimmed in AOD. The link then becomes invalid. Since we do not want an invalid link, all the clusters are requied to have positive energy.
Merge request reports
Activity
added Reconstruction Tau master labels
This merge request affects 9 files:
- Event/xAOD/xAODTau/Root/TauJet_v3.cxx
- Event/xAOD/xAODTau/xAODTau/versions/TauJet_v3.h
- Reconstruction/MET/METReconstruction/Root/METTauAssociator.cxx
- Reconstruction/tauRec/python/TauAlgorithmsHolder.py
- Reconstruction/tauRec/python/TauRecBuilder.py
- Reconstruction/tauRecTools/src/TauAxisSetter.cxx
- Reconstruction/tauRecTools/src/TauClusterFinder.cxx
- Reconstruction/tauRecTools/src/TauClusterFinder.h
- Reconstruction/tauRecTools/src/components/tauRecTools_entries.cxx
Adding @goetz ,@martindl ,@akraszna ,@adbailey ,@xiaozhon as watchers
added EDM JetEtmiss review-pending-level-1 labels
The implementation of the clusterLinks in the tau candidate changes. Currently, there are two clients of clusterLinks. One is METTauAssociator, the other is PFTauFlowElementAssoc.
Impact on MET:
- For LCTopo jet seed: Previously, the clusters are selected within 0.2 cone of the tau candidate using the jet axis. These clusters are corrected to point at the jet vertex.Now, the clusters are selected within 0.2 cone of the tau candidate using tau axis. There is no origin correction to these clusters.
- For EMPFlow jet seed: Previously, the clusters are actually neutral PFOs and changed PFOs. The PFOs within 0.2 cone of the tau candidate using the jet axis are selected. For METTauAssociator, the cluster in the neutral PFO is used. Now, the clusters are those used in the neutral PFOs and charged PFOs. For METTauAssociator, the cluster, including those from charged PFOs, within 0.2 cone of the tau candidate using the tau axis is selected.
- CAUTION: For EMPFlow jet seed, there is no origin correction to these clusters, and the calibration state is not at EMScale.
Impact on PFTauFlowElementAssoc: The type of the cluster changes. So I think some modifications, which are not available yet, are needed.
I am not sure which is the right way to proceed, tagging the expert for help @mhodgkin @wbalunas @sawyer
Edited by Xiaozhong Huang CI Result SUCCESS (hash e170f02c)Athena AthSimulation AthGeneration AnalysisBase externals cmake make required tests optional tests Full details available on this CI monitor view
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
AthGeneration: number of compilation errors 0, warnings 0
AnalysisBase: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 23053]Hi @xiaozhon -
I'm not entirely clear on what exactly your question is. Doesn't it make sense for
clusterLinks
to be links to clusters, as opposed to PFOs? Is your difficulty with the calibration state of the PFOs? In R22 PFOs (at least FlowElements, which you'll need to switch to) no longer have a concept of "calibration state" - you have to use the uncorrected collection itself if you don't want origin correction/CHS applied.Hi @wbalunas
Thanks for your prompt reply.
Previously, the clusterLinks is not used in tau reconstruction. Since jets may not be saved in xAOD, we would like to use the links to retrieve the clusters inside the jet constituent. A few modifications is done to make it useable for tau reconstruction, but I am not sure if it is good to MET and Jet, which are the clients of the cluster links.
As the name suggests, the clusterLinks are links clusters. However, they are links to PFOs for EMPFlow seed jets before this MR. We have changed it to link to clusters in this MR, but I am not sure whether I need to change the code in PFTauFlowElementAssoc correspondingly. The other issue is that the clusterLinks now return the cluster in CaloCalTopoCluster. Previously, it returns the cluster in LC(EM)OriginTopoClusters for Topo seed jets. If the four momentum matters, the output of MET reconstruction may change, but it depends on how the MET does the reconstruction.
I would like to ask whether my changes are OK for Jet and MET. The FlowElements are something we plan to add in a longer term. Sorry for the confusion.
Cheers, Xiaozhong
Edited by Xiaozhong Huang- Resolved by Xiaozhong Huang
Hm, OK - For
PFTauFlowElementAssoc
we'd need @mhodgkin to weigh in I think.For the MET question, presumably we want to be using the same cluster collection everywhere when we build the MET (so we wouldn't want e.g. uncorrected ones from taus but EMOrigin or something for the other objects). I'll tag the MET experts for more input on this: @khoo, @mswiatlo, @maklein, and @hpacey. Should we always be putting calibrated/corrected clusters into our MET associations?
-Bill
"However, they are links to PFOs for EMPFlow seed jets before this MR"
This seems to contradict:
"The other issue is that the clusterLinks now return the cluster in CaloCalTopoCluster. Previously, it returns the cluster in LC(EM)OriginTopoClusters for Topo seed jets."
Which is the correct statement?
The point of the link from the PFO FE:
is to understand overlap between the PFO FE and the tau. So the link should be to the same type of cluster used in PFO FE (CaloCalTopoCluster). It sounds like the new link in this MR is more correct than before?
Cheers,
Mark
Hi @mhodgkin
Actually, both statements are right. Its behavior depends on the seed jet. Before this MR, the clusterLinks are links to
- PFOs in some container (emm, I do not know the name) for PFlow seed jets
- clusters in LC(EM)OriginTopoClusters for LCTopo seed jets.
In this MR, the clusterLinks are always links to clusters in CaloCalTopoCluster for both Topo seed jets and PFlow seed jets.
May I ask what's the type of
FE->otherObjects().at(0)
in https://gitlab.cern.ch/atlas/athena/-/blob/master/Reconstruction/eflowRec/src/PFTauFlowElementAssoc.cxx#L69 If it is xAOD::CaloCluster, then the new link in this MR is correct. If it is xAOD::PFlow, then we may need to change it toFE->otherObjects().at(0)->cluster(0)
in this MR.Cheers, Xiaozhong
added urgent label
This merge request affects 9 files:
- Event/xAOD/xAODTau/Root/TauJet_v3.cxx
- Event/xAOD/xAODTau/xAODTau/versions/TauJet_v3.h
- Reconstruction/MET/METReconstruction/Root/METTauAssociator.cxx
- Reconstruction/tauRec/python/TauAlgorithmsHolder.py
- Reconstruction/tauRec/python/TauRecBuilder.py
- Reconstruction/tauRecTools/src/TauAxisSetter.cxx
- Reconstruction/tauRecTools/src/TauClusterFinder.cxx
- Reconstruction/tauRecTools/src/TauClusterFinder.h
- Reconstruction/tauRecTools/src/components/tauRecTools_entries.cxx
Adding @goetz ,@martindl ,@akraszna ,@adbailey ,@xiaozhon as watchers
CI Result SUCCESS (hash df108754)Athena AthSimulation AthGeneration AnalysisBase externals cmake make required tests optional tests Full details available on this CI monitor view
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
AthGeneration: number of compilation errors 0, warnings 0
AnalysisBase: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 23124]added review-approved label and removed review-pending-level-1 label
mentioned in commit 9eb43b0b
added sweep:ignore label