Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RhoFluct.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RhoFluct.h
1 #ifndef RHOFLUCT__H
2 #define RHOFLUCT__H
3 
4 #include <fun4all/SubsysReco.h>
5 
6 #include <memory>
7 #include <string>
8 #include <utility> // std::pair, std::make_pair
9 
10 #include <array>
11 #include <vector>
12 
13 #include <TRandom3.h>
14 
15 class PHCompositeNode;
16 class JetEvalStack;
17 class TTree;
18 class TH2D;
19 class TH1;
20 class JetInput;
21 
22 class RhoFluct : public SubsysReco
23 {
24  public:
25  RhoFluct
26  ( const std::string& outputfilename = "RhoFluct.root"
27  , const float _jet_R = 0.4
28  );
29 
30  virtual ~RhoFluct();
31 
32  /* void use_initial_vertex(const bool b = true) {initial_vertex = b;} */
33  int Init (PHCompositeNode *topNode);
34  int InitRun (PHCompositeNode *topNode);
35  int process_event (PHCompositeNode *topNode);
36  int End (PHCompositeNode *topNode);
37  void add_input_Sub1(JetInput *input) { m_input_Sub1.push_back(input); }
38  void add_input_rhoA(JetInput *input) { m_input_rhoA.push_back(input); }
39 
40  private:
41  TRandom3 rand3 {};
42 
43  long long int nevent { 0 };
44  long long int outevent { 0 };
46  const float jet_R;
49 
50  int i_truthset = 0;
51 
54  TTree *m_T;
55 
56  /* int m_id; */
57  float m_rho; // all calorimeters
58  float m_rho_sigma;
59  float m_cent_mdb { -1. };
60  float m_cent { -1. };
61  float m_cent_epd { -1. };
62  float m_impactparam { -1. };
63 
64  //Calo Jets -- all
65  float m_1TeV_phi ; // always embed a 100 GeV particle
66  float m_1TeV_eta ;
67 
68 
70  float m_rhoAJetPhi ;
71  float m_rhoAJetEta ;
72  float m_rhoAJetPt ;
73  float m_rhoAJetArea ;
74  float m_rhoAJetPtLessRhoA ; // pT - rho x A
75  float m_rhoAJet_delpt; // (pT-rhoxA)-1TeV
76 
78  float m_Sub1JetPhi ;
79  float m_Sub1JetEta ;
80  float m_Sub1JetPt ;
81  float m_Sub1Jet_delpt ; // pT - 1TeV
82 
83  // FIXME -- functions straight from background median estimator
84  float mBGE_mean_area { 0 };
85  float mBGE_empty_area { 0 };
86  float mBGE_n_empty_jets { 0 };
87  unsigned int mBGE_n_jets_used { 0 };
88 
89  std::vector<JetInput *> m_input_Sub1, m_input_rhoA; // copied from /direct/sphenix+u/dstewart/vv/coresoftware/simulation/g4simulation/g4jets/JetReco.h .cc
90 };
91 
92 #endif // RhoFluct