JetPair.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
9 #include "boca/tagger/Tagger.hh"
10 
12 
13 namespace heavyhiggs
14 {
15 
16 namespace tagger
17 {
18 
23 class JetPair : public Tagger<Doublet, branch::JetPair>
24 {
25 
26 public:
27 
28  int Train(boca::Event const& event, PreCuts const& pre_cuts, Tag tag) override;
29 
30  using Tagger::Multiplets;
31 
32  std::vector<Doublet> Multiplets(boca::Event const& event, PreCuts const& pre_cuts, TMVA::Reader const& reader) override;
33 
34  std::string Name() const override;
35 
36  std::vector<Particle> PairBottomQuarks(boca::Event const& event, Tag tag) const;
37 
38  bool CheckIfBadBottom(boca::Doublet const& doublet, std::vector<Particle> const& jets) const;
39 
40  std::vector<Particle> HiggsParticle(boca::Event const& event, Tag tag) const;
41 
42  Doublet TruthDoubletPair(Doublet const& doublet, std::vector<Particle> const& bottoms, Tag tag) const;
43 
44 private:
45 
46  std::vector<boca::Jet> TruthJetPair(boca::Event const& event, std::vector<boca::Jet>& jets, Tag tag) const;
47 
48  std::vector<Doublet> TruthDoubletPairs(boca::Event const& event, std::vector<Doublet>& doublets, Tag tag) const;
49 
51 
52 };
53 
54 }
55 
56 }
std::vector< Particle > PairBottomQuarks(boca::Event const &event, Tag tag) const
Definition: JetPair.cpp:67
int Train(boca::Event const &event, PreCuts const &pre_cuts, Tag tag) override
Definition: JetPair.cpp:116
std::vector< Doublet > Multiplets(boca::Event const &event, PreCuts const &pre_cuts, TMVA::Reader const &reader) override
Definition: JetPair.cpp:196
Doublet TruthDoubletPair(Doublet const &doublet, std::vector< Particle > const &bottoms, Tag tag) const
Definition: JetPair.cpp:179
Heavy Higgs partner.
Definition: Charged.hh:7
Definition: PreCuts.hh:14
std::string Name() const override
Definition: JetPair.cpp:110
Tag
The Tag distinguishes between signal and background events.
Definition: Tag.hh:14
Base class for the event Topology.
Definition: Event.hh:53
virtual std::vector< Multiplet_ > Multiplets(std::vector< Jet > const &, PreCuts const &, TMVA::Reader const &)
Definition: Tagger.hh:66
A Doublet consisting of two Singlets.
Definition: Doublet.hh:16
std::vector< Particle > HiggsParticle(boca::Event const &event, Tag tag) const
Definition: JetPair.cpp:101
Tagger base class using Branch template
Definition: Tagger.hh:23
JetPair BDT tagger.
Definition: JetPair.hh:23
Reading stage.
bool CheckIfBadBottom(boca::Doublet const &doublet, std::vector< Particle > const &jets) const
Definition: JetPair.cpp:94