Skip to content

CPAlgorithms: new event selector for ghost-matched jets

Baptiste Ravina requested to merge ravinab/athena:pl_nghost into main

Introduce a new event selector algorithm that counts the number of jets having a certain type of ghost-matched particle. This can be used to e.g. select b-jets at truth-level, or define the true W/Z/H/top large-R jets to compare against reco-level taggers.

The new keyword is JET_N_GHOST, and it can be used as e.g.

EventSelection:
  - jets: 'ParticleLevelJets'
    met: 'ParticleLevelMissingET'
    metTerm: 'NonInt'
    noFilter: False
    cutFlowHistograms: True
    selectionCutsDict:
      'someSelection': |
        JET_N 25000 >= 4
        JET_N_GHOST B >= 2
        MET >= 20000
        SAVE

Here requesting a truth (particle-level) event to have at least 4 jets with pT>25 GeV, at least 2 b-tagged jets, and at least 20 GeV of MET.

Instead of B, users can request C, W, Z, H, T (top) or TAU. It is also possible to combine a tag and an anti-tag, e.g. C!B could be used to define c-jets as those jets that contain a ghost-matched c-hadron but no ghost b-hadron.

A similar keyword LJET_N_GHOST is also available, that runs over the large-R jet collection instead of the small-R jet. The logic is identical.

Finally, pT cuts can also be applied ahead of the ghost-counting, e.g. JET_N_GHOST B 25000 >= 2.

Merge request reports