127 using namespace reco;
138 for (
unsigned int i = 0;
i < 4;
i++) {
184 LocalPoint segmentLocalPosition = segment->localPosition();
185 LocalVector segmentLocalDirection = segment->localDirection();
186 LocalError segmentLocalPositionError = segment->localPositionError();
187 LocalError segmentLocalDirectionError = segment->localDirectionError();
188 bool segmentFound =
false;
193 if (!
muon->isMatchesValid())
196 for(std::vector<MuonChamberMatch>::const_iterator chamberMatch =
muon->matches().begin();
197 chamberMatch !=
muon->matches().end(); ++chamberMatch) {
198 for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
199 segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
201 if (fabs(segmentMatch->x - segmentLocalPosition.
x() ) < 1E-6 &&
202 fabs(segmentMatch->y - segmentLocalPosition.
y() ) < 1E-6 &&
203 fabs(segmentMatch->dXdZ - segmentLocalDirection.
x()/segmentLocalDirection.
z()) < 1E-6 &&
204 fabs(segmentMatch->dYdZ - segmentLocalDirection.
y()/segmentLocalDirection.
z()) < 1E-6 &&
205 fabs(segmentMatch->xErr -
sqrt(segmentLocalPositionError.
xx()) ) < 1E-6 &&
206 fabs(segmentMatch->yErr -
sqrt(segmentLocalPositionError.
yy()) ) < 1E-6 &&
207 fabs(segmentMatch->dXdZErr -
sqrt(segmentLocalDirectionError.
xx()) ) < 1E-6 &&
208 fabs(segmentMatch->dYdZErr -
sqrt(segmentLocalDirectionError.
yy()) ) < 1E-6)
214 if (segmentFound)
break;
216 if (segmentFound)
break;
228 LocalPoint segmentLocalPosition = segment->localPosition();
229 LocalVector segmentLocalDirection = segment->localDirection();
230 LocalError segmentLocalPositionError = segment->localPositionError();
231 LocalError segmentLocalDirectionError = segment->localDirectionError();
232 bool segmentFound =
false;
237 if (!
muon->isMatchesValid())
240 for(std::vector<MuonChamberMatch>::const_iterator chamberMatch =
muon->matches().begin();
241 chamberMatch !=
muon->matches().end(); ++chamberMatch) {
242 for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
243 segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
245 if (fabs(segmentMatch->x - segmentLocalPosition.
x() ) < 1E-6 &&
246 fabs(segmentMatch->y - segmentLocalPosition.
y() ) < 1E-6 &&
247 fabs(segmentMatch->dXdZ - segmentLocalDirection.
x()/segmentLocalDirection.
z()) < 1E-6 &&
248 fabs(segmentMatch->dYdZ - segmentLocalDirection.
y()/segmentLocalDirection.
z()) < 1E-6 &&
249 fabs(segmentMatch->xErr -
sqrt(segmentLocalPositionError.
xx()) ) < 1E-6 &&
250 fabs(segmentMatch->yErr -
sqrt(segmentLocalPositionError.
yy()) ) < 1E-6 &&
251 fabs(segmentMatch->dXdZErr -
sqrt(segmentLocalDirectionError.
xx()) ) < 1E-6 &&
252 fabs(segmentMatch->dYdZErr -
sqrt(segmentLocalDirectionError.
yy()) ) < 1E-6)
258 if (segmentFound)
break;
260 if (segmentFound)
break;
MonitorElement * hCSCDx[4][4]
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * hCSCDdYdZ[4][4]
MonitorElement * hCSCDdXdZ[4][4]
MonitorElement * hCSCPulldXdZ[4][4]
edm::EDGetTokenT< DTRecSegment4DCollection > inputDTRecSegment4DCollection_
bool useGlobalMuonsNotTrackerMuons_
bool useTrackerMuonsNotGlobalMuons_
MonitorElement * hDTDdYdZ[4][3]
MonitorElement * hDTPully[4][3]
MonitorElement * hCSCDy[4][4]
edm::Handle< DTRecSegment4DCollection > dtSegmentCollectionH_
MonitorElement * hCSCPully[4][4]
MonitorElement * hSegmentIsAssociatedBool
MonitorElement * hDTPullx[4][4]
MonitorElement * hCSCPullx[4][4]
MonitorElement * hNumMatches[4]
MonitorElement * hDTDdXdZ[4][4]
edm::Handle< reco::MuonCollection > muonCollectionH_
edm::EDGetTokenT< reco::MuonCollection > inputMuonCollection_
MonitorElement * hDTDx[4][4]
MonitorElement * hDTPulldYdZ[4][3]
MonitorElement * hDTDy[4][3]
MonitorElement * hCSCPulldYdZ[4][4]
virtual void Fill(MonitorElement *, float)
MonitorElement * hDTNumSegments[4][4]
MonitorElement * hCSCNumSegments[4][4]
MonitorElement * hNumChambersNoRPC[4]
edm::ESHandle< GlobalTrackingGeometry > geometry_
edm::EDGetTokenT< CSCSegmentCollection > inputCSCSegmentCollection_
MonitorElement * hDTPulldXdZ[4][4]
MonitorElement * hNumChambers[4]
edm::Handle< CSCSegmentCollection > cscSegmentCollectionH_