Fork me on GitHub

source: svn/trunk/modules/Calorimeter.h@ 1364

Last change on this file since 1364 was 1364, checked in by Michele Selvaggi, 11 years ago

new calo module

  • Property svn:keywords set to Id Revision Date
File size: 1.7 KB
RevLine 
[608]1#ifndef Calorimeter_h
2#define Calorimeter_h
3
[814]4/** \class Calorimeter
5 *
[894]6 * Fills calorimeter towers, performs calorimeter resolution smearing,
[1356]7 * and creates energy flow objects (tracks, photons, and neutral hadrons).
[814]8 *
9 * $Date: 2014-04-16 13:29:31 +0000 (Wed, 16 Apr 2014) $
10 * $Revision: 1364 $
11 *
12 *
13 * \author P. Demin - UCL, Louvain-la-Neuve
14 *
15 */
16
[687]17#include "classes/DelphesModule.h"
[608]18
19#include <map>
20#include <set>
[659]21#include <vector>
[608]22
23class TObjArray;
[766]24class DelphesFormula;
[687]25class Candidate;
[608]26
[687]27class Calorimeter: public DelphesModule
[608]28{
29public:
30
31 Calorimeter();
32 ~Calorimeter();
33
34 void Init();
35 void Process();
36 void Finish();
[1145]37
[608]38private:
39
[1364]40 typedef std::map< Long64_t, Double_t > TFractionMap; //!
[659]41 typedef std::map< Double_t, std::set< Double_t > > TBinMap; //!
[931]42
[730]43 Candidate *fTower;
[898]44 Double_t fTowerEta, fTowerPhi, fTowerEdges[4];
[1364]45 Double_t fTowerEnergy;
46 Double_t fTrackEnergy;
[1345]47
[1364]48 Double_t fTowerTime;
49 Double_t fTrackTime;
[1345]50
[1364]51 Double_t fTowerWeightTime;
52 Double_t fTrackWeightTime;
[1345]53
[1273]54 Int_t fTowerTrackHits, fTowerPhotonHits;
[730]55
[608]56 TFractionMap fFractionMap; //!
[622]57 TBinMap fBinMap; //!
[931]58
[659]59 std::vector < Double_t > fEtaBins;
60 std::vector < std::vector < Double_t >* > fPhiBins;
[931]61
[661]62 std::vector < Long64_t > fTowerHits;
63
[1364]64 std::vector < Double_t > fTowerFractions;
65
66 std::vector < Double_t > fTrackFractions;
67
68 DelphesFormula *fResolutionFormula; //!
69
[886]70 TIterator *fItParticleInputArray; //!
71 TIterator *fItTrackInputArray; //!
[608]72
[886]73 const TObjArray *fParticleInputArray; //!
74 const TObjArray *fTrackInputArray; //!
[608]75
[629]76 TObjArray *fTowerOutputArray; //!
[1356]77
[1364]78 TObjArray *fEFlowTowerOutputArray; //!
79
[1235]80 TObjArray *fTowerTrackArray; //!
81 TIterator *fItTowerTrackArray; //!
82
[730]83 void FinalizeTower();
[1145]84 Double_t LogNormal(Double_t mean, Double_t sigma);
85
[608]86 ClassDef(Calorimeter, 1)
87};
88
89#endif
Note: See TracBrowser for help on using the repository browser.