#include <Validation/TrackerRecHits/interface/SiStripRecHitsValid.h>
Definition at line 51 of file SiStripRecHitsValid.h.
SiStripRecHitsValid::SiStripRecHitsValid | ( | const edm::ParameterSet & | conf | ) |
Definition at line 33 of file SiStripRecHitsValid.cc.
References dbe_, edm::ParameterSet::getUntrackedParameter(), histo, i, meAdcRphiTEC, meAdcRphiTIB, meAdcRphiTID, meAdcRphiTOB, meAdcSasTEC, meAdcSasTIB, meAdcSasTID, meAdcSasTOB, meChi2MatchedTEC, meChi2MatchedTIB, meChi2MatchedTID, meChi2MatchedTOB, meChi2RphiTEC, meChi2RphiTIB, meChi2RphiTID, meChi2RphiTOB, meChi2SasTEC, meChi2SasTIB, meChi2SasTID, meChi2SasTOB, meErrxMatchedTEC, meErrxMatchedTIB, meErrxMatchedTID, meErrxMatchedTOB, meErrxRphiTEC, meErrxRphiTIB, meErrxRphiTID, meErrxRphiTOB, meErrxSasTEC, meErrxSasTIB, meErrxSasTID, meErrxSasTOB, meErryMatchedTEC, meErryMatchedTIB, meErryMatchedTID, meErryMatchedTOB, meNstpRphiTEC, meNstpRphiTIB, meNstpRphiTID, meNstpRphiTOB, meNstpSasTEC, meNstpSasTIB, meNstpSasTID, meNstpSasTOB, meNumMatchedTEC, meNumMatchedTIB, meNumMatchedTID, meNumMatchedTOB, meNumRphiTEC, meNumRphiTIB, meNumRphiTID, meNumRphiTOB, meNumSasTEC, meNumSasTIB, meNumSasTID, meNumSasTOB, meNumTotMatched, meNumTotRphi, meNumTotSas, mePosxMatchedTEC, mePosxMatchedTIB, mePosxMatchedTID, mePosxMatchedTOB, mePosxRphiTEC, mePosxRphiTIB, mePosxRphiTID, mePosxRphiTOB, mePosxSasTEC, mePosxSasTIB, mePosxSasTID, mePosxSasTOB, mePosyMatchedTEC, mePosyMatchedTIB, mePosyMatchedTID, mePosyMatchedTOB, mePullLFRphiTEC, mePullLFRphiTIB, mePullLFRphiTID, mePullLFRphiTOB, mePullLFSasTEC, mePullLFSasTIB, mePullLFSasTID, mePullLFSasTOB, mePullMFRphiTEC, mePullMFRphiTIB, mePullMFRphiTID, mePullMFRphiTOB, mePullMFSasTEC, mePullMFSasTIB, mePullMFSasTID, mePullMFSasTOB, meResRphiTEC, meResRphiTIB, meResRphiTID, meResRphiTOB, meResSasTEC, meResSasTIB, meResSasTID, meResSasTOB, meResxMatchedTEC, meResxMatchedTIB, meResxMatchedTID, meResxMatchedTOB, meResyMatchedTEC, meResyMatchedTIB, meResyMatchedTID, meResyMatchedTOB, and outputFile_.
00033 : 00034 dbe_(0), 00035 conf_(ps), 00036 matchedRecHits_( ps.getParameter<edm::InputTag>("matchedRecHits") ), 00037 rphiRecHits_( ps.getParameter<edm::InputTag>("rphiRecHits") ), 00038 stereoRecHits_( ps.getParameter<edm::InputTag>("stereoRecHits") ) { 00039 00040 outputFile_ = ps.getUntrackedParameter<string>("outputFile", "sistriprechitshisto.root"); 00041 dbe_ = Service<DQMStore>().operator->(); 00042 // dbe_->showDirStructure(); 00043 dbe_->setCurrentFolder("TrackerRecHitsV/TrackerRecHits/Strip/SISTRIP"); 00044 00045 meNumTotRphi = dbe_->book1D("NumTotRphi","Num of RecHits rphi",100, 0, 10000); 00046 meNumTotSas = dbe_->book1D("NumTotSas","Num of RecHits sas",100, 0, 10000); 00047 meNumTotMatched = dbe_->book1D("NumTotMatched","Num of RecHits rmatched",100, 0, 10000); 00048 00049 dbe_->setCurrentFolder("TrackerRecHitsV/TrackerRecHits/Strip/TIB"); 00050 meNumRphiTIB = dbe_->book1D("NumRphiTIB","Num of RecHits rphi", 100, 0, 1000.); 00051 meNumSasTIB = dbe_->book1D("NumSasTIB","Num of RecHits sas", 100, 0, 1000.); 00052 meNumMatchedTIB = dbe_->book1D("NumMatchedTIB","Num of RecHits matched", 100, 0, 1000.); 00053 00054 //one histo per Layer rphi hits 00055 for(int i = 0 ;i<4 ; i++) { 00056 Char_t histo[200]; 00057 sprintf(histo,"Nstp_rphi_layer%dtib",i+1); 00058 meNstpRphiTIB[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00059 sprintf(histo,"Adc_rphi_layer%dtib",i+1); 00060 meAdcRphiTIB[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00061 sprintf(histo,"Posx_rphi_layer%dtib",i+1); 00062 mePosxRphiTIB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00063 sprintf(histo,"Errx_rphi_layer%dtib",i+1); 00064 meErrxRphiTIB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0,0.01); //<error>~20micron 00065 sprintf(histo,"Res_rphi_layer%dtib",i+1); 00066 meResRphiTIB[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.02,+0.02); 00067 sprintf(histo,"Pull_LF_rphi_layer%dtib",i+1); 00068 mePullLFRphiTIB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00069 sprintf(histo,"Pull_MF_rphi_layer%dtib",i+1); 00070 mePullMFRphiTIB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00071 sprintf(histo,"Chi2_rphi_layer%dtib",i+1); 00072 meChi2RphiTIB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00073 } 00074 00075 //one histo per Layer stereo and matched hits 00076 for(int i = 0 ;i<2 ; i++) { 00077 Char_t histo[200]; 00078 sprintf(histo,"Nstp_sas_layer%dtib",i+1); 00079 meNstpSasTIB[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00080 sprintf(histo,"Adc_sas_layer%dtib",i+1); 00081 meAdcSasTIB[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00082 sprintf(histo,"Posx_sas_layer%dtib",i+1); 00083 mePosxSasTIB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00084 sprintf(histo,"Errx_sas_layer%dtib",i+1); 00085 meErrxSasTIB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0.,0.01); 00086 sprintf(histo,"Res_sas_layer%dtib",i+1); 00087 meResSasTIB[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.02,+0.02); 00088 sprintf(histo,"Pull_LF_sas_layer%dtib",i+1); 00089 mePullLFSasTIB[i] = dbe_->book1D(histo,"Pull",100,-4.,4.); 00090 sprintf(histo,"Pull_MF_sas_layer%dtib",i+1); 00091 mePullMFSasTIB[i] = dbe_->book1D(histo,"Pull",100,-4.,4.); 00092 sprintf(histo,"Chi2_sas_layer%dtib",i+1); 00093 meChi2SasTIB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00094 00095 sprintf(histo,"Posx_matched_layer%dtib",i+1); 00096 mePosxMatchedTIB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0, +6.0); 00097 sprintf(histo,"Posy_matched_layer%dtib",i+1); 00098 mePosyMatchedTIB[i] = dbe_->book1D(histo,"RecHit y coord.",100,-6.0, +6.0); 00099 sprintf(histo,"Errx_matched_layer%dtib",i+1); 00100 meErrxMatchedTIB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0., 0.01); 00101 sprintf(histo,"Erry_matched_layer%dtib",i+1); 00102 meErryMatchedTIB[i] = dbe_->book1D(histo,"RecHit err(y) coord.",100,0., 0.05); 00103 sprintf(histo,"Resx_matched_layer%dtib",i+1); 00104 meResxMatchedTIB[i] = dbe_->book1D(histo,"RecHit Res(x) coord.",100,-0.02, +0.02); 00105 sprintf(histo,"Resy_matched_layer%dtib",i+1); 00106 meResyMatchedTIB[i] = dbe_->book1D(histo,"RecHit Res(y) coord.",100,-1., +1.); 00107 sprintf(histo,"Chi2_matched_layer%dtib",i+1); 00108 meChi2MatchedTIB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00109 } 00110 00111 dbe_->setCurrentFolder("TrackerRecHitsV/TrackerRecHits/Strip/TOB"); 00112 meNumRphiTOB = dbe_->book1D("NumRphiTOB","Num of RecHits rphi", 100, 0, 1000.); 00113 meNumSasTOB = dbe_->book1D("NumSasTOB","Num of RecHits sas", 100, 0, 1000.); 00114 meNumMatchedTOB = dbe_->book1D("NumMatchedTOB","Num of RecHits matched", 100, 0, 1000.); 00115 //one histo per Layer rphi hits 00116 for(int i = 0 ;i<6 ; i++) { 00117 Char_t histo[200]; 00118 sprintf(histo,"Nstp_rphi_layer%dtob",i+1); 00119 meNstpRphiTOB[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00120 sprintf(histo,"Adc_rphi_layer%dtob",i+1); 00121 meAdcRphiTOB[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00122 sprintf(histo,"Posx_rphi_layer%dtob",i+1); 00123 mePosxRphiTOB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00124 sprintf(histo,"Errx_rphi_layer%dtob",i+1); 00125 meErrxRphiTOB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0,0.01); 00126 sprintf(histo,"Res_rphi_layer%dtob",i+1); 00127 meResRphiTOB[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.02,+0.02); 00128 sprintf(histo,"Pull_LF_rphi_layer%dtob",i+1); 00129 mePullLFRphiTOB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00130 sprintf(histo,"Pull_MF_rphi_layer%dtob",i+1); 00131 mePullMFRphiTOB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00132 sprintf(histo,"Chi2_rphi_layer%dtob",i+1); 00133 meChi2RphiTOB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00134 } 00135 00136 //one histo per Layer stereo and matched hits 00137 for(int i = 0 ;i<2 ; i++) { 00138 Char_t histo[200]; 00139 sprintf(histo,"Nstp_sas_layer%dtob",i+1); 00140 meNstpSasTOB[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00141 sprintf(histo,"Adc_sas_layer%dtob",i+1); 00142 meAdcSasTOB[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00143 sprintf(histo,"Posx_sas_layer%dtob",i+1); 00144 mePosxSasTOB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00145 sprintf(histo,"Errx_sas_layer%dtob",i+1); 00146 meErrxSasTOB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0.,0.01); 00147 sprintf(histo,"Res_sas_layer%dtob",i+1); 00148 meResSasTOB[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.02,+0.02); 00149 sprintf(histo,"Pull_LF_sas_layer%dtob",i+1); 00150 mePullLFSasTOB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00151 sprintf(histo,"Pull_MF_sas_layer%dtob",i+1); 00152 mePullMFSasTOB[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00153 sprintf(histo,"Chi2_sas_layer%dtob",i+1); 00154 meChi2SasTOB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00155 00156 sprintf(histo,"Posx_matched_layer%dtob",i+1); 00157 mePosxMatchedTOB[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0, +6.0); 00158 sprintf(histo,"Posy_matched_layer%dtob",i+1); 00159 mePosyMatchedTOB[i] = dbe_->book1D(histo,"RecHit y coord.",100,-10.0, +10.0); 00160 sprintf(histo,"Errx_matched_layer%dtob",i+1); 00161 meErrxMatchedTOB[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0., 0.01); 00162 sprintf(histo,"Erry_matched_layer%dtob",i+1); 00163 meErryMatchedTOB[i] = dbe_->book1D(histo,"RecHit err(y) coord.",100,0., 0.1); 00164 sprintf(histo,"Resx_matched_layer%dtob",i+1); 00165 meResxMatchedTOB[i] = dbe_->book1D(histo,"RecHit Res(x) coord.",100,-0.02, +0.02); 00166 sprintf(histo,"Resy_matched_layer%dtob",i+1); 00167 meResyMatchedTOB[i] = dbe_->book1D(histo,"RecHit Res(y) coord.",100,-1., +1.); 00168 sprintf(histo,"Chi2_matched_layer%dtob",i+1); 00169 meChi2MatchedTOB[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00170 } 00171 00172 dbe_->setCurrentFolder("TrackerRecHitsV/TrackerRecHits/Strip/TID"); 00173 meNumRphiTID = dbe_->book1D("NumRphiTID","Num of RecHits rphi", 100, 0, 1000.); 00174 meNumSasTID = dbe_->book1D("NumSasTID","Num of RecHits sas", 100, 0, 1000.); 00175 meNumMatchedTID = dbe_->book1D("NumMatchedTID","Num of RecHits matched", 100, 0, 1000.); 00176 00177 //one histo per Ring rphi hits: 3 rings, 6 disks, 2 inner rings are glued 00178 for(int i = 0 ;i<3 ; i++) { 00179 Char_t histo[200]; 00180 sprintf(histo,"Nstp_rphi_layer%dtid",i+1); 00181 meNstpRphiTID[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00182 sprintf(histo,"Adc_rphi_layer%dtid",i+1); 00183 meAdcRphiTID[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00184 sprintf(histo,"Posx_rphi_layer%dtid",i+1); 00185 mePosxRphiTID[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00186 sprintf(histo,"Errx_rphi_layer%dtid",i+1); 00187 meErrxRphiTID[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0,0.5); 00188 sprintf(histo,"Res_rphi_layer%dtid",i+1); 00189 meResRphiTID[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.5,+0.5); 00190 sprintf(histo,"Pull_LF_rphi_layer%dtid",i+1); 00191 mePullLFRphiTID[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00192 sprintf(histo,"Pull_MF_rphi_layer%dtid",i+1); 00193 mePullMFRphiTID[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00194 sprintf(histo,"Chi2_rphi_layer%dtid",i+1); 00195 meChi2RphiTID[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00196 } 00197 00198 //one histo per Ring stereo and matched hits 00199 for(int i = 0 ;i<2 ; i++) { 00200 Char_t histo[200]; 00201 sprintf(histo,"Nstp_sas_layer%dtid",i+1); 00202 meNstpSasTID[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00203 sprintf(histo,"Adc_sas_layer%dtid",i+1); 00204 meAdcSasTID[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00205 sprintf(histo,"Posx_sas_layer%dtid",i+1); 00206 mePosxSasTID[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00207 sprintf(histo,"Errx_sas_layer%dtid",i+1); 00208 meErrxSasTID[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0.,0.5); 00209 sprintf(histo,"Res_sas_layer%dtid",i+1); 00210 meResSasTID[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.5,+0.5); 00211 sprintf(histo,"Pull_LF_sas_layer%dtid",i+1); 00212 mePullLFSasTID[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00213 sprintf(histo,"Pull_MF_sas_layer%dtid",i+1); 00214 mePullMFSasTID[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00215 sprintf(histo,"Chi2_sas_layer%dtid",i+1); 00216 meChi2SasTID[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00217 00218 sprintf(histo,"Posx_matched_layer%dtid",i+1); 00219 mePosxMatchedTID[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0, +6.0); 00220 sprintf(histo,"Posy_matched_layer%dtid",i+1); 00221 mePosyMatchedTID[i] = dbe_->book1D(histo,"RecHit y coord.",100,-6.0, +6.0); 00222 sprintf(histo,"Errx_matched_layer%dtid",i+1); 00223 meErrxMatchedTID[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0., 0.05); 00224 sprintf(histo,"Erry_matched_layer%dtid",i+1); 00225 meErryMatchedTID[i] = dbe_->book1D(histo,"RecHit err(y) coord.",100,0., 0.1); 00226 sprintf(histo,"Resx_matched_layer%dtid",i+1); 00227 meResxMatchedTID[i] = dbe_->book1D(histo,"RecHit Res(x) coord.",100,-0.2, +0.2); 00228 sprintf(histo,"Resy_matched_layer%dtid",i+1); 00229 meResyMatchedTID[i] = dbe_->book1D(histo,"RecHit Res(y) coord.",100,-1., +1.); 00230 sprintf(histo,"Chi2_matched_layer%dtid",i+1); 00231 meChi2MatchedTID[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00232 } 00233 00234 dbe_->setCurrentFolder("TrackerRecHitsV/TrackerRecHits/Strip/TEC"); 00235 meNumRphiTEC = dbe_->book1D("NumRphiTEC","Num of RecHits rphi", 100, 0, 1000.); 00236 meNumSasTEC = dbe_->book1D("NumSasTEC","Num of RecHits sas", 100, 0, 1000.); 00237 meNumMatchedTEC = dbe_->book1D("NumMatchedTEC","Num of RecHits matched", 100, 0, 1000.); 00238 00239 //one histo per Ring rphi hits: 7 rings, 18 disks. Innermost 3 rings are same as TID above. 00240 for(int i = 0 ;i<7 ; i++) { 00241 Char_t histo[200]; 00242 sprintf(histo,"Nstp_rphi_layer%dtec",i+1); 00243 meNstpRphiTEC[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00244 sprintf(histo,"Adc_rphi_layer%dtec",i+1); 00245 meAdcRphiTEC[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00246 sprintf(histo,"Posx_rphi_layer%dtec",i+1); 00247 mePosxRphiTEC[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00248 sprintf(histo,"Errx_rphi_layer%dtec",i+1); 00249 meErrxRphiTEC[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0,0.5); 00250 sprintf(histo,"Res_rphi_layer%dtec",i+1); 00251 meResRphiTEC[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.5,+0.5); 00252 sprintf(histo,"Pull_LF_rphi_layer%dtec",i+1); 00253 mePullLFRphiTEC[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00254 sprintf(histo,"Pull_MF_rphi_layer%dtec",i+1); 00255 mePullMFRphiTEC[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00256 sprintf(histo,"Chi2_rphi_layer%dtec",i+1); 00257 meChi2RphiTEC[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00258 } 00259 00260 //one histo per Layer stereo and matched hits: rings 1,2,5 are double sided 00261 for(int i = 0 ;i<5 ; i++) { 00262 if(i == 0 || i == 1 || i == 4) { 00263 Char_t histo[200]; 00264 sprintf(histo,"Nstp_sas_layer%dtec",i+1); 00265 meNstpSasTEC[i] = dbe_->book1D(histo,"RecHit Cluster Size",10,0.5,10.5); 00266 sprintf(histo,"Adc_sas_layer%dtec",i+1); 00267 meAdcSasTEC[i] = dbe_->book1D(histo,"RecHit Cluster Charge",100,0.,300.); 00268 sprintf(histo,"Posx_sas_layer%dtec",i+1); 00269 mePosxSasTEC[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0,+6.0); 00270 sprintf(histo,"Errx_sas_layer%dtec",i+1); 00271 meErrxSasTEC[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0.,0.5); 00272 sprintf(histo,"Res_sas_layer%dtec",i+1); 00273 meResSasTEC[i] = dbe_->book1D(histo,"RecHit Residual",100,-0.5,+0.5); 00274 sprintf(histo,"Pull_LF_sas_layer%dtec",i+1); 00275 mePullLFSasTEC[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00276 sprintf(histo,"Pull_MF_sas_layer%dtec",i+1); 00277 mePullMFSasTEC[i] = dbe_->book1D(histo,"Pull",100,-5.,5.); 00278 sprintf(histo,"Chi2_sas_layer%dtec",i+1); 00279 meChi2SasTEC[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00280 00281 sprintf(histo,"Posx_matched_layer%dtec",i+1); 00282 mePosxMatchedTEC[i] = dbe_->book1D(histo,"RecHit x coord.",100,-6.0, +6.0); 00283 sprintf(histo,"Posy_matched_layer%dtec",i+1); 00284 mePosyMatchedTEC[i] = dbe_->book1D(histo,"RecHit y coord.",100,-8.0, +8.0); 00285 sprintf(histo,"Errx_matched_layer%dtec",i+1); 00286 meErrxMatchedTEC[i] = dbe_->book1D(histo,"RecHit err(x) coord.",100,0., 0.05); 00287 sprintf(histo,"Erry_matched_layer%dtec",i+1); 00288 meErryMatchedTEC[i] = dbe_->book1D(histo,"RecHit err(y) coord.",100,0., 0.1); 00289 sprintf(histo,"Resx_matched_layer%dtec",i+1); 00290 meResxMatchedTEC[i] = dbe_->book1D(histo,"RecHit Res(x) coord.",100,-0.2, +0.2); 00291 sprintf(histo,"Resy_matched_layer%dtec",i+1); 00292 meResyMatchedTEC[i] = dbe_->book1D(histo,"RecHit Res(y) coord.",100,-1., +1.); 00293 sprintf(histo,"Chi2_matched_layer%dtec",i+1); 00294 meChi2MatchedTEC[i] = dbe_->book1D(histo,"RecHit Chi2 test",100,0., 50); 00295 } 00296 } 00297 }
SiStripRecHitsValid::~SiStripRecHitsValid | ( | ) |
void SiStripRecHitsValid::analyze | ( | const edm::Event & | e, | |
const edm::EventSetup & | c | |||
) | [protected, virtual] |
Implements edm::EDAnalyzer.
Definition at line 313 of file SiStripRecHitsValid.cc.
References TrackerHitAssociator::associateHit(), chi2matched, chi2rphi, chi2sas, cluchgrphi, cluchgsas, clusizrphi, clusizsas, SiStripRecHit2D::cluster(), conf_, dist(), error, edm::EventID::event(), MonitorElement::Fill(), TrackingRecHit::geographicalId(), edm::EventSetup::get(), edm::Event::getByLabel(), i, i2, edm::Event::id(), TrackerGeometry::idToDet(), TrackerGeometry::idToDetUnit(), int, it, j, j2, k, kk, edm::es::l(), TIBDetId::layer(), TOBDetId::layer(), BaseSiTrackerRecHit2DLocalPos::localPosition(), PSimHit::localPosition(), BaseSiTrackerRecHit2DLocalPos::localPositionError(), m, matched, matchedRecHits_, MAXHIT, meAdcRphiTEC, meAdcRphiTIB, meAdcRphiTID, meAdcRphiTOB, meAdcSasTEC, meAdcSasTIB, meAdcSasTID, meAdcSasTOB, Topology::measurementError(), Topology::measurementPosition(), meChi2MatchedTEC, meChi2MatchedTIB, meChi2MatchedTID, meChi2MatchedTOB, meChi2RphiTEC, meChi2RphiTIB, meChi2RphiTID, meChi2RphiTOB, meChi2SasTEC, meChi2SasTIB, meChi2SasTID, meChi2SasTOB, meErrxMatchedTEC, meErrxMatchedTIB, meErrxMatchedTID, meErrxMatchedTOB, meErrxRphiTEC, meErrxRphiTIB, meErrxRphiTID, meErrxRphiTOB, meErrxSasTEC, meErrxSasTIB, meErrxSasTID, meErrxSasTOB, meErryMatchedTEC, meErryMatchedTIB, meErryMatchedTID, meErryMatchedTOB, meNstpRphiTEC, meNstpRphiTIB, meNstpRphiTID, meNstpRphiTOB, meNstpSasTEC, meNstpSasTIB, meNstpSasTID, meNstpSasTOB, meNumMatchedTEC, meNumMatchedTIB, meNumMatchedTID, meNumMatchedTOB, meNumRphiTEC, meNumRphiTIB, meNumRphiTID, meNumRphiTOB, meNumSasTEC, meNumSasTIB, meNumSasTID, meNumSasTOB, meNumTotMatched, meNumTotRphi, meNumTotSas, mePosxMatchedTEC, mePosxMatchedTIB, mePosxMatchedTID, mePosxMatchedTOB, mePosxRphiTEC, mePosxRphiTIB, mePosxRphiTID, mePosxRphiTOB, mePosxSasTEC, mePosxSasTIB, mePosxSasTID, mePosxSasTOB, mePosyMatchedTEC, mePosyMatchedTIB, mePosyMatchedTID, mePosyMatchedTOB, mePullLFRphiTEC, mePullLFRphiTIB, mePullLFRphiTID, mePullLFRphiTOB, mePullLFSasTEC, mePullLFSasTIB, mePullLFSasTID, mePullLFSasTOB, mePullMFRphiTEC, mePullMFRphiTIB, mePullMFRphiTID, mePullMFRphiTOB, mePullMFSasTEC, mePullMFSasTIB, mePullMFSasTID, mePullMFSasTOB, meResRphiTEC, meResRphiTIB, meResRphiTID, meResRphiTOB, meResSasTEC, meResSasTIB, meResSasTID, meResSasTOB, meResxMatchedTEC, meResxMatchedTIB, meResxMatchedTID, meResxMatchedTOB, meResyMatchedTEC, meResyMatchedTIB, meResyMatchedTID, meResyMatchedTOB, RecHit2DLocalPos::parameters(), RecHit2DLocalPos::parametersError(), projectHit(), dttmaxenums::R, r, rechitmatchederrxx, rechitmatchederrxy, rechitmatchederryy, rechitmatchedresx, rechitmatchedresy, rechitmatchedx, rechitmatchedy, rechitmatchedz, rechitrphierrx, rechitrphipullMF, rechitrphires, rechitrphix, rechitrphiy, rechitrphiz, rechitsaserrx, rechitsaspullMF, rechitsasres, rechitsasx, rechitsasy, rechitsasz, TIDDetId::ring(), TECDetId::ring(), rphiRecHits_, edm::EventID::run(), sh, funct::sqrt(), SiStripDetId::stereo(), GluedGeomDet::stereoDet(), stereoRecHits_, DetId::subdetId(), GeomDet::surface(), StripSubdetector::TEC, StripSubdetector::TIB, StripSubdetector::TID, StripSubdetector::TOB, StripGeomDetUnit::topology(), MeasurementError::uu(), PV3DBase< T, PVType, FrameType >::x(), PV2DBase< T, PVType, FrameType >::x(), LocalError::xx(), LocalError::xy(), PV3DBase< T, PVType, FrameType >::y(), LocalError::yy(), and PV3DBase< T, PVType, FrameType >::z().
00313 { 00314 00315 LogInfo("EventInfo") << " Run = " << e.id().run() << " Event = " << e.id().event(); 00316 //cout << " Run = " << e.id().run() << " Event = " << e.id().event() << endl; 00317 00318 //--- get RecHits 00319 00320 std::string rechitProducer = "SiStripRecHits2D"; 00321 00322 // Step A: Get Inputs 00323 edm::Handle<SiStripMatchedRecHit2DCollection> rechitsmatched; 00324 edm::Handle<SiStripRecHit2DCollection> rechitsrphi; 00325 edm::Handle<SiStripRecHit2DCollection> rechitsstereo; 00326 e.getByLabel(matchedRecHits_, rechitsmatched); 00327 e.getByLabel(rphiRecHits_, rechitsrphi); 00328 e.getByLabel(stereoRecHits_, rechitsstereo); 00329 00330 int numrechitrphi =0; 00331 int numrechitsas =0; 00332 int numrechitmatched=0; 00333 00334 int totTibnumrechitrphi=0; 00335 int totTibnumrechitsas=0; 00336 int totTibnumrechitmatched=0; 00337 int totTobnumrechitrphi=0; 00338 int totTobnumrechitsas=0; 00339 int totTobnumrechitmatched=0; 00340 int totTidnumrechitrphi=0; 00341 int totTidnumrechitsas=0; 00342 int totTidnumrechitmatched=0; 00343 int totTecnumrechitrphi=0; 00344 int totTecnumrechitsas=0; 00345 int totTecnumrechitmatched=0; 00346 int totrechitrphi =0; 00347 int totrechitsas =0; 00348 int totrechitmatched =0; 00349 00350 TrackerHitAssociator associate(e, conf_); 00351 00352 edm::ESHandle<TrackerGeometry> pDD; 00353 es.get<TrackerDigiGeometryRecord> ().get (pDD); 00354 const TrackerGeometry &tracker(*pDD); 00355 // std::vector<DetId> rphidetIDs = rechitsrphi->ids(); 00356 std::vector<DetId> stereodetIDs = rechitsstereo->ids(); 00357 std::vector<DetId> matcheddetIDs = rechitsmatched->ids(); 00358 std::vector<DetId> IDs=rechitsrphi->ids(); 00359 IDs.insert(IDs.end(),stereodetIDs.begin(),stereodetIDs.end()); 00360 IDs.insert(IDs.end(),matcheddetIDs.begin(),matcheddetIDs.end()); 00361 // loop over detunits 00362 // for(TrackerGeometry::DetContainer::const_iterator it = pDD->dets().begin(); it != pDD->dets().end(); it++){ 00363 for(std::vector<DetId>::const_iterator it = IDs.begin(); it != IDs.end(); ++it ){//loop on rphi detector with hits 00364 uint32_t myid=((*it).rawId()); 00365 DetId detid = ((*it)); 00366 00367 // initialize here 00368 for(int i=0; i<MAXHIT; i++){ 00369 rechitrphix[i] =0; 00370 rechitrphierrx[i] =0; 00371 rechitrphiy[i] =0; 00372 rechitrphiz[i] =0; 00373 rechitsasx[i] =0; 00374 rechitsaserrx[i] =0; 00375 rechitsasy[i] =0; 00376 rechitsasz[i] =0; 00377 clusizrphi[i] =0; 00378 clusizsas[i] =0; 00379 cluchgrphi[i] =0; 00380 cluchgsas[i] =0; 00381 rechitrphires[i]=-999.; 00382 rechitsasres[i]=-999.; 00383 rechitrphipullMF[i]=-999.; 00384 rechitsaspullMF[i]=-999.; 00385 chi2rphi[i] =0; 00386 chi2sas[i]=0; 00387 rechitmatchedx[i] =0; 00388 rechitmatchedy[i] =0; 00389 rechitmatchedz[i] =0; 00390 rechitmatchederrxx[i] =0; 00391 rechitmatchederrxy[i] =0; 00392 rechitmatchederryy[i] =0; 00393 rechitmatchedresx[i]=-999; 00394 rechitmatchedresy[i]=-999; 00395 chi2matched[i]=0; 00396 } 00397 00398 numrechitrphi =0; 00399 //loop over rechits-rphi in the same subdetector 00400 SiStripRecHit2DCollection::range rechitrphiRange = rechitsrphi->get(detid); 00401 SiStripRecHit2DCollection::const_iterator rechitrphiRangeIteratorBegin = rechitrphiRange.first; 00402 SiStripRecHit2DCollection::const_iterator rechitrphiRangeIteratorEnd = rechitrphiRange.second; 00403 SiStripRecHit2DCollection::const_iterator iterrphi=rechitrphiRangeIteratorBegin; 00404 00405 numrechitrphi = rechitrphiRangeIteratorEnd - rechitrphiRangeIteratorBegin; 00406 00407 00408 int i=0; 00409 int i2=0; 00410 00411 if(numrechitrphi > 0 ){ 00412 totrechitrphi+=numrechitrphi; 00413 for(iterrphi=rechitrphiRangeIteratorBegin; iterrphi!=rechitrphiRangeIteratorEnd;++iterrphi){ 00414 const GeomDetUnit * det = tracker.idToDetUnit(detid); 00415 const StripGeomDetUnit * stripdet=(const StripGeomDetUnit*)(det); 00416 const StripTopology &topol=(StripTopology&)stripdet->topology(); 00417 SiStripRecHit2D const rechit=*iterrphi; 00418 LocalPoint position=rechit.localPosition(); 00419 LocalError error=rechit.localPositionError(); 00420 MeasurementPoint Mposition; 00421 MeasurementError Merror; 00422 Mposition = topol.measurementPosition(position); 00423 Merror = topol.measurementError(position,error); 00424 SiStripRecHit2D::ClusterRef clust=rechit.cluster(); 00425 int clusiz=0; 00426 int totcharge=0; 00427 clusiz = clust->amplitudes().size(); 00428 const std::vector<uint8_t> amplitudes=clust->amplitudes(); 00429 for(size_t ia=0; ia<amplitudes.size();ia++){ 00430 totcharge+=amplitudes[ia]; 00431 } 00432 rechitrphix[i] = position.x(); 00433 rechitrphiy[i] = position.y(); 00434 rechitrphiz[i] = position.z(); 00435 rechitrphierrx[i] = error.xx(); 00436 clusizrphi[i] = clusiz; 00437 cluchgrphi[i] = totcharge; 00438 00439 matched.clear(); 00440 matched = associate.associateHit(rechit); 00441 float mindist = 999999; 00442 float dist = 999999; 00443 PSimHit closest; 00444 if(!matched.empty()){ 00445 for(vector<PSimHit>::const_iterator m=matched.begin(); m<matched.end(); m++){ 00446 dist = fabs(rechitrphix[i] - (*m).localPosition().x()); 00447 if(dist<mindist){ 00448 mindist = dist; 00449 closest = (*m); 00450 } 00451 rechitrphires[i] = rechitrphix[i] - closest.localPosition().x(); 00452 } 00453 rechitrphipullMF[i] = (Mposition.x() - (topol.measurementPosition(closest.localPosition())).x())/sqrt(Merror.uu()); 00454 00455 //chi2test compare rechit errors with the simhit position ( using null matrix for the simhit). 00456 //Can spot problems in the geometry better than a simple residual. (thanks to BorisM) 00457 AlgebraicVector rhparameters = rechit.parameters(); 00458 AlgebraicVector shparameters(2); 00459 shparameters[0] = closest.localPosition().x(); 00460 shparameters[1] = closest.localPosition().y(); 00461 AlgebraicVector r(rhparameters - shparameters); 00462 AlgebraicSymMatrix R = rechit.parametersError(); 00463 int ierr; 00464 R.invert(ierr); // if (ierr != 0) throw exception; 00465 double est = R.similarity(r); 00466 // std::cout << " ====== Chi2 test rphi hits ====== " << std::endl; 00467 // std::cout << "RecHit param. = " << rhparameters << std::endl; 00468 // std::cout << "RecHit errors = " << R << std::endl; 00469 // std::cout << "SimHit param. = " << shparameters << std::endl; 00470 // std::cout << " chi2 = " << est << std::endl; 00471 // std::cout << "DEBUG BORIS,filling chi2rphi[i],i: " << i << std::endl; 00472 chi2rphi[i2] = est; 00473 i2++; 00474 } 00475 i++; 00476 } 00477 } 00478 00479 //loop over rechits-sas in the same subdetector 00480 int j=0; 00481 int j2=0; 00482 numrechitsas=0; 00483 SiStripRecHit2DCollection::range rechitsasRange = rechitsstereo->get(detid); 00484 SiStripRecHit2DCollection::const_iterator rechitsasRangeIteratorBegin = rechitsasRange.first; 00485 SiStripRecHit2DCollection::const_iterator rechitsasRangeIteratorEnd = rechitsasRange.second; 00486 SiStripRecHit2DCollection::const_iterator itersas=rechitsasRangeIteratorBegin; 00487 numrechitsas = rechitsasRangeIteratorEnd - rechitsasRangeIteratorBegin; 00488 if(numrechitsas > 0){ 00489 totrechitsas+=numrechitsas; 00490 for(itersas=rechitsasRangeIteratorBegin; itersas!=rechitsasRangeIteratorEnd;++itersas){ 00491 const GeomDetUnit * det = tracker.idToDetUnit(detid); 00492 const StripGeomDetUnit * stripdet=(const StripGeomDetUnit*)(det); 00493 const StripTopology &topol=(StripTopology&)stripdet->topology(); 00494 SiStripRecHit2D const rechit=*itersas; 00495 LocalPoint position=rechit.localPosition(); 00496 LocalError error=rechit.localPositionError(); 00497 MeasurementPoint Mposition; 00498 MeasurementError Merror; 00499 Mposition = topol.measurementPosition(position); 00500 Merror = topol.measurementError(position,error); 00501 SiStripRecHit2D::ClusterRef clust=rechit.cluster(); int clusiz=0; 00502 int totcharge=0; 00503 clusiz = clust->amplitudes().size(); 00504 const std::vector<uint8_t> amplitudes=clust->amplitudes(); 00505 for(size_t ia=0; ia<amplitudes.size();ia++){ 00506 totcharge+=amplitudes[ia]; 00507 } 00508 00509 rechitsasx[j] = position.x(); 00510 rechitsasy[j] = position.y(); 00511 rechitsasz[j] = position.z(); 00512 rechitsaserrx[j] = error.xx(); 00513 clusizsas[j] = clusiz; 00514 cluchgsas[j] = totcharge; 00515 00516 float mindist = 999999; 00517 float dist = 999999; 00518 PSimHit closest; 00519 matched.clear(); 00520 matched = associate.associateHit(rechit); 00521 if(!matched.empty()){ 00522 for(vector<PSimHit>::const_iterator m=matched.begin(); m<matched.end(); m++){ 00523 dist = fabs(rechitsasx[j] - (*m).localPosition().x()); 00524 if(dist<mindist){ 00525 mindist = dist; 00526 closest = (*m); 00527 } 00528 rechitsasres[j] = rechitsasx[j] - closest.localPosition().x(); 00529 } 00530 rechitsaspullMF[j] = (Mposition.x() - (topol.measurementPosition(closest.localPosition())).x())/sqrt(Merror.uu()); 00531 //chi2test compare rechit errors with the simhit position ( using null matrix for the simhit). 00532 //Can spot problems in the geometry better than a simple residual. (thanks to BorisM) 00533 AlgebraicVector rhparameters = rechit.parameters(); 00534 AlgebraicVector shparameters(2); 00535 shparameters[0] = closest.localPosition().x(); 00536 shparameters[1] = closest.localPosition().y(); 00537 AlgebraicVector r(rhparameters - shparameters); 00538 AlgebraicSymMatrix R = rechit.parametersError(); 00539 int ierr; 00540 R.invert(ierr); // if (ierr != 0) throw exception; 00541 double est = R.similarity(r); 00542 // std::cout << " ====== Chi2 test sas hits ====== " << std::endl; 00543 // std::cout << "RecHit param. = " << rhparameters << std::endl; 00544 // std::cout << "RecHit errors = " << R << std::endl; 00545 // std::cout << "SimHit param. = " << shparameters << std::endl; 00546 // std::cout << " chi2 = " << est << std::endl; 00547 // std::cout << "DEBUG BORIS,filling chi2sas[j],j: " << i << std::endl; 00548 chi2sas[j2] = est; 00549 j2++; 00550 } 00551 j++; 00552 } 00553 } 00554 00555 //now matched hits 00556 00557 int k=0; 00558 int k2=0; 00559 00560 //loop over rechits-matched in the same subdetector 00561 numrechitmatched=0; 00562 SiStripMatchedRecHit2DCollection::range rechitmatchedRange = rechitsmatched->get(detid); 00563 SiStripMatchedRecHit2DCollection::const_iterator rechitmatchedRangeIteratorBegin = rechitmatchedRange.first; 00564 SiStripMatchedRecHit2DCollection::const_iterator rechitmatchedRangeIteratorEnd = rechitmatchedRange.second; 00565 SiStripMatchedRecHit2DCollection::const_iterator itermatched=rechitmatchedRangeIteratorBegin; 00566 numrechitmatched = rechitmatchedRangeIteratorEnd - rechitmatchedRangeIteratorBegin; 00567 if(numrechitmatched > 0){ 00568 totrechitmatched +=numrechitmatched; 00569 00570 for(itermatched=rechitmatchedRangeIteratorBegin; itermatched!=rechitmatchedRangeIteratorEnd;++itermatched){ 00571 SiStripMatchedRecHit2D const rechit=*itermatched; 00572 LocalPoint position=rechit.localPosition(); 00573 LocalError error=rechit.localPositionError(); 00574 00575 float mindist = 999999; 00576 float distx = 999999; 00577 float disty = 999999; 00578 float dist = 999999; 00579 std::pair<LocalPoint,LocalVector> closestPair; 00580 matched.clear(); 00581 // const SiStripRecHit2D *mono = rechit.monoHit(); 00582 // const SiStripRecHit2D *st = rechit.stereoHit(); 00583 // LocalPoint monopos = mono->localPosition(); 00584 // LocalPoint stpos = st->localPosition(); 00585 00586 rechitmatchedx[k] = position.x(); 00587 rechitmatchedy[k] = position.y(); 00588 rechitmatchedz[k] = position.z(); 00589 rechitmatchederrxx[k] = error.xx(); 00590 rechitmatchederrxy[k] = error.xy(); 00591 rechitmatchederryy[k] = error.yy(); 00592 00593 // std::cout << " before association " << std::endl; 00594 matched = associate.associateHit(rechit); 00595 //std::cout << " after association size = " << matched.size() << std::endl; 00596 00597 if(!matched.empty()){ 00598 //project simhit; 00599 const GluedGeomDet* gluedDet = (const GluedGeomDet*)tracker.idToDet(rechit.geographicalId()); 00600 const StripGeomDetUnit* partnerstripdet =(StripGeomDetUnit*) gluedDet->stereoDet(); 00601 std::pair<LocalPoint,LocalVector> hitPair; 00602 00603 //std::cout << " RECHIT position = " << position << std::endl; 00604 00605 for(vector<PSimHit>::const_iterator m=matched.begin(); m<matched.end(); m++){ 00606 //project simhit; 00607 hitPair= projectHit((*m),partnerstripdet,gluedDet->surface()); 00608 distx = fabs(rechitmatchedx[k] - hitPair.first.x()); 00609 disty = fabs(rechitmatchedy[k] - hitPair.first.y()); 00610 dist = sqrt(distx*distx+disty*disty); 00611 // std::cout << " Simhit position x = " << hitPair.first.x() 00612 // << " y = " << hitPair.first.y() << " dist = " << dist << std::endl; 00613 if(dist<mindist){ 00614 mindist = dist; 00615 closestPair = hitPair; 00616 } 00617 } 00618 //std::cout << " Closest position x = " << closestPair.first.x() 00619 // << " y = " << closestPair.first.y() << " dist = " << dist << std::endl; 00620 rechitmatchedresx[k] = rechitmatchedx[k] - closestPair.first.x(); 00621 rechitmatchedresy[k] = rechitmatchedy[k] - closestPair.first.y(); 00622 00623 //chi2test compare rechit errors with the simhit position ( using null matrix for the simhit). 00624 //Can spot problems in the geometry better than a simple residual. (thanks to BorisM) 00625 00626 AlgebraicVector rhparameters = rechit.parameters(); 00627 LocalPoint sh = closestPair.first; 00628 AlgebraicVector shparameters(2); 00629 shparameters[0] = sh.x(); 00630 shparameters[1] = sh.y(); 00631 AlgebraicVector r(rhparameters - shparameters); 00632 AlgebraicSymMatrix R = rechit.parametersError(); 00633 int ierr; 00634 R.invert(ierr); // if (ierr != 0) throw exception; 00635 double est = R.similarity(r); 00636 // std::cout << " ====== Chi2 test matched ====== " << std::endl; 00637 // std::cout << "RecHit param. = " << rhparameters << std::endl; 00638 // std::cout << "RecHit errors = " << R << std::endl; 00639 // std::cout << "SimHit param. = " << shparameters << std::endl; 00640 // std::cout << " chi2 = " << est << std::endl; 00641 chi2matched[k2] = est; 00642 k2++; 00643 } 00644 00645 k++; 00646 } 00647 } 00648 00649 //for each detid 00650 if(numrechitrphi>0 || numrechitsas>0 || numrechitmatched){ 00651 if (detid.subdetId() == int(StripSubdetector::TIB)){ 00652 TIBDetId tibid(myid); 00653 int Tibnumrechitrphi = numrechitrphi; 00654 int Tibnumrechitsas = numrechitsas; 00655 int Tibnumrechitmatched = numrechitmatched; 00656 00657 int Tibnumrechitrphi2 = i2; 00658 int Tibnumrechitsas2 = j2; 00659 int Tibnumrechitmatched2 = k2; 00660 00661 totTibnumrechitrphi +=numrechitrphi; 00662 totTibnumrechitsas +=numrechitsas; 00663 totTibnumrechitmatched +=numrechitmatched; 00664 00665 int ilay = tibid.layer() - 1; //for histogram filling 00666 00667 if(tibid.stereo()==0){ 00668 for(int k = 0; k<Tibnumrechitrphi; k++){ 00669 meNstpRphiTIB[ilay]->Fill(clusizrphi[k]); 00670 meAdcRphiTIB[ilay]->Fill(cluchgrphi[k]); 00671 mePosxRphiTIB[ilay]->Fill(rechitrphix[k]); 00672 meErrxRphiTIB[ilay]->Fill(sqrt(rechitrphierrx[k])); 00673 meResRphiTIB[ilay]->Fill(rechitrphires[k]); 00674 mePullLFRphiTIB[ilay]->Fill(rechitrphires[k]/sqrt(rechitrphierrx[k])); 00675 mePullMFRphiTIB[ilay]->Fill(rechitrphipullMF[k]); 00676 00677 } 00678 00679 for(int k = 0; k<Tibnumrechitrphi2; k++){ 00680 meChi2RphiTIB[ilay]->Fill(chi2rphi[k]); 00681 } 00682 00683 } else if(tibid.stereo()==1){ 00684 for(int kk = 0; kk < Tibnumrechitsas; kk++) 00685 { 00686 meNstpSasTIB[ilay]->Fill(clusizsas[kk]); 00687 meAdcSasTIB[ilay]->Fill(cluchgsas[kk]); 00688 mePosxSasTIB[ilay]->Fill(rechitsasx[kk]); 00689 meErrxSasTIB[ilay]->Fill(sqrt(rechitsaserrx[kk])); 00690 meResSasTIB[ilay]->Fill(rechitsasres[kk]); 00691 mePullLFSasTIB[ilay]->Fill(rechitsasres[kk]/sqrt(rechitsaserrx[kk])); 00692 mePullMFSasTIB[ilay]->Fill(rechitsaspullMF[kk]); 00693 } 00694 for(int l = 0; l<Tibnumrechitsas2; l++){ 00695 meChi2SasTIB[ilay]->Fill(chi2sas[l]); 00696 } 00697 00698 } 00699 if(Tibnumrechitmatched>0){ 00700 for(int kkk = 0; kkk<Tibnumrechitmatched; kkk++) 00701 { 00702 mePosxMatchedTIB[ilay]->Fill(rechitmatchedx[kkk]); 00703 mePosyMatchedTIB[ilay]->Fill(rechitmatchedy[kkk]); 00704 meErrxMatchedTIB[ilay]->Fill(sqrt(rechitmatchederrxx[kkk])); 00705 meErryMatchedTIB[ilay]->Fill(sqrt(rechitmatchederryy[kkk])); 00706 meResxMatchedTIB[ilay]->Fill(rechitmatchedresx[kkk]); 00707 meResyMatchedTIB[ilay]->Fill(rechitmatchedresy[kkk]); 00708 } 00709 for(int l = 0; l<Tibnumrechitmatched2; l++){ 00710 meChi2MatchedTIB[ilay]->Fill(chi2matched[l]); 00711 } 00712 00713 } 00714 } 00715 00716 00717 if (detid.subdetId() == int(StripSubdetector::TOB)){ 00718 TOBDetId tobid(myid); 00719 int Tobnumrechitrphi = numrechitrphi; 00720 int Tobnumrechitsas = numrechitsas; 00721 int Tobnumrechitmatched = numrechitmatched; 00722 totTobnumrechitrphi +=numrechitrphi; 00723 totTobnumrechitsas +=numrechitsas; 00724 totTobnumrechitmatched +=numrechitmatched; 00725 00726 int Tobnumrechitrphi2 = i2; 00727 int Tobnumrechitsas2 = j2; 00728 int Tobnumrechitmatched2 = k2; 00729 00730 int ilay = tobid.layer() - 1; //for histogram filling 00731 00732 if(tobid.stereo()==0){ 00733 for(int k = 0; k<Tobnumrechitrphi; k++){ 00734 meNstpRphiTOB[ilay]->Fill(clusizrphi[k]); 00735 meAdcRphiTOB[ilay]->Fill(cluchgrphi[k]); 00736 mePosxRphiTOB[ilay]->Fill(rechitrphix[k]); 00737 meErrxRphiTOB[ilay]->Fill(sqrt(rechitrphierrx[k])); 00738 meResRphiTOB[ilay]->Fill(rechitrphires[k]); 00739 mePullLFRphiTOB[ilay]->Fill(rechitrphires[k]/sqrt(rechitrphierrx[k])); 00740 mePullMFRphiTOB[ilay]->Fill(rechitrphipullMF[k]); 00741 } 00742 for(int l = 0; l<Tobnumrechitrphi2; l++){ 00743 meChi2RphiTOB[ilay]->Fill(chi2rphi[l]); 00744 } 00745 } else if(tobid.stereo()==1){ 00746 for(int kk = 0; kk < Tobnumrechitsas; kk++) 00747 { 00748 meNstpSasTOB[ilay]->Fill(clusizsas[kk]); 00749 meAdcSasTOB[ilay]->Fill(cluchgsas[kk]); 00750 mePosxSasTOB[ilay]->Fill(rechitsasx[kk]); 00751 meErrxSasTOB[ilay]->Fill(sqrt(rechitsaserrx[kk])); 00752 meResSasTOB[ilay]->Fill(rechitsasres[kk]); 00753 mePullLFSasTOB[ilay]->Fill(rechitsasres[kk]/sqrt(rechitsaserrx[kk])); 00754 mePullMFSasTOB[ilay]->Fill(rechitsaspullMF[kk]); 00755 } 00756 for(int l = 0; l<Tobnumrechitsas2; l++){ 00757 meChi2SasTOB[ilay]->Fill(chi2sas[l]); 00758 } 00759 00760 } 00761 if(Tobnumrechitmatched>0){ 00762 for(int kkk = 0; kkk<Tobnumrechitmatched; kkk++) 00763 { 00764 mePosxMatchedTOB[ilay]->Fill(rechitmatchedx[kkk]); 00765 mePosyMatchedTOB[ilay]->Fill(rechitmatchedy[kkk]); 00766 meErrxMatchedTOB[ilay]->Fill(sqrt(rechitmatchederrxx[kkk])); 00767 meErryMatchedTOB[ilay]->Fill(sqrt(rechitmatchederryy[kkk])); 00768 meResxMatchedTOB[ilay]->Fill(rechitmatchedresx[kkk]); 00769 meResyMatchedTOB[ilay]->Fill(rechitmatchedresy[kkk]); 00770 } 00771 for(int l = 0; l<Tobnumrechitmatched2; l++){ 00772 meChi2MatchedTOB[ilay]->Fill(chi2matched[l]); 00773 } 00774 00775 } 00776 } 00777 if (detid.subdetId() == int(StripSubdetector::TID)){ 00778 TIDDetId tidid(myid); 00779 int Tidnumrechitrphi = numrechitrphi; 00780 int Tidnumrechitsas = numrechitsas; 00781 int Tidnumrechitmatched = numrechitmatched; 00782 totTidnumrechitrphi +=numrechitrphi; 00783 totTidnumrechitsas +=numrechitsas; 00784 totTidnumrechitmatched +=numrechitmatched; 00785 00786 int Tidnumrechitrphi2 = i2; 00787 int Tidnumrechitsas2 = j2; 00788 int Tidnumrechitmatched2 = k2; 00789 00790 int ilay = tidid.ring() - 1; //for histogram filling 00791 00792 if(tidid.stereo()==0){ 00793 for(int k = 0; k<Tidnumrechitrphi; k++){ 00794 meNstpRphiTID[ilay]->Fill(clusizrphi[k]); 00795 meAdcRphiTID[ilay]->Fill(cluchgrphi[k]); 00796 mePosxRphiTID[ilay]->Fill(rechitrphix[k]); 00797 meErrxRphiTID[ilay]->Fill(sqrt(rechitrphierrx[k])); 00798 meResRphiTID[ilay]->Fill(rechitrphires[k]); 00799 mePullLFRphiTID[ilay]->Fill(rechitrphires[k]/sqrt(rechitrphierrx[k])); 00800 mePullMFRphiTID[ilay]->Fill(rechitrphipullMF[k]); 00801 } 00802 for(int l = 0; l<Tidnumrechitrphi2; l++){ 00803 meChi2RphiTID[ilay]->Fill(chi2rphi[l]); 00804 } 00805 00806 } else if(tidid.stereo()==1){ 00807 for(int kk = 0; kk < Tidnumrechitsas; kk++) 00808 { 00809 meNstpSasTID[ilay]->Fill(clusizsas[kk]); 00810 meAdcSasTID[ilay]->Fill(cluchgsas[kk]); 00811 mePosxSasTID[ilay]->Fill(rechitsasx[kk]); 00812 meErrxSasTID[ilay]->Fill(sqrt(rechitsaserrx[kk])); 00813 meResSasTID[ilay]->Fill(rechitsasres[kk]); 00814 mePullLFSasTID[ilay]->Fill(rechitsasres[kk]/sqrt(rechitsaserrx[kk])); 00815 mePullMFSasTID[ilay]->Fill(rechitsaspullMF[kk]); 00816 } 00817 for(int l = 0; l<Tidnumrechitsas2; l++){ 00818 meChi2SasTID[ilay]->Fill(chi2sas[l]); 00819 } 00820 00821 } 00822 if(Tidnumrechitmatched>0){ 00823 for(int kkk = 0; kkk<Tidnumrechitmatched; kkk++) 00824 { 00825 mePosxMatchedTID[ilay]->Fill(rechitmatchedx[kkk]); 00826 mePosyMatchedTID[ilay]->Fill(rechitmatchedy[kkk]); 00827 meErrxMatchedTID[ilay]->Fill(sqrt(rechitmatchederrxx[kkk])); 00828 meErryMatchedTID[ilay]->Fill(sqrt(rechitmatchederryy[kkk])); 00829 meResxMatchedTID[ilay]->Fill(rechitmatchedresx[kkk]); 00830 meResyMatchedTID[ilay]->Fill(rechitmatchedresy[kkk]); 00831 } 00832 for(int l = 0; l<Tidnumrechitmatched2; l++){ 00833 meChi2MatchedTID[ilay]->Fill(chi2matched[l]); 00834 } 00835 00836 } 00837 } 00838 if (detid.subdetId() == int(StripSubdetector::TEC)){ 00839 TECDetId tecid(myid); 00840 int Tecnumrechitrphi = numrechitrphi; 00841 int Tecnumrechitsas = numrechitsas; 00842 int Tecnumrechitmatched = numrechitmatched; 00843 totTecnumrechitrphi +=numrechitrphi; 00844 totTecnumrechitsas +=numrechitsas; 00845 totTecnumrechitmatched +=numrechitmatched; 00846 00847 int Tecnumrechitrphi2 = i2; 00848 int Tecnumrechitsas2 = j2; 00849 int Tecnumrechitmatched2 = k2; 00850 00851 int ilay = tecid.ring() - 1; //for histogram filling 00852 00853 if(tecid.stereo()==0){ 00854 for(int k = 0; k<Tecnumrechitrphi; k++){ 00855 meNstpRphiTEC[ilay]->Fill(clusizrphi[k]); 00856 meAdcRphiTEC[ilay]->Fill(cluchgrphi[k]); 00857 mePosxRphiTEC[ilay]->Fill(rechitrphix[k]); 00858 meErrxRphiTEC[ilay]->Fill(sqrt(rechitrphierrx[k])); 00859 meResRphiTEC[ilay]->Fill(rechitrphires[k]); 00860 mePullLFRphiTEC[ilay]->Fill(rechitrphires[k]/sqrt(rechitrphierrx[k])); 00861 mePullMFRphiTEC[ilay]->Fill(rechitrphipullMF[k]); 00862 } 00863 for(int l = 0; l<Tecnumrechitrphi2; l++){ 00864 meChi2RphiTEC[ilay]->Fill(chi2rphi[l]); 00865 } 00866 00867 } else if(tecid.stereo()==1){ 00868 for(int kk = 0; kk < Tecnumrechitsas; kk++) 00869 { 00870 meNstpSasTEC[ilay]->Fill(clusizsas[kk]); 00871 meAdcSasTEC[ilay]->Fill(cluchgsas[kk]); 00872 mePosxSasTEC[ilay]->Fill(rechitsasx[kk]); 00873 meErrxSasTEC[ilay]->Fill(sqrt(rechitsaserrx[kk])); 00874 meResSasTEC[ilay]->Fill(rechitsasres[kk]); 00875 mePullLFSasTEC[ilay]->Fill(rechitsasres[kk]/sqrt(rechitsaserrx[kk])); 00876 mePullMFSasTEC[ilay]->Fill(rechitsaspullMF[kk]); 00877 } 00878 for(int l = 0; l<Tecnumrechitsas2; l++){ 00879 meChi2SasTEC[ilay]->Fill(chi2sas[l]); 00880 } 00881 00882 } 00883 if(Tecnumrechitmatched>0){ 00884 for(int kkk = 0; kkk<Tecnumrechitmatched; kkk++) 00885 { 00886 mePosxMatchedTEC[ilay]->Fill(rechitmatchedx[kkk]); 00887 mePosyMatchedTEC[ilay]->Fill(rechitmatchedy[kkk]); 00888 meErrxMatchedTEC[ilay]->Fill(sqrt(rechitmatchederrxx[kkk])); 00889 meErryMatchedTEC[ilay]->Fill(sqrt(rechitmatchederryy[kkk])); 00890 meResxMatchedTEC[ilay]->Fill(rechitmatchedresx[kkk]); 00891 meResyMatchedTEC[ilay]->Fill(rechitmatchedresy[kkk]); 00892 } 00893 for(int l = 0; l<Tecnumrechitmatched2; l++){ 00894 meChi2MatchedTEC[ilay]->Fill(chi2matched[l]); 00895 } 00896 00897 } 00898 } 00899 00900 } 00901 } 00902 00903 //now fill the cumulative histograms of the hits 00904 00905 meNumRphiTIB->Fill(totTibnumrechitrphi); 00906 meNumSasTIB->Fill(totTibnumrechitsas); 00907 meNumMatchedTIB->Fill(totTibnumrechitmatched); 00908 meNumRphiTOB->Fill(totTobnumrechitrphi); 00909 meNumSasTOB->Fill(totTobnumrechitsas); 00910 meNumMatchedTOB->Fill(totTobnumrechitmatched); 00911 meNumRphiTID->Fill(totTidnumrechitrphi); 00912 meNumSasTID->Fill(totTidnumrechitsas); 00913 meNumMatchedTID->Fill(totTidnumrechitmatched); 00914 meNumRphiTEC->Fill(totTecnumrechitrphi); 00915 meNumSasTEC->Fill(totTecnumrechitsas); 00916 meNumMatchedTEC->Fill(totTecnumrechitmatched); 00917 00918 meNumTotRphi->Fill(totrechitrphi); 00919 meNumTotSas->Fill(totrechitsas); 00920 meNumTotMatched->Fill(totrechitmatched); 00921 00922 00923 }
void SiStripRecHitsValid::beginJob | ( | const edm::EventSetup & | c | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 308 of file SiStripRecHitsValid.cc.
References dbe_, outputFile_, and DQMStore::save().
00308 { 00309 if ( outputFile_.size() != 0 && dbe_ ) dbe_->save(outputFile_); 00310 }
std::pair< LocalPoint, LocalVector > SiStripRecHitsValid::projectHit | ( | const PSimHit & | hit, | |
const StripGeomDetUnit * | stripDet, | |||
const BoundPlane & | plane | |||
) | [private] |
Definition at line 927 of file SiStripRecHitsValid.cc.
References funct::cos(), dir, PSimHit::localDirection(), PSimHit::localPosition(), scale, funct::sin(), StripGeomDetUnit::specificTopology(), StripTopology::strip(), StripTopology::stripAngle(), GeomDet::surface(), Surface::toGlobal(), GloballyPositioned< T >::toLocal(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by analyze().
00929 { 00930 // const StripGeomDetUnit* stripDet = dynamic_cast<const StripGeomDetUnit*>(hit.det()); 00931 //if (stripDet == 0) throw MeasurementDetException("HitMatcher hit is not on StripGeomDetUnit"); 00932 00933 const StripTopology& topol = stripDet->specificTopology(); 00934 GlobalPoint globalpos= stripDet->surface().toGlobal(hit.localPosition()); 00935 LocalPoint localHit = plane.toLocal(globalpos); 00936 //track direction 00937 LocalVector locdir=hit.localDirection(); 00938 //rotate track in new frame 00939 00940 GlobalVector globaldir= stripDet->surface().toGlobal(locdir); 00941 LocalVector dir=plane.toLocal(globaldir); 00942 float scale = -localHit.z() / dir.z(); 00943 00944 LocalPoint projectedPos = localHit + scale*dir; 00945 00946 // std::cout << "projectedPos " << projectedPos << std::endl; 00947 00948 float selfAngle = topol.stripAngle( topol.strip( hit.localPosition())); 00949 00950 LocalVector stripDir( sin(selfAngle), cos(selfAngle), 0); // vector along strip in hit frame 00951 00952 LocalVector localStripDir( plane.toLocal(stripDet->surface().toGlobal( stripDir))); 00953 00954 return std::pair<LocalPoint,LocalVector>( projectedPos, localStripDir); 00955 }
float SiStripRecHitsValid::chi2matched[MAXHIT] [private] |
float SiStripRecHitsValid::chi2rphi[MAXHIT] [private] |
float SiStripRecHitsValid::chi2sas[MAXHIT] [private] |
float SiStripRecHitsValid::cluchgrphi[MAXHIT] [private] |
float SiStripRecHitsValid::cluchgsas[MAXHIT] [private] |
int SiStripRecHitsValid::clusizrphi[MAXHIT] [private] |
int SiStripRecHitsValid::clusizsas[MAXHIT] [private] |
edm::ParameterSet SiStripRecHitsValid::conf_ [private] |
DQMStore* SiStripRecHitsValid::dbe_ [private] |
Definition at line 67 of file SiStripRecHitsValid.h.
Referenced by endJob(), and SiStripRecHitsValid().
std::vector<PSimHit> SiStripRecHitsValid::matched [private] |
const int SiStripRecHitsValid::MAXHIT = 1000 [static, private] |
MonitorElement* SiStripRecHitsValid::meAdcRphiTEC[7] [private] |
Definition at line 160 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcRphiTIB[4] [private] |
Definition at line 87 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcRphiTID[3] [private] |
Definition at line 135 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcRphiTOB[6] [private] |
Definition at line 111 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcSasTEC[5] [private] |
Definition at line 168 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcSasTIB[4] [private] |
Definition at line 95 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcSasTID[2] [private] |
Definition at line 143 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meAdcSasTOB[2] [private] |
Definition at line 119 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2MatchedTEC[5] [private] |
Definition at line 181 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2MatchedTIB[2] [private] |
Definition at line 108 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2MatchedTID[2] [private] |
Definition at line 157 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2MatchedTOB[2] [private] |
Definition at line 132 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2RphiTEC[7] [private] |
Definition at line 166 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2RphiTIB[4] [private] |
Definition at line 93 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2RphiTID[3] [private] |
Definition at line 141 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2RphiTOB[6] [private] |
Definition at line 117 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2SasTEC[5] [private] |
Definition at line 174 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2SasTIB[4] [private] |
Definition at line 101 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2SasTID[2] [private] |
Definition at line 149 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meChi2SasTOB[2] [private] |
Definition at line 125 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxMatchedTEC[5] [private] |
Definition at line 177 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxMatchedTIB[2] [private] |
Definition at line 104 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxMatchedTID[2] [private] |
Definition at line 153 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxMatchedTOB[2] [private] |
Definition at line 128 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxRphiTEC[7] [private] |
Definition at line 162 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxRphiTIB[4] [private] |
Definition at line 89 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxRphiTID[3] [private] |
Definition at line 137 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxRphiTOB[6] [private] |
Definition at line 113 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxSasTEC[5] [private] |
Definition at line 170 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxSasTIB[4] [private] |
Definition at line 97 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxSasTID[2] [private] |
Definition at line 145 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErrxSasTOB[2] [private] |
Definition at line 121 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErryMatchedTEC[5] [private] |
Definition at line 178 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErryMatchedTIB[2] [private] |
Definition at line 105 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErryMatchedTID[2] [private] |
Definition at line 154 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meErryMatchedTOB[2] [private] |
Definition at line 129 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpRphiTEC[7] [private] |
Definition at line 159 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpRphiTIB[4] [private] |
Definition at line 86 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpRphiTID[3] [private] |
Definition at line 134 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpRphiTOB[6] [private] |
Definition at line 110 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpSasTEC[5] [private] |
Definition at line 167 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpSasTIB[4] [private] |
Definition at line 94 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpSasTID[2] [private] |
Definition at line 142 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNstpSasTOB[2] [private] |
Definition at line 118 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
Definition at line 83 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
Definition at line 74 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
Definition at line 80 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
Definition at line 77 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumRphiTEC [private] |
Definition at line 81 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumRphiTIB [private] |
Definition at line 72 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumRphiTID [private] |
Definition at line 78 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumRphiTOB [private] |
Definition at line 75 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumSasTEC [private] |
Definition at line 82 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumSasTIB [private] |
Definition at line 73 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumSasTID [private] |
Definition at line 79 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumSasTOB [private] |
Definition at line 76 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
Definition at line 71 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumTotRphi [private] |
Definition at line 69 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meNumTotSas [private] |
Definition at line 70 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxMatchedTEC[5] [private] |
Definition at line 175 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxMatchedTIB[2] [private] |
Definition at line 102 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxMatchedTID[2] [private] |
Definition at line 151 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxMatchedTOB[2] [private] |
Definition at line 126 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxRphiTEC[7] [private] |
Definition at line 161 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxRphiTIB[4] [private] |
Definition at line 88 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxRphiTID[3] [private] |
Definition at line 136 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxRphiTOB[6] [private] |
Definition at line 112 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxSasTEC[5] [private] |
Definition at line 169 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxSasTIB[4] [private] |
Definition at line 96 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxSasTID[2] [private] |
Definition at line 144 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosxSasTOB[2] [private] |
Definition at line 120 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosyMatchedTEC[5] [private] |
Definition at line 176 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosyMatchedTIB[2] [private] |
Definition at line 103 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosyMatchedTID[2] [private] |
Definition at line 152 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePosyMatchedTOB[2] [private] |
Definition at line 127 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFRphiTEC[7] [private] |
Definition at line 164 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFRphiTIB[4] [private] |
Definition at line 91 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFRphiTID[3] [private] |
Definition at line 139 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFRphiTOB[6] [private] |
Definition at line 115 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFSasTEC[5] [private] |
Definition at line 172 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFSasTIB[4] [private] |
Definition at line 99 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFSasTID[2] [private] |
Definition at line 147 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullLFSasTOB[2] [private] |
Definition at line 123 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFRphiTEC[7] [private] |
Definition at line 165 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFRphiTIB[4] [private] |
Definition at line 92 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFRphiTID[3] [private] |
Definition at line 140 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFRphiTOB[6] [private] |
Definition at line 116 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFSasTEC[5] [private] |
Definition at line 173 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFSasTIB[4] [private] |
Definition at line 100 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFSasTID[2] [private] |
Definition at line 148 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::mePullMFSasTOB[2] [private] |
Definition at line 124 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResRphiTEC[7] [private] |
Definition at line 163 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResRphiTIB[4] [private] |
Definition at line 90 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResRphiTID[3] [private] |
Definition at line 138 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResRphiTOB[6] [private] |
Definition at line 114 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResSasTEC[5] [private] |
Definition at line 171 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResSasTIB[4] [private] |
Definition at line 98 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResSasTID[2] [private] |
Definition at line 146 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResSasTOB[2] [private] |
Definition at line 122 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResxMatchedTEC[5] [private] |
Definition at line 179 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResxMatchedTIB[2] [private] |
Definition at line 106 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResxMatchedTID[2] [private] |
Definition at line 155 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResxMatchedTOB[2] [private] |
Definition at line 130 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResyMatchedTEC[5] [private] |
Definition at line 180 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResyMatchedTIB[2] [private] |
Definition at line 107 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResyMatchedTID[2] [private] |
Definition at line 156 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
MonitorElement* SiStripRecHitsValid::meResyMatchedTOB[2] [private] |
Definition at line 131 of file SiStripRecHitsValid.h.
Referenced by analyze(), and SiStripRecHitsValid().
std::string SiStripRecHitsValid::outputFile_ [private] |
Definition at line 68 of file SiStripRecHitsValid.h.
Referenced by endJob(), and SiStripRecHitsValid().
float SiStripRecHitsValid::rechitmatchedchi2[MAXHIT] [private] |
Definition at line 220 of file SiStripRecHitsValid.h.
float SiStripRecHitsValid::rechitmatchederrxx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchederrxy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchederryy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchedphi[MAXHIT] [private] |
Definition at line 217 of file SiStripRecHitsValid.h.
float SiStripRecHitsValid::rechitmatchedresx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchedresy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchedx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchedy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitmatchedz[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphierrx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphiphi[MAXHIT] [private] |
Definition at line 194 of file SiStripRecHitsValid.h.
float SiStripRecHitsValid::rechitrphipullMF[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphires[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphix[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphiy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitrphiz[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsaserrx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsasphi[MAXHIT] [private] |
Definition at line 203 of file SiStripRecHitsValid.h.
float SiStripRecHitsValid::rechitsaspullMF[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsasres[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsasx[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsasy[MAXHIT] [private] |
float SiStripRecHitsValid::rechitsasz[MAXHIT] [private] |