FCCAnalyses
Loading...
Searching...
No Matches
JetTaggingUtils.h
Go to the documentation of this file.
1#ifndef JETTAGGINGUTILS_ANALYZERS_H
2#define JETTAGGINGUTILS_ANALYZERS_H
3
4#include "Math/Vector4D.h"
5#include "ROOT/RVec.hxx"
6#include "TRandom3.h"
7#include "edm4hep/MCParticleData.h"
8#include "fastjet/JetDefinition.hh"
9#include <vector>
10
11namespace FCCAnalyses {
18namespace JetTaggingUtils {
19
20// Get flavour association of jet
21ROOT::VecOps::RVec<int>
22get_flavour(ROOT::VecOps::RVec<fastjet::PseudoJet> in,
23 ROOT::VecOps::RVec<edm4hep::MCParticleData> MCin);
24// Get b-tags with an efficiency applied
25ROOT::VecOps::RVec<int> get_btag(ROOT::VecOps::RVec<int> in, float efficiency,
26 float mistag_c = 0., float mistag_l = 0.,
27 float mistag_g = 0.);
28// Get c-tags with an efficiency applied
29ROOT::VecOps::RVec<int> get_ctag(ROOT::VecOps::RVec<int> in, float efficiency,
30 float mistag_b = 0., float mistag_l = 0.,
31 float mistag_g = 0.);
32// Get l-tags with an efficiency applied
33ROOT::VecOps::RVec<int> get_ltag(ROOT::VecOps::RVec<int> in, float efficiency,
34 float mistag_b = 0., float mistag_c = 0.,
35 float mistag_g = 0.);
36// Get g-tags with an efficiency applied
37ROOT::VecOps::RVec<int> get_gtag(ROOT::VecOps::RVec<int> in, float efficiency,
38 float mistag_b = 0., float mistag_c = 0.,
39 float mistag_l = 0.);
40
43struct sel_tag {
44 bool m_pass; // if pass is true, select tagged jets. Otherwise select
45 // anti-tagged ones
46 sel_tag(bool arg_pass);
47 ROOT::VecOps::RVec<fastjet::PseudoJet>
48 operator()(ROOT::VecOps::RVec<bool> tags,
49 ROOT::VecOps::RVec<fastjet::PseudoJet> in);
50};
51
52} // namespace JetTaggingUtils
53
54} // namespace FCCAnalyses
55
56#endif
ROOT::VecOps::RVec< int > get_gtag(ROOT::VecOps::RVec< int > in, float efficiency, float mistag_b=0., float mistag_c=0., float mistag_l=0.)
Definition JetTaggingUtils.cc:119
ROOT::VecOps::RVec< int > get_flavour(ROOT::VecOps::RVec< fastjet::PseudoJet > in, ROOT::VecOps::RVec< edm4hep::MCParticleData > MCin)
Definition JetTaggingUtils.cc:8
ROOT::VecOps::RVec< int > get_ctag(ROOT::VecOps::RVec< int > in, float efficiency, float mistag_b=0., float mistag_l=0., float mistag_g=0.)
Definition JetTaggingUtils.cc:81
ROOT::VecOps::RVec< int > get_ltag(ROOT::VecOps::RVec< int > in, float efficiency, float mistag_b=0., float mistag_c=0., float mistag_g=0.)
Definition JetTaggingUtils.cc:100
ROOT::VecOps::RVec< int > get_btag(ROOT::VecOps::RVec< int > in, float efficiency, float mistag_c=0., float mistag_l=0., float mistag_g=0.)
Definition JetTaggingUtils.cc:62
FCC analyzers collection.
Definition Algorithms.h:15
select a list of jets depending on the status of a certain boolean flag (corresponding to its tagging...
Definition JetTaggingUtils.h:43
bool m_pass
Definition JetTaggingUtils.h:44
sel_tag(bool arg_pass)
Definition JetTaggingUtils.cc:138
ROOT::VecOps::RVec< fastjet::PseudoJet > operator()(ROOT::VecOps::RVec< bool > tags, ROOT::VecOps::RVec< fastjet::PseudoJet > in)
Definition JetTaggingUtils.cc:140