Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DirectPhotonPythia.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file DirectPhotonPythia.h
1 #ifndef __DirectPhotonPythia_H__
2 #define __DirectPhotonPythia_H__
3 
4 // --- need to check all these includes...
5 #include <fun4all/SubsysReco.h>
6 #include <vector>
7 #include <cmath>
8 #include <string>
9 #include <limits.h>
10 #include <TNtuple.h>
11 
12 class TTree;
13 class TFile;
14 class TH2D;
15 class TH1D;
16 
17 
18 class PHCompositeNode;
19 class Jet;
20 namespace HepMC
21 {
22  class GenEvent;
23 }
24 
26 {
27 
28 public:
29 
31 
32  int
34  int
36  int
38 
39  float
40  deltaR(float eta1, float eta2, float phi1, float phi2)
41  {
42 
43  float deta = eta1 - eta2;
44  float dphi = phi1 - phi2;
45  if (dphi > +3.14159)
46  dphi -= 2 * 3.14159;
47  if (dphi < -3.14159)
48  dphi += 2 * 3.14159;
49 
50  return sqrt(pow(deta, 2) + pow(dphi, 2));
51 
52  }
53 
54  double
55  get_eta_max() const
56  {
57  return _eta_max;
58  }
59 
60  void
61  set_eta_max(double etaMax)
62  {
63  _eta_max = etaMax;
64  }
65 
66  double
67  get_eta_min() const
68  {
69  return _eta_min;
70  }
71 
72  void
73  set_eta_min(double etaMin)
74  {
75  _eta_min = etaMin;
76  }
77 
78  double
79  get_pt_max() const
80  {
81  return _pt_max;
82  }
83 
84  void
85  set_pt_max(double ptMax)
86  {
87  _pt_max = ptMax;
88  }
89 
90  double
91  get_pt_min() const
92  {
93  return _pt_min;
94  }
95 
96  void
97  set_pt_min(double ptMin)
98  {
99  _pt_min = ptMin;
100  }
101 
104  void
106  {
108  }
109 
115  int get_embedding_id() const { return _embedding_id; }
116  //
122  void set_embedding_id(int id) { _embedding_id = id; }
123 private:
124 
126  int
127  parton_tagging(Jet * jet, HepMC::GenEvent*, const double match_radius);
128 
130  int
131  hadron_tagging(Jet * jet, HepMC::GenEvent*, const double match_radius);
132 
133  bool _verbose;
134 
135  int _ievent;
137 
138  TFile *_f;
139 
140  TH1D *_h1;
141  TH2D *_h2;
142  TH2D *_h2all;
143  TH2D *_h2_b;
144  TH2D *_h2_c;
145  TNtuple *_ntp_gamma;
146 
148 
149  int _flavor;
151 
152  double _pt_min;
153  double _pt_max;
154 
155  double _eta_min;
156  double _eta_max;
157 
159 
167 };
168 
169 #endif // __DirectPhotonPythia_H__