Fork me on GitHub

source: git/modules/Calorimeter.h@ 703d39c

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 703d39c was 9493a0f, checked in by pavel <pavel@…>, 11 years ago

new energy flow that compiles

  • Property mode set to 100644
File size: 2.2 KB
RevLine 
[d7d2da3]1#ifndef Calorimeter_h
2#define Calorimeter_h
3
4/** \class Calorimeter
5 *
6 * Fills calorimeter towers, performs calorimeter resolution smearing,
7 * preselects towers hit by photons and creates energy flow objects.
8 *
9 * $Date$
10 * $Revision$
11 *
12 *
13 * \author P. Demin - UCL, Louvain-la-Neuve
14 *
15 */
16
17#include "classes/DelphesModule.h"
18
19#include <map>
20#include <set>
21#include <vector>
22
23class TObjArray;
24class DelphesFormula;
25class Candidate;
26
27class Calorimeter: public DelphesModule
28{
29public:
30
31 Calorimeter();
32 ~Calorimeter();
33
34 void Init();
35 void Process();
36 void Finish();
[4600a41]37
[d7d2da3]38private:
39
40 typedef std::map< Long64_t, std::pair< Double_t, Double_t > > TFractionMap; //!
41 typedef std::map< Double_t, std::set< Double_t > > TBinMap; //!
42
43 Candidate *fTower;
44 Double_t fTowerEta, fTowerPhi, fTowerEdges[4];
45 Double_t fTowerECalEnergy, fTowerHCalEnergy;
46 Double_t fTowerECalNeutralEnergy, fTowerHCalNeutralEnergy;
[73e0386]47 Int_t fTowerPhotonHits, fTowerECalHits, fTowerHCalHits, fTowerAllHits;
48 Int_t fTowerECalTrackHits, fTowerHCalTrackHits, fTowerTrackAllHits;
[d7d2da3]49
50 TFractionMap fFractionMap; //!
51 TBinMap fBinMap; //!
52
53 std::vector < Double_t > fEtaBins;
54 std::vector < std::vector < Double_t >* > fPhiBins;
55
56 std::vector < Long64_t > fTowerHits;
57
58 std::vector < Double_t > fECalFractions;
59 std::vector < Double_t > fHCalFractions;
60
61 DelphesFormula *fECalResolutionFormula; //!
62 DelphesFormula *fHCalResolutionFormula; //!
63
64 TIterator *fItParticleInputArray; //!
65 TIterator *fItTrackInputArray; //!
66
67 const TObjArray *fParticleInputArray; //!
68 const TObjArray *fTrackInputArray; //!
69
70 TObjArray *fTowerOutputArray; //!
71 TObjArray *fPhotonOutputArray; //!
72
73 TObjArray *fEFlowTrackOutputArray; //!
74 TObjArray *fEFlowTowerOutputArray; //!
75
[73e0386]76 TObjArray *fTowerECalArray; //!
77 TIterator *fItTowerECalArray; //!
78
79 TObjArray *fTowerHCalArray; //!
80 TIterator *fItTowerHCalArray; //!
[d7d2da3]81
[9493a0f]82 TObjArray *fTowerTrackArray; //!
83 TIterator *fItTowerTrackArray; //!
84
85 TObjArray *fTowerECalTrackArray; //!
86 TIterator *fItTowerECalTrackArray; //!
87
88 TObjArray *fTowerHCalTrackArray; //!
89 TIterator *fItTowerHCalTrackArray; //!
90
[d7d2da3]91 void FinalizeTower();
[4600a41]92 Double_t LogNormal(Double_t mean, Double_t sigma);
93
[d7d2da3]94 ClassDef(Calorimeter, 1)
95};
96
97#endif
Note: See TracBrowser for help on using the repository browser.