We’ve learned about leptons, what about quarks and gluons? A lot of the hard processes of interest will have quarks and gluons (often referred to as partons) in their final state, often due to initial-state radiation from the incoming protons. Therefore, it is very important to be able to reconstruct them. However, there are three complications with this:
These complications are addressed by using hadronic jets. These are essentially nearby calorimeter energy deposits that are grouped together into a single object that serves as a proxy for a parton. There are multiple algorithms that can be used to reconstruct jets (see below) and they can be run on many kinds of objects (e.g. calorimeter deposits, tracks, stable truth-level hadrons, partons). There are a couple of points unique to jets that are worth keeping in mind:
Since we are colliding many colored particles in each event, we can expect a large number of jets to appear in each event. With many deposits in the calorimeters, it can be tricky to determine what deposits correspond to the original parton.
In order to identify which energy deposits correspond to an initial parton, we use clustering algorithms to gather energy deposits together into an object known as a jet. Several different clustering algorithms are available, each using different criteria for building jets from calorimeter clusters and tracks. Each has its own pros and cons. The figure below shows a comparison of the jets formed by four different clustering algorithms.
In addition to the type of clustering algorithms used, you can also modify the parameters (such as the size parameter) and inputs of the clustering algorithms. Let’s take a look at some of the different types of jet definitions that we use. Open the test file in ROOT and print out all of the containers that have “Jets” in the name.
$ root -l $ALRB_TutorialData/mc16_13TeV.312276.aMcAtNloPy8EG_A14N30NLO_LQd_mu_ld_0p3_beta_0p5_2ndG_M1000.deriv.DAOD_PHYS.e7587_a875_r10201_p5001/DAOD_PHYS.30350968._000001.pool.root.1
root[1] CollectionTree->Print("*Jets*")
A snippet of this output is shown below. These all use the “Anti-Kt”
clustering algorithm, but the configurations are all different. If
your analysis will include jets, you need to ensure you are studying
the types of jets that are most relevant to the analysis. The three
most commonly used jet collections (other than “truth” jets) are all
reconstructed with the
anti-kT algorithm. The
first collection is AntiKt4EMTopoJets
built with a size parameter of
R = 0.4 using inputs built from track and calorimeter information and
typically used to reconstruct isolated partons. The second collection
is AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets
built with a size
parameter of R = 1.0 using inputs that combine track and calorimeter
information in a different way and typically used to reconstruct
“boosted” hadronically decaying heavy particles such as a W boson or
a top quark that has sufficient momentum that its decay products
are merged together in the detector. The third collection is
AntiKtVR30Rmax4Rmin02TrackJets
built with a variable size parameter
using tracks as inputs and typically used for tagging the decays of
B-hadrons.
The three jet collections described above are generally sufficient for most ATLAS analyses. The recommended jet collections occasionally change and there are some analysis scenarios that necessitate the use of other jet collections.
*............................................................................*
*Br 7 :AntiKt10LCTopoJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204297 bytes File Size = 34238 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.94 *
*............................................................................*
*Br 8 :AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets : DataVector<xAOD::Jet_v1>*
*Entries : 10000 : Total Size= 205089 bytes File Size = 34966 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.83 *
*............................................................................*
*Br 9 :AntiKt10TruthSoftDropBeta100Zcut10Jets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 205017 bytes File Size = 32067 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 6.36 *
*............................................................................*
*Br 10 :AntiKt10TruthTrimmedPtFrac5SmallR20Jets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 205053 bytes File Size = 32091 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 6.36 *
*............................................................................*
*Br 11 :AntiKt10UFOCSSKJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204333 bytes File Size = 31356 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 6.48 *
*............................................................................*
*Br 12 :AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets : DataVector<xAOD::Jet_v1>*
*Entries : 10000 : Total Size= 205089 bytes File Size = 31598 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 6.46 *
*............................................................................*
*Br 13 :AntiKt2PV0TrackJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204333 bytes File Size = 38866 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.23 *
*............................................................................*
*Br 14 :AntiKt4EMPFlowJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204297 bytes File Size = 36143 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.62 *
*............................................................................*
*Br 15 :AntiKt4EMPFlowJets_BTagging201810 : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204837 bytes File Size = 36657 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.56 *
*............................................................................*
*Br 16 :AntiKt4EMPFlowJets_BTagging201903 : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204837 bytes File Size = 36657 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.56 *
*............................................................................*
*Br 17 :AntiKt4EMTopoJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204261 bytes File Size = 37289 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.45 *
*............................................................................*
*Br 18 :AntiKt4EMTopoJets_BTagging201810 : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204801 bytes File Size = 37814 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.39 *
*............................................................................*
*Br 19 :AntiKt4LCTopoJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204261 bytes File Size = 36447 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.58 *
*............................................................................*
*Br 20 :AntiKt4TruthDressedWZJets : DataVector<xAOD::Jet_v1> *
*Entries : 10000 : Total Size= 204549 bytes File Size = 36660 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.55 *
*............................................................................*
*Br 21 :AntiKtVR30Rmax4Rmin02TrackJets_BTagging201810 : DataVector<xAOD: *
* | :Jet_v1> *
*Entries : 10000 : Total Size= 205269 bytes File Size = 36409 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.61 *
*............................................................................*
*Br 22 :AntiKtVR30Rmax4Rmin02TrackJets_BTagging201903 : DataVector<xAOD: *
* | :Jet_v1> *
*Entries : 10000 : Total Size= 205269 bytes File Size = 36409 *
*Baskets : 32 : Basket Size= 27136 bytes Compression= 5.61 *
*............................................................................*
Jets are some of the most complicated and dense objects we detect with ATLAS, and that means it takes a lot of careful studying to ensure we are representing them properly. The JetEtMiss group has painstakingly developed tools in order for us to apply proper calibrations to our jets to remove any discrepancies in the measurements we have taken.
Due to the nature of the strong force interactions that lead to hadron detection, the energy of a jet is never completely measured by ATLAS. This, plus other effects, means that it is necessary to apply significant corrections (referred to as calibrations) to jets in MC and in detector data to ensure the jets used in analysis are properly described.
Corrections are also applied to other physics objects, but the process is much more involved for hadronic jets.
Since the LHC collides hadrons with a large amount of pileup, collision events are prone to having a large number of jets that originate from pileup interactions instead of hard scatter processes. Unlike electrons and muons, which can be associated with a collision vertex, jets offer poor direction resolution and can contain hadrons originating from multiple interaction vertices. Generally, we want to ignore jets that are from pileup interactions. We do this using Jet Vertex Tagging (JVT), which uses tracks associated with a jet to determine the fraction of its energy that comes from the hard scatter vertex or pileup vertices.