436 edm::LogInfo(
"SiStripRecHitsValid") <<
"SiStripRecHitsValid::beginRun: "
437 <<
" Creating MEs for new Cabling ";
462 int isrechitrphi = 0;
464 int isrechitmatched = 0;
484 tracker2 = &(*estracker);
500 edm::LogVerbatim(
"TrajectoryAnalyzer") <<
"trajColl->size(): " << trajCollectionHandle->size();
502 for (vector < Trajectory >::const_iterator it = trajCollectionHandle->begin(); it != trajCollectionHandle->end(); it++) {
504 edm::LogVerbatim(
"TrajectoryAnalyzer") <<
"this traj has " << it->foundHits() <<
" valid hits" <<
" , " <<
"isValid: " << it->isValid();
506 vector < TrajectoryMeasurement > tmColl = it->measurements();
507 for (vector < TrajectoryMeasurement >::const_iterator itTraj = tmColl.begin(); itTraj != tmColl.end(); itTraj++) {
508 if (!itTraj->updatedState().isValid())
continue;
521 if (itTraj->updatedState().globalMomentum().perp() < 0.5)
continue;
525 DetId detid2 = itTraj->recHit()->geographicalId();
536 detid = (thit)->geographicalId();
537 myid = ((thit)->geographicalId()).rawId();
558 matchedmonorstereo =
"matched";
564 std::map<std::string, StereoAndMatchedMEs>::iterator iStereoAndMatchedME =
StereoAndMatchedMEsMap.find(label);
568 if (isrechitmatched) {
601 auto hm = matchedhit->
monoHit();
611 matchedmonorstereo =
"monoHit";
624 matchedmonorstereo =
"stereoHit";
632 if (StripSubdet.
stereo() == 0) {
644 if (StripSubdet.
stereo() == 1) {
662 if (StripSubdet.
stereo() == 0) {
670 rechitanalysis(tsos, thit2, stripdet, stripcpe, associate,
false);
674 if (StripSubdet.
stereo() == 1) {
683 rechitanalysis(tsos, thit2, stripdet, stripcpe, associate,
false);
691 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(label);
693 if (isrechitrphi > 0 || isrechitsas > 0) {
697 if (isrechitrphi > 0) {
752 if (isrechitsas > 0) {
808 if (isrechitrphi > 0) {
899 if (isrechitsas > 0) {
965 LocalPoint localHit = plane.toLocal(globalpos);
972 float scale = -localHit.
z() / dir.
z();
984 return std::pair < LocalPoint, LocalVector > (projectedPos, localStripDir);
1005 if (matchedmonorstereo ==
"monoHit"){
1006 auto hm = matchedhit->
monoHit();
1010 if (matchedmonorstereo ==
"stereoHit"){
1026 if (matchedmonorstereo ==
"matched"){
1030 if(matchedmonorstereo ==
"monoHit"){
1031 position = monohit->localPosition();
1032 error = monohit->localPositionError();
1036 if (matchedmonorstereo ==
"stereoHit"){
1049 if(matchedmonorstereo ==
"monoHit"){
1050 if (monotkdir.
z() != 0) {
1055 if (matchedmonorstereo ==
"stereoHit"){
1056 if (stereotkdir.
z() != 0) {
1066 float tanalphaL = drift.
x() / drift.
z();
1074 if(matchedmonorstereo ==
"monoHit"){clust = monohit->cluster();}
1075 if(matchedmonorstereo ==
"stereoHit"){clust = stereohit->
cluster();}
1079 clusiz = clust->amplitudes().size();
1080 const auto & amplitudes=clust->amplitudes();
1081 for(
size_t ia=0; ia<amplitudes.size();ia++){
1082 totcharge+=amplitudes[ia];
1111 double mindist = 999999;
1112 double dist = 999999;
1113 double distx = 999999;
1114 double disty = 999999;
1115 std::pair<LocalPoint,LocalVector> closestPair;
1121 std::pair<LocalPoint,LocalVector> hitPair;
1125 if(matchedmonorstereo ==
"matched"){
1127 distx = fabs(
rechitpro.
x - hitPair.first.x());
1128 disty = fabs(
rechitpro.
y - hitPair.first.y());
1129 dist =
sqrt(distx*distx+disty*disty);
1131 if(matchedmonorstereo ==
"monoHit"){dist =
abs((monohit)->localPosition().
x() - (*m).localPosition().x());}
1132 if(matchedmonorstereo ==
"stereoHit"){dist =
abs((stereohit)->localPosition().
x() - (*m).localPosition().x());}
1138 closestPair = hitPair;
1143 if(matchedmonorstereo ==
"matched"){
1146 rechitpro.
pullx = ((rechit)->localPosition().x() - (closestPair.first.x())) /
sqrt(error.
xx());
1147 rechitpro.
pully = ((rechit)->localPosition().y() - (closestPair.first.y())) /
sqrt(error.
yy());
1150 if( (matchedmonorstereo ==
"monoHit") || (matchedmonorstereo ==
"stereoHit") ){
1188 float tanalphaL = drift.
x() / drift.
z();
1200 if(!simplehit1or2D){
1202 clusiz = clust2d->amplitudes().size();
1203 const auto & amplitudes2d = clust2d->amplitudes();
1204 for(
size_t ia=0; ia<amplitudes2d.size();ia++){
1205 totcharge+=amplitudes2d[ia];
1209 clusiz = clust1d->amplitudes().size();
1210 const auto & amplitudes1d = clust1d->amplitudes();
1211 for(
size_t ia=0; ia<amplitudes1d.size();ia++){
1212 totcharge+=amplitudes1d[ia];
1240 if(!simplehit1or2D){
1246 double mindist = 999999;
1247 double dist = 999999;
1253 if(!simplehit1or2D){
1254 dist =
abs((hit2d)->localPosition().
x() - (*m).localPosition().x());
1256 dist =
abs((hit1d)->localPosition().
x() - (*m).localPosition().x());
1284 std::vector<uint32_t> activeDets;
1300 edm::LogInfo(
"SiStripTrackingRecHitsValid|SiStripTrackingRecHitsValid")<<
"nr. of activeDets: "<<activeDets.size();
1301 for(std::vector<uint32_t>::iterator detid_iterator = activeDets.begin(); detid_iterator!=activeDets.end(); detid_iterator++){
1302 uint32_t
detid = (*detid_iterator);
1305 activeDets.erase(detid_iterator);
1310 std::pair<std::string,int32_t> det_layer_pair = folder_organizer.
GetSubDetAndLayer(detid,tTopo,
true);
1315 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(label);
1320 int32_t lnumber = det_layer_pair.second;
1321 std::vector<uint32_t> layerDetIds;
1322 if (det_layer_pair.first ==
"TIB") {
1324 }
else if (det_layer_pair.first ==
"TOB") {
1326 }
else if (det_layer_pair.first ==
"TID" && lnumber > 0) {
1328 }
else if (det_layer_pair.first ==
"TID" && lnumber < 0) {
1330 }
else if (det_layer_pair.first ==
"TEC" && lnumber > 0) {
1332 }
else if (det_layer_pair.first ==
"TEC" && lnumber < 0) {
1338 folder_organizer.
setLayerFolder(detid,tTopo,det_layer_pair.second,
true);
1346 std::map<std::string, StereoAndMatchedMEs>::iterator iStereoAndMatchedME =
StereoAndMatchedMEsMap.find(label);
1350 bool isStereo =
false;
1352 int32_t stereolnumber = det_layer_pair.second;
1353 std::vector<uint32_t> stereoandmatchedDetIds;
1354 if ( (det_layer_pair.first ==
"TIB") && (tTopo->
tibIsStereo(detid)== 1) ) {
1355 substructure.
getTIBDetectors(activeDets,stereoandmatchedDetIds,stereolnumber,0,0,0);
1357 }
else if ( (det_layer_pair.first ==
"TOB") && (tTopo->
tobIsStereo(detid)== 1) ) {
1358 substructure.
getTOBDetectors(activeDets,stereoandmatchedDetIds,stereolnumber,0,0);
1360 }
else if ( (det_layer_pair.first ==
"TID") && (stereolnumber > 0) && (tTopo->
tidIsStereo(detid)== 1) ) {
1361 substructure.
getTIDDetectors(activeDets,stereoandmatchedDetIds,2,0,
abs(stereolnumber),1);
1363 }
else if ( (det_layer_pair.first ==
"TID") && (stereolnumber < 0) && (tTopo->
tidIsStereo(detid)== 1) ) {
1364 substructure.
getTIDDetectors(activeDets,stereoandmatchedDetIds,1,0,
abs(stereolnumber),1);
1366 }
else if ( (det_layer_pair.first ==
"TEC") && (stereolnumber > 0) && (tTopo->
tecIsStereo(detid)== 1) ) {
1367 substructure.
getTECDetectors(activeDets,stereoandmatchedDetIds,2,0,0,0,
abs(stereolnumber),1);
1369 }
else if ( (det_layer_pair.first ==
"TEC") && (stereolnumber < 0) && (tTopo->
tecIsStereo(detid)== 1) ) {
1370 substructure.
getTECDetectors(activeDets,stereoandmatchedDetIds,1,0,0,0,
abs(stereolnumber),1);
1377 folder_organizer.
setLayerFolder(detid,tTopo,det_layer_pair.second,
true);
1638 layerMEs.
meWclusRphi =
bookME1D(ibooker,
"TH1WclusRphi", hidmanager.
createHistoLayer(
"Wclus_rphi",
"layer",label,
"").c_str() ,
"Cluster Width - Number of strips that belong to the RecHit cluster");
1968 stereoandmatchedMEs.
meWclusSas =
bookME1D(ibooker,
"TH1WclusSas", hidmanager.
createHistoLayer(
"Wclus_sas",
"layer",label,
"").c_str() ,
"Cluster Width - Number of strips that belong to the RecHit cluster");
1974 stereoandmatchedMEs.
meAdcSas->
setAxisTitle((
"cluster charge [ADC] (stereo) in " + label).c_str());
1984 stereoandmatchedMEs.
meResolxMFSas->
setAxisTitle((
"resol(x) RecHit coord. (measurement frame) (stereo) in " + label).c_str());
1988 stereoandmatchedMEs.
meResLFSas =
bookME1D(ibooker,
"TH1ResLFSas", hidmanager.
createHistoLayer(
"Res_LF_sas",
"layer",label,
"").c_str() ,
"Residual of the hit x coordinate");
1989 stereoandmatchedMEs.
meResLFSas->
setAxisTitle((
"Hit Residuals(x) (local frame) (stereo) in " + label).c_str());
1993 stereoandmatchedMEs.
meResMFSas =
bookME1D(ibooker,
"TH1ResMFSas", hidmanager.
createHistoLayer(
"Res_MF_sas",
"layer",label,
"").c_str() ,
"Residual of the hit x coordinate");
1999 stereoandmatchedMEs.
mePullLFSas->
setAxisTitle((
"Pull distribution (local frame) (stereo) in " + label).c_str());
2004 stereoandmatchedMEs.
mePullMFSas->
setAxisTitle((
"Pull distribution (measurement frame) (stereo) in " + label).c_str());
2134 return ibooker.
book1D(HistoName,HistoTitle,
ClusterRef cluster() const
MonitorElement * mePullTrackwidthProfileRphiwclus3
bool layerswitchPullTrackwidthProfileCategory1Sas
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
MonitorElement * meResMFTrackwidthProfileWClus23
bool layerswitchResolxMFRphiwclus1
bool layerswitchResyMatched
T getParameter(std::string const &) const
SiStripTrackingRecHitsValid(const edm::ParameterSet &conf)
EventNumber_t event() const
MonitorElement * meResolxLFRphi
virtual const TrackerGeomDet * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
MonitorElement * meResolxMFClusterwidthProfileCategory1Sas
edm::ESHandle< SiStripDetCabling > SiStripDetCabling_
~SiStripTrackingRecHitsValid()
MonitorElement * meResMFTrackwidthProfileWclus1Rphi
bool layerswitchResMFTrackwidthProfileWclus4Rphi
bool layerswitchrapidityResProfilewclus2
MonitorElement * mePullTrackwidthProfileRphiwclus1
MonitorElement * meAdcRphi
bool layerswitchResolxMFTrackwidthProfileCategory3Rphi
void rechitanalysis(TrajectoryStateOnSurface tsos, const TransientTrackingRecHit::ConstRecHitPointer thit, const StripGeomDetUnit *stripdet, edm::ESHandle< StripClusterParameterEstimator > stripcpe, TrackerHitAssociator &associate, bool simplehit1or2D)
MonitorElement * meResolxMFTrackwidthProfile
bool layerswitchPullyMatched
MonitorElement * meResMFTrackwidthProfileWClus2
MonitorElement * meResMFTrackwidthProfileWClus4
void setSiStripFolderName(std::string name)
MonitorElement * meResolxMFTrackwidthProfileWClus3
bool layerswitchResolxMFTrackwidthProfileCategory3Sas
bool layerswitchResolxMFTrackwidthProfileWclus3Rphi
bool layerswitchPullMFRphiwclus2
bool layerswitchResolxMFTrackwidthProfile
bool layerswitchClusterwidth
virtual float stripAngle(float strip) const =0
const GeomDetUnit * monoDet() const
MonitorElement * mePullMFRphi
std::map< std::string, StereoAndMatchedMEs > StereoAndMatchedMEsMap
bool layerswitchResolxMatched
bool tobIsStereo(const DetId &id) const
MonitorElement * meResolxMFSas
MonitorElement * meResolxMFRphiwclus4
MonitorElement * bookME1D(DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName, const char *HistoTitle)
MonitorElement * bookProfile(Args &&...args)
bool layerswitchResMFTrackwidthProfile_WClus22
MonitorElement * meResolxMFTrackwidthProfileCategory1
MonitorElement * meResolxMFTrackwidthProfileWclus2Rphi
bool getByToken(EDGetToken token, Handle< PROD > &result) const
bool layerswitchResMFRphiwclus4
MonitorElement * meTrackwidthRphi
bool layerswitchResolxMFTrackwidthProfileWclus1Rphi
void fillME(MonitorElement *ME, float value1)
MonitorElement * meResolxMFTrackwidthProfileWclus3Rphi
MonitorElement * merapidityResProfilewclus1
MonitorElement * meResolxMFRphiwclus2
bool layerswitchPullTrackwidthProfileRphi
bool layerswitchPullTrackwidthProfileCategory2Sas
bool layerswitchResolxMFRphi
LocalVector localDirection() const
bool layerswitchResolxMFSas
bool layerswitchPullMFSas
bool layerswitchPullTrackwidthProfileCategory2Rphi
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
std::vector< RecHitProperties > rechitstereo
bool layerswitchResolxLFRphi
MonitorElement * mePullMFRphiwclus4
Sin< T >::type sin(const T &t)
MonitorElement * meResMFRphiwclus4
bool layerswitchPullTrackwidthProfileRphiwclus3
edm::EDGetTokenT< std::vector< Trajectory > > trajectoryInputToken_
RecHitProperties rechitpro
bool layerswitchResolxMFTrackwidthProfileWclus2Rphi
MonitorElement * meResyMatched
LocalVector drift(const StripGeomDetUnit *, const MagneticField &, const SiStripLorentzAngle &)
MonitorElement * meResMFRphiwclus3
bool layerswitchPullTrackangle2DRphi
MonitorElement * meTrackwidthSas
void rechitanalysis_matched(TrajectoryStateOnSurface tsos, const TransientTrackingRecHit::ConstRecHitPointer thit, const GluedGeomDet *gluedDet, TrackerHitAssociator &associate, edm::ESHandle< StripClusterParameterEstimator > stripcpe, std::string matchedmonorstereo)
bool layerswitchExpectedwidthSas
bool layerswitchCategoryRphi
std::map< std::string, LayerMEs > LayerMEsMap
bool layerswitchResolxMFClusterwidthProfileCategory1Rphi
MonitorElement * meCategory
bool layerswitchExpectedwidth
LocalPoint toLocal(const GlobalPoint &gp) const
Conversion to the R.F. of the GeomDet.
bool layerswitchResolxMFAngleProfile
MonitorElement * mePullTrackwidthProfileCategory1Sas
std::pair< std::string, int32_t > GetSubDetAndLayer(const uint32_t &detid, const TrackerTopology *tTopo, bool ring_flag=0)
bool layerswitchResMFTrackwidthProfileWclus3Rphi
const Bounds & bounds() const
MonitorElement * meTrackanglebetaRphi
MonitorElement * mePullLFRphi
MonitorElement * mePullTrackwidthProfileSas
bool layerswitchrapidityResProfilewclus4
bool layerswitchWclusRphi
bool layerswitchPullTrackwidthProfileSas
void createLayerMEs(DQMStore::IBooker &ibooker, std::string label)
MonitorElement * meExpectedwidthSas
bool layerswitchResxMatched
bool layerswitchPullMFRphiwclus3
edm::ParameterSet Parameters
bool layerswitchResolxMFTrackwidthProfileSas
bool layerswitchResLFRphi
MonitorElement * meResolxMFTrackwidthProfileCategory3Sas
virtual const StripTopology & specificTopology() const
Returns a reference to the strip proxy topology.
MonitorElement * mePullLFSas
bool layerswitchResolxMFTrackwidthProfile_WClus2
MonitorElement * meResolxMFAngleProfileRphi
bool layerswitchPosyMatched
MonitorElement * meResolxMFAngleProfile
bool layerswitchPullLFRphi
const Plane & surface() const
The nominal surface of the GeomDet.
bool layerswitchResMFTrackwidthProfileWclus2Rphi
bool layerswitchResolxMFTrackwidthProfile_Category3
bool layerswitchResolxMFTrackwidthProfileWclus4Rphi
MonitorElement * mePullTrackwidthProfileCategory2Rphi
unsigned long long m_cacheID_
bool tidIsStereo(const DetId &id) const
MonitorElement * meResolxMFTrackwidthProfileCategory2
bool layerswitchResolxMFClusterwidthProfileCategory1Sas
virtual float strip(const LocalPoint &) const =0
MonitorElement * meResolxMFAngleProfileSas
MonitorElement * meResMFSas
virtual float thickness() const =0
MonitorElement * meExpectedwidthRphi
MonitorElement * mePullMFSas
bool layerswitchTrackanglebeta
MonitorElement * meResMFTrackwidthProfileWclus4Rphi
MonitorElement * meWclusSas
bool tecIsStereo(const DetId &id) const
virtual float localPitch(const LocalPoint &) const =0
MonitorElement * meResMFTrackwidthProfileWClus3
bool layerswitchResMFTrackwidthProfile_WClus4
const MagneticField * magfield2_
MonitorElement * meClusterwidth
bool layerswitchTrackangleRphi
bool layerswitchTrackangleSas
virtual LocalError localPositionError() const
void createSimpleHitsMEs(DQMStore::IBooker &ibooker)
bool layerswitchResMFRphiwclus2
MonitorElement * merapidityResProfilewclus3
MonitorElement * mePullTrackwidthProfileCategory2Sas
bool layerswitchResolxMFTrackwidthProfile_WClus3
MonitorElement * meResolxMFTrackwidthProfileWclus1Rphi
virtual MeasurementError measurementError(const LocalPoint &, const LocalError &) const =0
bool layerswitchResolxMFTrackwidthProfile_Category2
std::vector< RecHitProperties > rechitmatched
MonitorElement * meResolxMFTrackwidthProfileWclus4Rphi
bool layerswitchResolxMFTrackwidthProfileCategory1Rphi
bool layerswitchResMFTrackwidthProfile_WClus1
void getTOBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tobDetRawIds, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t rod=0) const
Local3DPoint localPosition() const
bool layerswitchResolxMFRphiwclus2
MonitorElement * meTrackwidth
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
bool layerswitchResolyMatched
MonitorElement * meResolxMFRphi
MonitorElement * meCategoryRphi
void bookHistograms(DQMStore::IBooker &ibooker, const edm::Run &run, const edm::EventSetup &es)
SimpleHitsMEs simplehitsMEs
MonitorElement * meResolxMFTrackwidthProfileCategory2Rphi
MonitorElement * mePullMFRphiwclus1
Cos< T >::type cos(const T &t)
bool layerswitchClusterwidthSas
bool layerswitchCategorySas
bool layerswitchPullTrackwidthProfileCategory1Rphi
MonitorElement * meResolxMatched
bool layerswitchPullMFRphiwclus1
MonitorElement * mePullTrackwidthProfileRphiwclus2
MonitorElement * book1D(Args &&...args)
std::string outputFileName
bool layerswitchResolxMFAngleProfileSas
Tan< T >::type tan(const T &t)
Abs< T >::type abs(const T &t)
MonitorElement * meAdcSas
virtual const Topology & topology() const override
Returns a reference to the strip proxy topology.
bool layerswitchExpectedwidthRphi
MonitorElement * meResMFTrackwidthProfileWClus1
MonitorElement * meResolxMFTrackwidthProfileCategory1Sas
bool layerswitchResolxMFClusterwidthProfile_Category1
bool layerswitchTrackangle2Rphi
std::vector< RecHitProperties > rechitrphi
ClusterRef cluster() const
MonitorElement * meResMFTrackwidthProfileWClus22
MonitorElement * meResolxMF
virtual MeasurementPoint measurementPosition(const LocalPoint &) const =0
bool layerswitchResolxMFTrackwidthProfile_Category4
MonitorElement * meTrackangleSas
MonitorElement * meResMFRphiwclus2
virtual void analyze(const edm::Event &e, const edm::EventSetup &c)
bool layerswitchTrackwidth
std::string getSubdetid(uint32_t id, const TrackerTopology *tTopo, bool flag_ring)
MonitorElement * mePullTrackwidthProfileCategory1Rphi
int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
MonitorElement * mePullTrackwidthProfileCategory4Rphi
MonitorElement * meResolxMFTrackwidthProfileWClus2
bool layerswitchrapidityResProfilewclus3
std::string topFolderName_
MonitorElement * meResLFSas
void createMEs(DQMStore::IBooker &ibooker, const edm::EventSetup &es)
bool layerswitchPullTrackwidthProfileCategory3Sas
MonitorElement * mePullxMatched
std::pair< LocalPoint, LocalVector > projectHit(const PSimHit &hit, const StripGeomDetUnit *stripDet, const BoundPlane &plane)
std::vector< PSimHit > matched
MonitorElement * meResMFTrackwidthProfileWclus2Rphi
MonitorElement * bookMEProfile(DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName, const char *HistoTitle)
MonitorElement * meResolxLF
MonitorElement * meResolxMFTrackwidthProfileCategory4
MonitorElement * meWclusRphi
bool layerswitchPullLFSas
bool layerswitchPullTrackwidthProfileRphiwclus4
LocalVector localDirection() const
Obsolete. Same as momentumAtEntry().unit(), for backward compatibility.
bool layerswitchClusterwidthRphi
MonitorElement * meTrackanglealpha
bool layerswitchTrackwidthRphi
bool layerswitchResolxMFTrackwidthProfileCategory2Sas
MonitorElement * mePullTrackwidthProfileCategory3Sas
unsigned int stereo() const
stereo
virtual TrackingRecHit const * hit() const
MonitorElement * meTrackanglebetaSas
MonitorElement * mePullMF
bool layerswitchPullTrackwidthProfileCategory4Sas
void setLayerFolder(uint32_t rawdetid, const TrackerTopology *tTopo, int32_t layer=0, bool ring_flag=0)
SiStripRecHit2D stereoHit() const
MonitorElement * meResolxMFTrackwidthProfileCategory2Sas
MonitorElement * mePosxMatched
bool layerswitchPullMFRphiwclus4
MonitorElement * meClusterwidthRphi
MonitorElement * meResxMatched
MonitorElement * meResolxMFTrackwidthProfileRphi
bool layerswitchResolxMFTrackwidthProfile_WClus4
MonitorElement * meResolyMatched
virtual LocalError localPositionError() const =0
bool layerswitchResolxMFRphiwclus3
bool layerswitchPullxMatched
MonitorElement * mePullTrackangle2DRphi
MonitorElement * meResolxMFTrackwidthProfileCategory3Rphi
bool layerswitchPullTrackangleProfileRphi
MonitorElement * mePullTrackwidthProfileCategory4Sas
MonitorElement * mePullMFRphiwclus3
bool tibIsStereo(const DetId &id) const
MonitorElement * meResLFRphi
T const * product() const
bool layerswitchResolxMFTrackwidthProfileCategory4Rphi
bool layerswitchPullTrackwidthProfileCategory4Rphi
void createStereoAndMatchedMEs(DQMStore::IBooker &ibooker, std::string label)
MonitorElement * meResolxMFTrackwidthProfileWClus1
bool layerswitchResMFRphiwclus1
bool layerswitchPullTrackwidthProfileRphiwclus1
MonitorElement * meResolxMFTrackwidthProfileCategory4Sas
bool layerswitchResolxMFTrackwidthProfileCategory2Rphi
MonitorElement * mePullyMatched
MonitorElement * mePullTrackangleProfileRphi
MonitorElement * meCategorySas
bool layerswitchResolxMFTrackwidthProfileCategory4Sas
MonitorElement * mePullTrackwidthProfileCategory3Rphi
void getTECDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tecDetRawIds, uint32_t side=0, uint32_t wheel=0, uint32_t petal_bkw_frw=0, uint32_t petal=0, uint32_t ring=0, uint32_t ster=0) const
MonitorElement * meResMFRphiwclus1
SiStripRecHit2D monoHit() const
bool layerswitchResMFTrackwidthProfile_WClus23
bool layerswitchResMFTrackwidthProfile_WClus3
bool layerswitchResMFTrackwidthProfile_WClus2
MonitorElement * meExpectedwidth
bool layerswitchResMFRphi
MonitorElement * meResMFTrackwidthProfileWclus3Rphi
MonitorElement * mePullTrackwidthProfileRphi
MonitorElement * meResolxMFTrackwidthProfileCategory3
bool layerswitchResolxMFTrackwidthProfileRphi
MonitorElement * meResolxMFRphiwclus1
static int position[264][3]
MonitorElement * merapidityResProfilewclus2
void getTIBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tibDetRawIds, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t int_ext=0, uint32_t string=0) const
MonitorElement * meResolxMFTrackwidthProfileWClus4
bool layerswitchResolx_LF
MonitorElement * meResolxMFTrackwidthProfileSas
bool layerswitchResolx_MF
std::vector< PSimHit > associateHit(const TrackingRecHit &thit) const
MonitorElement * meTrackangleRphi
std::map< std::string, std::vector< uint32_t > > StereoAndMatchedDetMap
bool layerswitchTrackanglealpha
void getTIDDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tidDetRawIds, uint32_t side=0, uint32_t wheel=0, uint32_t ring=0, uint32_t ster=0) const
bool layerswitchrapidityResProfilewclus1
MonitorElement * merapidityResProfilewclus4
DetId geographicalId() const
bool layerswitchPullTrackangleProfileSas
MonitorElement * meResolxMFTrackwidthProfileCategory1Rphi
std::string createHistoLayer(std::string description, std::string id_type, std::string path, std::string flag)
bool layerswitchResolxMFTrackwidthProfile_Category1
bool layerswitchResolxMFAngleProfileRphi
MonitorElement * meResMFRphi
MonitorElement * mePullTrackwidthProfileRphiwclus4
MonitorElement * meResolxMFClusterwidthProfileCategory1
std::map< std::string, std::vector< uint32_t > > LayerDetMap
MonitorElement * meTrackangle2Rphi
virtual LocalPoint localPosition() const =0
bool layerswitchPosxMatched
virtual LocalPoint localPosition() const
MonitorElement * meResMFTrackwidthProfileWClus21
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
bool layerswitchResMFRphiwclus3
MonitorElement * meClusterwidthSas
bool layerswitchResMFTrackwidthProfileWclus1Rphi
bool layerswitchPullMFRphi
MonitorElement * mePullLF
bool layerswitchResolxMFTrackwidthProfileCategory1Sas
MonitorElement * mePullTrackangleProfileSas
MonitorElement * meResolxMFRphiwclus3
MonitorElement * mePullMFRphiwclus2
MonitorElement * meResolxMFTrackwidthProfileCategory4Rphi
bool layerswitchResolxLFSas
bool layerswitchPullTrackwidthProfileCategory3Rphi
bool layerswitchPullTrackwidthProfileRphiwclus2
bool layerswitchTrackanglebetaRphi
bool layerswitchTrackanglebetaSas
bool layerswitchResolxMFRphiwclus4
MonitorElement * meTrackanglebeta
MonitorElement * meResolxMFClusterwidthProfileCategory1Rphi
const GeomDetUnit * stereoDet() const
GlobalVector globalDirection() const
void beginJob(const edm::EventSetup &es)
bool layerswitchResMFTrackwidthProfile_WClus21
virtual const TrackerGeomDet * idToDet(DetId) const
bool layerswitchResolxMFTrackwidthProfile_WClus1
MonitorElement * meResolxLFSas
MonitorElement * mePosyMatched
bool layerswitchTrackwidthSas