DAS  3.0
Das Analysis System
Jet.h
Go to the documentation of this file.
1 #pragma once
2 
3 // STD
4 #include <cstdint>
5 #include <ios>
6 
7 // Darwin
8 #include <GenericObject.h>
9 
10 namespace Darwin::Physics {
11 
14 class GenJet : public GenericObject {
15 
16  std::string_view scale_group () const override { return ScaleVar; }
17  std::string_view weight_group () const override { return WeightVar; }
18 
19 public:
20  static inline const char * const ScaleVar = "GenJetScales",
21  * const WeightVar = "GenJetWgts";
22 
23  int nBmesons = -1,
24  nDmesons = -1;
25  int partonFlavour = 0;
26 
27  GenJet () = default;
28  virtual ~GenJet () = default;
29 };
30 
33 class RecJet : public GenJet {
34 
35  std::string_view scale_group () const override { return ScaleVar; }
36  std::string_view weight_group () const override { return WeightVar; }
37 
38 public:
39  static inline const char * const ScaleVar = "RecJetScales",
40  * const WeightVar = "RecJetWgts";
41 
42  float area = M_PI*0.4*0.4;
43  std::uint32_t selectors = 0;
44 
45  RecJet () = default;
46  virtual ~RecJet () = default;
47 };
48 
49 } // end of Darwin::Physics namespace
50 
51 inline std::ostream& operator<< (std::ostream& s, const Darwin::Physics::GenJet& jet)
52 {
53  return s << jet.CorrP4() << ' ' << jet.nDmesons << ' ' << jet.nBmesons;
54 }
55 
56 inline std::ostream& operator<< (std::ostream& s, const Darwin::Physics::RecJet& jet)
57 {
58  return s << jet.CorrP4() << " 0x" << std::hex << jet.selectors << std::dec;
59 }
Darwin::Physics::RecJet::scale_group
std::string_view scale_group() const override
Definition: Jet.h:35
Darwin::Physics::RecJet::weight_group
std::string_view weight_group() const override
Definition: Jet.h:36
operator<<
std::ostream & operator<<(std::ostream &s, const DAS::GenJet &jet)
Definition: Jet.h:70
Darwin::Physics::RecJet::area
float area
jet area (default value corresponds to average AK4 jet)
Definition: Jet.h:42
Darwin::Physics::GenJet::weight_group
std::string_view weight_group() const override
Definition: Jet.h:17
Darwin::Physics::GenJet
Generic generator-level jet.
Definition: Jet.h:14
Darwin::Physics::GenJet::~GenJet
virtual ~GenJet()=default
Darwin::Physics::GenJet::GenJet
GenJet()=default
Darwin::Physics::GenJet::WeightVar
static const char *const *const WeightVar
Definition: Jet.h:21
Darwin::Physics::RecJet::WeightVar
static const char *const *const WeightVar
Definition: Jet.h:40
Darwin::Physics::RecJet
Generic detector-level jet.
Definition: Jet.h:33
Darwin::Physics::RecJet::RecJet
RecJet()=default
Darwin::Physics::GenJet::nBmesons
int nBmesons
Number of B hadrons.
Definition: Jet.h:23
Darwin::Physics::GenJet::nDmesons
int nDmesons
Number of D hadrons.
Definition: Jet.h:24
Darwin::Physics::GenJet::ScaleVar
static const char *const ScaleVar
Definition: Jet.h:20
Darwin::Physics::GenericObject::CorrP4
FourVector CorrP4(size_t i=0) const
corrected 4-vector
Definition: GenericObject.h:57
Darwin::Physics::RecJet::ScaleVar
static const char *const ScaleVar
Definition: Jet.h:39
GenericObject.h
Darwin::Physics::RecJet::~RecJet
virtual ~RecJet()=default
Darwin::Physics::GenJet::scale_group
std::string_view scale_group() const override
Definition: Jet.h:16
Darwin::Physics
Everything what concerns physics analysis directly.
Definition: darwin.h:23
Darwin::Physics::RecJet::selectors
std::uint32_t selectors
Identification cuts (e.g. JetID at CMS)
Definition: Jet.h:43
Darwin::Physics::GenJet::partonFlavour
int partonFlavour
Parton flavour (PDG ID)
Definition: Jet.h:25