|
typedef MuonTransientTrackingRecHit::ConstMuonRecHitContainer | ConstMuonRecHitContainer |
|
typedef MuonTransientTrackingRecHit::ConstMuonRecHitPointer | ConstMuonRecHitPointer |
|
typedef TransientTrackingRecHit::ConstRecHitContainer | ConstRecHitContainer |
|
typedef TransientTrackingRecHit::ConstRecHitPointer | ConstRecHitPointer |
|
typedef MuonTransientTrackingRecHit::MuonRecHitContainer | MuonRecHitContainer |
|
typedef MuonTransientTrackingRecHit::MuonRecHitPointer | MuonRecHitPointer |
|
typedef TransientTrackingRecHit::RecHitContainer | RecHitContainer |
|
typedef TransientTrackingRecHit::RecHitPointer | RecHitPointer |
|
typedef std::vector< Trajectory > | TC |
|
typedef TC::const_iterator | TI |
|
typedef MuonCandidate::CandidateContainer | CandidateContainer |
|
typedef std::pair< const Trajectory *, reco::TrackRef > | TrackCand |
|
typedef MuonCandidate::TrajectoryContainer | TrajectoryContainer |
|
enum | RefitDirection { inToOut,
outToIn,
undetermined
} |
|
void | addTraj (TrackCand &) |
| if TrackCand has only a TrackRef, attempt to add Trajectory* More...
|
|
MuonTrajectoryBuilder::CandidateContainer | build (const TrackCand &, MuonTrajectoryBuilder::CandidateContainer &) const |
| build combined trajectory from sta Track and tracker RecHits More...
|
|
void | checkMuonHits (const reco::Track &, ConstRecHitContainer &, ConstRecHitContainer &, std::vector< int > &) const |
| check muon RecHits, calculate chamber occupancy and select hits to be used in the final fit More...
|
|
RefitDirection | checkRecHitsOrdering (const ConstRecHitContainer &) const |
| This does nothing now. More...
|
|
std::vector< TrackCand > | chooseRegionalTrackerTracks (const TrackCand &, const std::vector< TrackCand > &) |
| choose tracker tracks within region of interest More...
|
|
const Trajectory * | chooseTrajectory (const std::vector< Trajectory * > &, int) const |
| choose final trajectory More...
|
|
RectangularEtaPhiTrackingRegion | defineRegionOfInterest (const reco::TrackRef &) const |
| define region of interest with tracker More...
|
|
void | fixTEC (ConstRecHitContainer &all, double scl_x, double scl_y) const |
| rescale errors of outermost TEC RecHit More...
|
|
TransientTrackingRecHit::ConstRecHitContainer | getTransientRecHits (const reco::Track &) const |
| get transient RecHits of a Track More...
|
|
void | printHits (const ConstRecHitContainer &) const |
| print all RecHits of a trajectory More...
|
|
ConstRecHitContainer | selectMuonHits (const Trajectory &, const std::vector< int > &) const |
| select muon hits compatible with trajectory; check hits in chambers with showers More...
|
|
ConstRecHitContainer | selectTrackerHits (const ConstRecHitContainer &) const |
| select tracker hits; exclude some tracker hits in the global trajectory More...
|
|
const MuonServiceProxy * | service () const |
|
GlobalMuonTrackMatcher * | trackMatcher () const |
|
double | trackProbability (const Trajectory &) const |
| calculate chi2 probability (-ln(P)) More...
|
|
std::string | theCategory |
|
float | thePCut |
|
float | thePtCut |
|
class to build muon trajectory
- Author
- N. Neumeister Purdue University
-
C. Liu Purdue University
-
A. Everett Purdue University
Definition at line 23 of file GlobalMuonTrajectoryBuilder.h.
reconstruct trajectories from standalone and tracker only Tracks
Implements MuonTrajectoryBuilder.
Definition at line 96 of file GlobalMuonTrajectoryBuilder.cc.
References GlobalTrajectoryBuilderBase::build(), python.rootplot.argparse::category, LogTrace, makeTkCandCollection(), GlobalMuonTrackMatcher::match(), mps_fire::result, AlCaHLTBitMon_QueryRunRegistry::string, GlobalTrajectoryBuilderBase::thePtCut, and GlobalTrajectoryBuilderBase::trackMatcher().
101 LogTrace(category) <<
" STA pt " << staCandIn.second->pt() <<
" rho " << staCandIn.second->innerMomentum().Rho() <<
" R " << staCandIn.second->innerMomentum().R() <<
" theCut " <<
thePtCut;
107 LogTrace(category) <<
" Found " << regionalTkTracks.size() <<
" tracks within region of interest";
110 vector<TrackCand> trackerTracks =
trackMatcher()->
match(staCand, regionalTkTracks);
111 LogTrace(category) <<
" Found " << trackerTracks.size() <<
" matching tracker tracks within region of interest";
113 if ( trackerTracks.empty() ) {
114 if ( staCandIn.first == 0)
delete staCand.first;
123 LogTrace(category) <<
" Turn tkMatchedTracks into MuonCandidates";
125 for (vector<TrackCand>::const_iterator tkt = trackerTracks.begin(); tkt != trackerTracks.end(); tkt++) {
128 tkTrajs.push_back(muonCand);
131 if ( tkTrajs.empty() ) {
132 LogTrace(category) <<
" tkTrajs empty";
133 if ( staCandIn.first == 0)
delete staCand.first;
139 LogTrace(category) <<
" Found "<< result.size() <<
" GLBMuons from one STACand";
142 if ( staCandIn.first == 0)
delete staCand.first;
144 for( CandidateContainer::const_iterator it = tkTrajs.begin(); it != tkTrajs.end(); ++it) {
145 if ( (*it)->trajectory() )
delete (*it)->trajectory();
146 if ( (*it)->trackerTrajectory() )
delete (*it)->trackerTrajectory();
147 if ( *it )
delete (*it);
std::vector< TrackCand > makeTkCandCollection(const TrackCand &)
make a TrackCand collection using tracker Track, Trajectory information
MuonCandidate::CandidateContainer CandidateContainer
GlobalMuonTrackMatcher * trackMatcher() const
std::pair< const Trajectory *, reco::TrackRef > TrackCand
double match(const TrackCand &sta, const TrackCand &track, int matchOption=0, int surfaceOption=1) const
MuonTrajectoryBuilder::CandidateContainer build(const TrackCand &, MuonTrajectoryBuilder::CandidateContainer &) const
build combined trajectory from sta Track and tracker RecHits