CMS 3D CMS Logo

MuonDTLocalMillepedeAlgorithm.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonDTLocalMillepedeAlgorithm_h
2 #define Alignment_MuonAlignmentAlgorithms_MuonDTLocalMillepedeAlgorithm_h
3 
4 
8 
10 #include "PhysicsTools/UtilAlgos/interface/TFileService.h"
11 
12 #include "TH1D.h"
13 #include "TProfile.h"
14 #include "TTree.h"
15 #include "TFile.h"
16 #include "TChain.h"
17 #include "TMatrixD.h"
18 
19 
20 class AlignableNavigator;
21 class TFile;
22 class TTree;
23 class AlignableDet;
24 
25 #define MAX_HIT 60
26 #define MAX_HIT_CHAM 14
27 #define MAX_SEGMENT 5
28 
29 
31 {
32 
33  public:
34 
37 
40 
42  void initialize( const edm::EventSetup& setup,
45 
47  void terminate(void);
48 
49 
51  void run(const edm::EventSetup& setup, const EventInfo &eventInfo);
52  //void run( const edm::EventSetup& , const ConstTrajTrackPairCollection& );
53 
54 
55 
56  private:
57 
58  // Builds the 4D segments
59  bool build4DSegments();
60 
61  // Declares the tree structure and associated the variables
62  void setBranchTrees();
63 
64  //Auxiliar structure for 4D segment construction
65  typedef struct {
66  int nhits;
67  float xc[MAX_HIT]; float yc[MAX_HIT]; float zc[MAX_HIT];
68  float erx[MAX_HIT];
69  int wh[MAX_HIT]; int st[MAX_HIT]; int sr[MAX_HIT];
70  int sl[MAX_HIT]; int la[MAX_HIT];
71  } Info1D;
72 
74 
75 
76  //Block of variables for the tree
77  //---------------------------------------------------------
78  float p, pt, eta, phi, charge;
79  int nseg;
83  float xSl[MAX_SEGMENT];
85  float exSl[MAX_SEGMENT];
88  float ySl[MAX_SEGMENT];
90  float eySl[MAX_SEGMENT];
116  //---------------------------------------------------------------
117 
118 
119 
120 
121  // private data members
122  TFile *f;
123  TTree *ttreeOutput;
124  TChain *tali;
125 
126 
130 
131  //Service for histograms
133 
137  float ptMax;
138  float ptMin;
139  float nPhihits;
140  float nThetahits;
144 
145 
146  //FIXME: Not clear if needed
151 
152  float meanx[5][4][14];
153  float sigmax[5][4][14];
154  float meandxdz[5][4][14];
155  float sigmadxdz[5][4][14];
156  float meany[5][4][14];
157  float sigmay[5][4][14];
158  float meandydz[5][4][14];
159  float sigmadydz[5][4][14];
160 
161 
162 };
163 
164 #endif
MuonDTLocalMillepedeAlgorithm::xSL1SL3
float xSL1SL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:98
AlignmentIORoot.h
MuonDTLocalMillepedeAlgorithm::f
TFile * f
Definition: MuonDTLocalMillepedeAlgorithm.h:122
MuonDTLocalMillepedeAlgorithm
Definition: MuonDTLocalMillepedeAlgorithm.h:30
MuonDTLocalMillepedeAlgorithm::phi
float phi
Definition: MuonDTLocalMillepedeAlgorithm.h:78
MuonDTLocalMillepedeAlgorithm::tali
TChain * tali
Definition: MuonDTLocalMillepedeAlgorithm.h:124
MuonDTLocalMillepedeAlgorithm::Info1D::nhits
int nhits
Definition: MuonDTLocalMillepedeAlgorithm.h:66
MuonDTLocalMillepedeAlgorithm::theAlignableDetAccessor
AlignableNavigator * theAlignableDetAccessor
Definition: MuonDTLocalMillepedeAlgorithm.h:129
MuonDTLocalMillepedeAlgorithm::workingmode
int workingmode
Definition: MuonDTLocalMillepedeAlgorithm.h:141
muon
Definition: MuonCocktails.h:17
MuonDTLocalMillepedeAlgorithm::Info1D
Definition: MuonDTLocalMillepedeAlgorithm.h:65
MuonDTLocalMillepedeAlgorithm::sigmay
float sigmay[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:157
MuonDTLocalMillepedeAlgorithm::pt
float pt
Definition: MuonDTLocalMillepedeAlgorithm.h:78
MuonDTLocalMillepedeAlgorithm::xcp
float xcp[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:109
MuonDTLocalMillepedeAlgorithm::terminate
void terminate(void)
Call at end of job.
Definition: MuonDTLocalMillepedeAlgorithm.cc:110
MuonDTLocalMillepedeAlgorithm::eySl
float eySl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:90
MuonDTLocalMillepedeAlgorithm::sr
int sr[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:113
MuonDTLocalMillepedeAlgorithm::consTraj
edm::InputTag consTraj
Definition: MuonDTLocalMillepedeAlgorithm.h:135
MuonDTLocalMillepedeAlgorithm::nThetahits
float nThetahits
Definition: MuonDTLocalMillepedeAlgorithm.h:140
MuonDTLocalMillepedeAlgorithm::la
int la[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:115
MuonDTLocalMillepedeAlgorithm::sigmadxdz
float sigmadxdz[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:155
MuonDTLocalMillepedeAlgorithm::fs
edm::Service< TFileService > fs
Definition: MuonDTLocalMillepedeAlgorithm.h:132
MuonDTLocalMillepedeAlgorithm::initialize
void initialize(const edm::EventSetup &setup, AlignableTracker *tracker, AlignableMuon *muon, AlignmentParameterStore *store)
Call at beginning of job.
Definition: MuonDTLocalMillepedeAlgorithm.cc:86
MuonDTLocalMillepedeAlgorithm::exSlSL1
float exSlSL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:95
MuonDTLocalMillepedeAlgorithm::sigmadydz
float sigmadydz[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:159
AlignmentAlgorithmBase
Definition: AlignmentAlgorithmBase.h:59
MuonDTLocalMillepedeAlgorithm::setBranchTrees
void setBranchTrees()
Definition: MuonDTLocalMillepedeAlgorithm.cc:419
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
MAX_HIT
#define MAX_HIT
Definition: MuonDTLocalMillepedeAlgorithm.h:25
MuonDTLocalMillepedeAlgorithm::MuonDTLocalMillepedeAlgorithm
MuonDTLocalMillepedeAlgorithm(const edm::ParameterSet &cfg)
Constructor.
Definition: MuonDTLocalMillepedeAlgorithm.cc:41
MuonDTLocalMillepedeAlgorithm::xSl
float xSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:83
MuonDTLocalMillepedeAlgorithm::ptMin
float ptMin
Definition: MuonDTLocalMillepedeAlgorithm.h:138
MuonDTLocalMillepedeAlgorithm::dxdzSlSL1
float dxdzSlSL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:94
AlignableDet
Definition: AlignableDet.h:8
MuonDTLocalMillepedeAlgorithm::xSlSL1
float xSlSL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:93
MuonDTLocalMillepedeAlgorithm::edxdzSlSL1
float edxdzSlSL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:96
MuonDTLocalMillepedeAlgorithm::exSlSL3
float exSlSL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:101
MuonDTLocalMillepedeAlgorithm::ex
float ex[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:108
MuonDTLocalMillepedeAlgorithm::nhits
int nhits[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:82
Service.h
MuonDTLocalMillepedeAlgorithm::sl
int sl[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:114
MuonDTLocalMillepedeAlgorithm::numberOfSigmasX
float numberOfSigmasX
Definition: MuonDTLocalMillepedeAlgorithm.h:147
MuonDTLocalMillepedeAlgorithm::meandxdz
float meandxdz[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:154
MuonDTLocalMillepedeAlgorithm::exSl
float exSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:85
MuonDTLocalMillepedeAlgorithm::exdxdzSl
float exdxdzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:87
AlignableTracker
Definition: AlignableTracker.h:17
MuonDTLocalMillepedeAlgorithm::theAlignables
align::Alignables theAlignables
Definition: MuonDTLocalMillepedeAlgorithm.h:128
MuonDTLocalMillepedeAlgorithm::zc
float zc[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:107
MuonDTLocalMillepedeAlgorithm::exdxdzSlSL3
float exdxdzSlSL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:103
MuonDTLocalMillepedeAlgorithm::wh
int wh[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:113
AlignableNavigator
Definition: AlignableNavigator.h:25
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
MuonDTLocalMillepedeAlgorithm::dxdzSl
float dxdzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:84
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
ZMuMuAnalysisNtupler_cff.eventInfo
eventInfo
Definition: ZMuMuAnalysisNtupler_cff.py:15
MuonDTLocalMillepedeAlgorithm::eydydzSl
float eydydzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:92
MuonDTLocalMillepedeAlgorithm::sigmax
float sigmax[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:153
edm::ParameterSet
Definition: ParameterSet.h:36
MuonDTLocalMillepedeAlgorithm::nthetahits
int nthetahits[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:81
MuonDTLocalMillepedeAlgorithm::xc
float xc[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:105
AlignableMuon
Constructor of the full muon geometry.
Definition: AlignableMuon.h:33
MuonDTLocalMillepedeAlgorithm::meanx
float meanx[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:152
edm::Service< TFileService >
MuonDTLocalMillepedeAlgorithm::nPhihits
float nPhihits
Definition: MuonDTLocalMillepedeAlgorithm.h:139
edm::EventSetup
Definition: EventSetup.h:57
MuonDTLocalMillepedeAlgorithm::myTrack1D
Info1D myTrack1D
Definition: MuonDTLocalMillepedeAlgorithm.h:73
MuonDTLocalMillepedeAlgorithm::xSL3SL1
float xSL3SL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:104
MuonDTLocalMillepedeAlgorithm::xSlSL3
float xSlSL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:99
MAX_SEGMENT
#define MAX_SEGMENT
Definition: MuonDTLocalMillepedeAlgorithm.h:27
MuonDTLocalMillepedeAlgorithm::dxdzSlSL3
float dxdzSlSL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:100
MuonDTLocalMillepedeAlgorithm::excp
float excp[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:111
looper.cfg
cfg
Definition: looper.py:297
MuonDTLocalMillepedeAlgorithm::eycp
float eycp[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:112
MuonDTLocalMillepedeAlgorithm::~MuonDTLocalMillepedeAlgorithm
~MuonDTLocalMillepedeAlgorithm()
Destructor.
Definition: MuonDTLocalMillepedeAlgorithm.h:39
align::Alignables
std::vector< Alignable * > Alignables
Definition: Utilities.h:31
MuonDTLocalMillepedeAlgorithm::globalTracks
edm::InputTag globalTracks
Definition: MuonDTLocalMillepedeAlgorithm.h:134
MuonDTLocalMillepedeAlgorithm::p
float p
Definition: MuonDTLocalMillepedeAlgorithm.h:78
MuonDTLocalMillepedeAlgorithm::numberOfSigmasY
float numberOfSigmasY
Definition: MuonDTLocalMillepedeAlgorithm.h:149
MuonDTLocalMillepedeAlgorithm::yc
float yc[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:106
MuonDTLocalMillepedeAlgorithm::nseg
int nseg
Definition: MuonDTLocalMillepedeAlgorithm.h:79
AlignmentParameterStore
Definition: AlignmentParameterStore.h:23
MuonDTLocalMillepedeAlgorithm::nMtxSection
int nMtxSection
Definition: MuonDTLocalMillepedeAlgorithm.h:143
MuonDTLocalMillepedeAlgorithm::theAlignmentParameterStore
AlignmentParameterStore * theAlignmentParameterStore
Definition: MuonDTLocalMillepedeAlgorithm.h:127
MuonDTLocalMillepedeAlgorithm::edxdzSlSL3
float edxdzSlSL3[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:102
MuonDTLocalMillepedeAlgorithm::ttreeOutput
TTree * ttreeOutput
Definition: MuonDTLocalMillepedeAlgorithm.h:123
MuonDTLocalMillepedeAlgorithm::ycp
float ycp[5][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:110
MuonDTLocalMillepedeAlgorithm::st
int st[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:113
MuonDTLocalMillepedeAlgorithm::numberOfRootFiles
int numberOfRootFiles
Definition: MuonDTLocalMillepedeAlgorithm.h:142
MuonDTLocalMillepedeAlgorithm::ySl
float ySl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:88
MuonDTLocalMillepedeAlgorithm::eta
float eta
Definition: MuonDTLocalMillepedeAlgorithm.h:78
AlignmentAlgorithmBase.h
Interface/Base class for alignment algorithms, each alignment algorithm has to be derived from this c...
MuonDTLocalMillepedeAlgorithm::ntuplePath
std::string ntuplePath
Definition: MuonDTLocalMillepedeAlgorithm.h:136
MuonDTLocalMillepedeAlgorithm::nphihits
int nphihits[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:80
MuonDTLocalMillepedeAlgorithm::meandydz
float meandydz[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:158
MAX_HIT_CHAM
#define MAX_HIT_CHAM
Definition: MuonDTLocalMillepedeAlgorithm.h:26
MuonDTLocalMillepedeAlgorithm::meany
float meany[5][4][14]
Definition: MuonDTLocalMillepedeAlgorithm.h:156
ParameterSet.h
MuonDTLocalMillepedeAlgorithm::numberOfSigmasDXDZ
float numberOfSigmasDXDZ
Definition: MuonDTLocalMillepedeAlgorithm.h:148
MuonDTLocalMillepedeAlgorithm::edydzSl
float edydzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:91
MuonDTLocalMillepedeAlgorithm::numberOfSigmasDYDZ
float numberOfSigmasDYDZ
Definition: MuonDTLocalMillepedeAlgorithm.h:150
MuonDTLocalMillepedeAlgorithm::build4DSegments
bool build4DSegments()
Definition: MuonDTLocalMillepedeAlgorithm.cc:214
MuonDTLocalMillepedeAlgorithm::edxdzSl
float edxdzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:86
edm::InputTag
Definition: InputTag.h:15
MuonDTLocalMillepedeAlgorithm::run
void run(const edm::EventSetup &setup, const EventInfo &eventInfo)
Run the algorithm on trajectories and tracks.
Definition: MuonDTLocalMillepedeAlgorithm.cc:132
MuonDTLocalMillepedeAlgorithm::charge
float charge
Definition: MuonDTLocalMillepedeAlgorithm.h:78
MuonDTLocalMillepedeAlgorithm::ptMax
float ptMax
Definition: MuonDTLocalMillepedeAlgorithm.h:137
AlignmentAlgorithmBase::EventInfo
define event information passed to algorithms
Definition: AlignmentAlgorithmBase.h:72
MuonDTLocalMillepedeAlgorithm::dydzSl
float dydzSl[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:89
MuonDTLocalMillepedeAlgorithm::exdxdzSlSL1
float exdxdzSlSL1[5]
Definition: MuonDTLocalMillepedeAlgorithm.h:97