Higgs.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include "boca/tagger/Tagger.hh"
11 
12 namespace boca
13 {
14 class Doublet;
15 }
16 
17 namespace standardmodel
18 {
19 
20 namespace tagger
21 {
22 
27 class Higgs : public Tagger<Doublet, branch::Higgs>
28 {
29 
30 public:
31 
32  Higgs();
33 
34  int Train(boca::Event const& event, PreCuts const& pre_cuts, Tag tag) override;
35 
36  using Tagger::Multiplets;
37 
38  std::vector<Doublet> Multiplets(boca::Event const& event, PreCuts const& pre_cuts, TMVA::Reader const& reader) override;
39 
40  std::string Name() const override;
41 
42  latex::String LatexName() const override;
43 
44  std::vector<Particle> Particles(boca::Event const& event) const;
45 
46 private:
47 
48  std::vector<Doublet> Doublets(boca::Event const& event, std::function<boost::optional<Doublet>(Doublet&)> const& function) const;
49 
50  boost::optional<Doublet> Multiplet(boca::Doublet& doublet, std::vector<Lepton>& leptons, const boca::PreCuts& pre_cuts, TMVA::Reader const& reader);
51 
52  boost::optional<Doublet> SetTag(boca::Doublet& doublet, std::vector<Lepton>& leptons, const boca::PreCuts& pre_cuts, boca::Tag tag);
53 
54  Doublet PrepareDoublet(const boca::Doublet& doublet, std::vector< boca::Lepton >& leptons);
55 
56  bool Problematic(Doublet const& doublet, PreCuts const& pre_cuts, Tag tag) const;
57 
58  bool Problematic(Doublet const& doublet, PreCuts const& pre_cuts) const;
59 
60  boost::optional<Doublet> MassDrop(const boca::Doublet& doublet);
61 
62  Reader<tagger::Bottom> bottom_reader_;
63 
64  Mass higgs_mass_window;
65 
66 };
67 
68 }
69 
70 }
Generic problematic cases.
Definition: Exception.hh:19
BDT tagger for higgs bosons decaying to jet pairs.
Definition: Higgs.hh:27
latex::String LatexName(Significance significance)
Definition: Significance.cpp:100
read results of multivariant analysis wrapper for TMVA::Reader
Definition: Reader.hh:26
Definition: PreCuts.hh:14
Tag
The Tag distinguishes between signal and background events.
Definition: Tag.hh:14
Base class for the event Topology.
Definition: Event.hh:53
Definition: String.hh:45
Boosted Collider Analysis.
Definition: Analysis.hh:15
virtual std::vector< Multiplet_ > Multiplets(std::vector< Jet > const &, PreCuts const &, TMVA::Reader const &)
Definition: Tagger.hh:66
Standard Model.
Definition: StandardModel.cpp:4
Multiplet base class
Definition: Multiplet.hh:21
A Doublet consisting of two Singlets.
Definition: Doublet.hh:16
Tagger base class using Branch template
Definition: Tagger.hh:23
Reading stage.
std::string Name(Output output)
Definition: Base.cpp:23
Energy Mass
Mass measured in electronvolt.
Definition: ElectronVolt.hh:62