439 edm::LogInfo(
"SiStripRecHitsValid") <<
"SiStripRecHitsValid::beginRun: "
440 <<
" Creating MEs for new Cabling ";
465 int isrechitrphi = 0;
467 int isrechitmatched = 0;
487 tracker2 = &(*estracker);
503 edm::LogVerbatim(
"TrajectoryAnalyzer") <<
"trajColl->size(): " << trajCollectionHandle->size();
505 for (vector < Trajectory >::const_iterator it = trajCollectionHandle->begin(); it != trajCollectionHandle->end(); it++) {
507 edm::LogVerbatim(
"TrajectoryAnalyzer") <<
"this traj has " << it->foundHits() <<
" valid hits" <<
" , " <<
"isValid: " << it->isValid();
509 vector < TrajectoryMeasurement > tmColl = it->measurements();
510 for (vector < TrajectoryMeasurement >::const_iterator itTraj = tmColl.begin(); itTraj != tmColl.end(); itTraj++) {
511 if (!itTraj->updatedState().isValid())
continue;
524 if (itTraj->updatedState().globalMomentum().perp() < 0.5)
continue;
528 DetId detid2 = itTraj->recHit()->geographicalId();
539 detid = (thit)->geographicalId();
540 myid = ((thit)->geographicalId()).rawId();
561 matchedmonorstereo =
"matched";
567 std::map<std::string, StereoAndMatchedMEs>::iterator iStereoAndMatchedME =
StereoAndMatchedMEsMap.find(label);
571 if (isrechitmatched) {
604 auto hm = matchedhit->
monoHit();
614 matchedmonorstereo =
"monoHit";
627 matchedmonorstereo =
"stereoHit";
635 if (StripSubdet.
stereo() == 0) {
647 if (StripSubdet.
stereo() == 1) {
665 if (StripSubdet.
stereo() == 0) {
673 rechitanalysis(tsos, thit2, stripdet, stripcpe, associate,
false);
677 if (StripSubdet.
stereo() == 1) {
686 rechitanalysis(tsos, thit2, stripdet, stripcpe, associate,
false);
694 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(label);
696 if (isrechitrphi > 0 || isrechitsas > 0) {
700 if (isrechitrphi > 0) {
755 if (isrechitsas > 0) {
811 if (isrechitrphi > 0) {
902 if (isrechitsas > 0) {
968 LocalPoint localHit = plane.toLocal(globalpos);
975 float scale = -localHit.
z() / dir.
z();
987 return std::pair < LocalPoint, LocalVector > (projectedPos, localStripDir);
1008 if (matchedmonorstereo ==
"monoHit"){
1009 auto hm = matchedhit->
monoHit();
1013 if (matchedmonorstereo ==
"stereoHit"){
1029 if (matchedmonorstereo ==
"matched"){
1033 if(matchedmonorstereo ==
"monoHit"){
1034 position = monohit->localPosition();
1035 error = monohit->localPositionError();
1039 if (matchedmonorstereo ==
"stereoHit"){
1052 if(matchedmonorstereo ==
"monoHit"){
1053 if (monotkdir.
z() != 0) {
1058 if (matchedmonorstereo ==
"stereoHit"){
1059 if (stereotkdir.
z() != 0) {
1069 float tanalphaL = drift.
x() / drift.
z();
1077 if(matchedmonorstereo ==
"monoHit"){clust = monohit->cluster();}
1078 if(matchedmonorstereo ==
"stereoHit"){clust = stereohit->
cluster();}
1082 clusiz = clust->amplitudes().size();
1083 const auto & amplitudes=clust->amplitudes();
1084 for(
size_t ia=0; ia<amplitudes.size();ia++){
1085 totcharge+=amplitudes[ia];
1114 double mindist = 999999;
1115 double dist = 999999;
1116 double distx = 999999;
1117 double disty = 999999;
1118 std::pair<LocalPoint,LocalVector> closestPair;
1124 std::pair<LocalPoint,LocalVector> hitPair;
1128 if(matchedmonorstereo ==
"matched"){
1130 distx = fabs(
rechitpro.
x - hitPair.first.x());
1131 disty = fabs(
rechitpro.
y - hitPair.first.y());
1132 dist =
sqrt(distx*distx+disty*disty);
1134 if(matchedmonorstereo ==
"monoHit"){dist =
abs((monohit)->localPosition().
x() - (*m).localPosition().x());}
1135 if(matchedmonorstereo ==
"stereoHit"){dist =
abs((stereohit)->localPosition().
x() - (*m).localPosition().x());}
1141 closestPair = hitPair;
1146 if(matchedmonorstereo ==
"matched"){
1149 rechitpro.
pullx = ((rechit)->localPosition().x() - (closestPair.first.x())) /
sqrt(error.
xx());
1150 rechitpro.
pully = ((rechit)->localPosition().y() - (closestPair.first.y())) /
sqrt(error.
yy());
1153 if( (matchedmonorstereo ==
"monoHit") || (matchedmonorstereo ==
"stereoHit") ){
1191 float tanalphaL = drift.
x() / drift.
z();
1203 if(!simplehit1or2D){
1205 clusiz = clust2d->amplitudes().size();
1206 const auto & amplitudes2d = clust2d->amplitudes();
1207 for(
size_t ia=0; ia<amplitudes2d.size();ia++){
1208 totcharge+=amplitudes2d[ia];
1212 clusiz = clust1d->amplitudes().size();
1213 const auto & amplitudes1d = clust1d->amplitudes();
1214 for(
size_t ia=0; ia<amplitudes1d.size();ia++){
1215 totcharge+=amplitudes1d[ia];
1243 if(!simplehit1or2D){
1249 double mindist = 999999;
1250 double dist = 999999;
1256 if(!simplehit1or2D){
1257 dist =
abs((hit2d)->localPosition().
x() - (*m).localPosition().x());
1259 dist =
abs((hit1d)->localPosition().
x() - (*m).localPosition().x());
1287 std::vector<uint32_t> activeDets;
1303 edm::LogInfo(
"SiStripTrackingRecHitsValid|SiStripTrackingRecHitsValid")<<
"nr. of activeDets: "<<activeDets.size();
1304 for(std::vector<uint32_t>::iterator detid_iterator = activeDets.begin(); detid_iterator!=activeDets.end(); detid_iterator++){
1305 uint32_t
detid = (*detid_iterator);
1308 activeDets.erase(detid_iterator);
1313 std::pair<std::string,int32_t> det_layer_pair = folder_organizer.
GetSubDetAndLayer(detid,tTopo,
true);
1318 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(label);
1323 int32_t lnumber = det_layer_pair.second;
1324 std::vector<uint32_t> layerDetIds;
1325 if (det_layer_pair.first ==
"TIB") {
1327 }
else if (det_layer_pair.first ==
"TOB") {
1329 }
else if (det_layer_pair.first ==
"TID" && lnumber > 0) {
1331 }
else if (det_layer_pair.first ==
"TID" && lnumber < 0) {
1333 }
else if (det_layer_pair.first ==
"TEC" && lnumber > 0) {
1335 }
else if (det_layer_pair.first ==
"TEC" && lnumber < 0) {
1341 folder_organizer.
setLayerFolder(detid,tTopo,det_layer_pair.second,
true);
1349 std::map<std::string, StereoAndMatchedMEs>::iterator iStereoAndMatchedME =
StereoAndMatchedMEsMap.find(label);
1353 bool isStereo =
false;
1355 int32_t stereolnumber = det_layer_pair.second;
1356 std::vector<uint32_t> stereoandmatchedDetIds;
1357 if ( (det_layer_pair.first ==
"TIB") && (
TIBDetId(detid).
stereo()== 1) ) {
1358 substructure.
getTIBDetectors(activeDets,stereoandmatchedDetIds,stereolnumber,0,0,0);
1360 }
else if ( (det_layer_pair.first ==
"TOB") && (
TOBDetId(detid).stereo()== 1) ) {
1361 substructure.
getTOBDetectors(activeDets,stereoandmatchedDetIds,stereolnumber,0,0);
1363 }
else if ( (det_layer_pair.first ==
"TID") && (stereolnumber > 0) && (
TIDDetId(detid).stereo()== 1) ) {
1364 substructure.
getTIDDetectors(activeDets,stereoandmatchedDetIds,2,0,
abs(stereolnumber),1);
1366 }
else if ( (det_layer_pair.first ==
"TID") && (stereolnumber < 0) && (
TIDDetId(detid).stereo()== 1) ) {
1367 substructure.
getTIDDetectors(activeDets,stereoandmatchedDetIds,1,0,
abs(stereolnumber),1);
1369 }
else if ( (det_layer_pair.first ==
"TEC") && (stereolnumber > 0) && (
TECDetId(detid).stereo()== 1) ) {
1370 substructure.
getTECDetectors(activeDets,stereoandmatchedDetIds,2,0,0,0,
abs(stereolnumber),1);
1372 }
else if ( (det_layer_pair.first ==
"TEC") && (stereolnumber < 0) && (
TECDetId(detid).stereo()== 1) ) {
1373 substructure.
getTECDetectors(activeDets,stereoandmatchedDetIds,1,0,0,0,
abs(stereolnumber),1);
1380 folder_organizer.
setLayerFolder(detid,tTopo,det_layer_pair.second,
true);
1641 layerMEs.
meWclusRphi =
bookME1D(ibooker,
"TH1WclusRphi", hidmanager.
createHistoLayer(
"Wclus_rphi",
"layer",label,
"").c_str() ,
"Cluster Width - Number of strips that belong to the RecHit cluster");
1971 stereoandmatchedMEs.
meWclusSas =
bookME1D(ibooker,
"TH1WclusSas", hidmanager.
createHistoLayer(
"Wclus_sas",
"layer",label,
"").c_str() ,
"Cluster Width - Number of strips that belong to the RecHit cluster");
1977 stereoandmatchedMEs.
meAdcSas->
setAxisTitle((
"cluster charge [ADC] (stereo) in " + label).c_str());
1987 stereoandmatchedMEs.
meResolxMFSas->
setAxisTitle((
"resol(x) RecHit coord. (measurement frame) (stereo) in " + label).c_str());
1991 stereoandmatchedMEs.
meResLFSas =
bookME1D(ibooker,
"TH1ResLFSas", hidmanager.
createHistoLayer(
"Res_LF_sas",
"layer",label,
"").c_str() ,
"Residual of the hit x coordinate");
1992 stereoandmatchedMEs.
meResLFSas->
setAxisTitle((
"Hit Residuals(x) (local frame) (stereo) in " + label).c_str());
1996 stereoandmatchedMEs.
meResMFSas =
bookME1D(ibooker,
"TH1ResMFSas", hidmanager.
createHistoLayer(
"Res_MF_sas",
"layer",label,
"").c_str() ,
"Residual of the hit x coordinate");
2002 stereoandmatchedMEs.
mePullLFSas->
setAxisTitle((
"Pull distribution (local frame) (stereo) in " + label).c_str());
2007 stereoandmatchedMEs.
mePullMFSas->
setAxisTitle((
"Pull distribution (measurement frame) (stereo) in " + label).c_str());
2137 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
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_
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
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
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
bool layerswitchResMFTrackwidthProfile_WClus21
virtual const TrackerGeomDet * idToDet(DetId) const
bool layerswitchResolxMFTrackwidthProfile_WClus1
MonitorElement * meResolxLFSas
MonitorElement * mePosyMatched
bool layerswitchTrackwidthSas