Fork me on GitHub

source: git/modules/Calorimeter.h@ c2d6ea2

ImprovedOutputFile Timing dual_readout llp
Last change on this file since c2d6ea2 was 82575a3, checked in by mselvaggi <mselvaggi@…>, 11 years ago

added simplecalo

  • Property mode set to 100644
File size: 2.1 KB
RevLine 
[d7d2da3]1#ifndef Calorimeter_h
2#define Calorimeter_h
3
4/** \class Calorimeter
5 *
6 * Fills calorimeter towers, performs calorimeter resolution smearing,
[d4c4d9d]7 * and creates energy flow objects (tracks, photons, and neutral hadrons).
[d7d2da3]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
[82575a3]40 typedef std::map< Long64_t, std::pair< Double_t, Double_t > > TFractionMap; //!
[d7d2da3]41 typedef std::map< Double_t, std::set< Double_t > > TBinMap; //!
42
43 Candidate *fTower;
44 Double_t fTowerEta, fTowerPhi, fTowerEdges[4];
[82575a3]45 Double_t fTowerECalEnergy, fTowerHCalEnergy;
46 Double_t fTrackECalEnergy, fTrackHCalEnergy;
[22dc7fd]47
[82575a3]48 Double_t fTowerECalTime, fTowerHCalTime;
49 Double_t fTrackECalTime, fTrackHCalTime;
[22dc7fd]50
[82575a3]51 Double_t fTowerECalWeightTime, fTowerHCalWeightTime;
52 Double_t fTrackECalWeightTime, fTrackHCalWeightTime;
[22dc7fd]53
[2dab783]54 Int_t fTowerTrackHits, fTowerPhotonHits;
[d7d2da3]55
56 TFractionMap fFractionMap; //!
57 TBinMap fBinMap; //!
58
59 std::vector < Double_t > fEtaBins;
60 std::vector < std::vector < Double_t >* > fPhiBins;
61
62 std::vector < Long64_t > fTowerHits;
63
[82575a3]64 std::vector < Double_t > fTowerECalFractions;
65 std::vector < Double_t > fTowerHCalFractions;
66
67 std::vector < Double_t > fTrackECalFractions;
68 std::vector < Double_t > fTrackHCalFractions;
69
70 DelphesFormula *fECalResolutionFormula; //!
71 DelphesFormula *fHCalResolutionFormula; //!
72
[d7d2da3]73 TIterator *fItParticleInputArray; //!
74 TIterator *fItTrackInputArray; //!
75
76 const TObjArray *fParticleInputArray; //!
77 const TObjArray *fTrackInputArray; //!
78
79 TObjArray *fTowerOutputArray; //!
[82575a3]80 TObjArray *fPhotonOutputArray; //!
[d4c4d9d]81
[82575a3]82 TObjArray *fEFlowTrackOutputArray; //!
83 TObjArray *fEFlowPhotonOutputArray; //!
84 TObjArray *fEFlowNeutralHadronOutputArray; //!
85
[9493a0f]86 TObjArray *fTowerTrackArray; //!
87 TIterator *fItTowerTrackArray; //!
88
[d7d2da3]89 void FinalizeTower();
[4600a41]90 Double_t LogNormal(Double_t mean, Double_t sigma);
91
[d7d2da3]92 ClassDef(Calorimeter, 1)
93};
94
95#endif
Note: See TracBrowser for help on using the repository browser.