#include <GlobalTrajectoryBuilderBase.h>
Classes | |
struct | ComparatorInOut |
Public Types | |
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 |
Public Types inherited from MuonTrajectoryBuilder | |
typedef MuonCandidate::CandidateContainer | CandidateContainer |
typedef std::pair< const Trajectory *, reco::TrackRef > | TrackCand |
typedef MuonCandidate::TrajectoryContainer | TrajectoryContainer |
Public Member Functions | |
GlobalTrajectoryBuilderBase (const edm::ParameterSet &, const MuonServiceProxy *, edm::ConsumesCollector &) | |
constructor with Parameter Set and MuonServiceProxy More... | |
void | setEvent (const edm::Event &) override |
pass the Event to the algo at each event More... | |
MuonTrajectoryBuilder::TrajectoryContainer | trajectories (const TrajectorySeed &) override |
dummy implementation, unused in this class More... | |
~GlobalTrajectoryBuilderBase () override | |
destructor More... | |
Public Member Functions inherited from MuonTrajectoryBuilder | |
MuonTrajectoryBuilder () | |
constructor More... | |
virtual CandidateContainer | trajectories (const TrackCand &)=0 |
return a container reconstructed muons starting from a given track More... | |
virtual | ~MuonTrajectoryBuilder () |
destructor More... | |
Protected Types | |
enum | RefitDirection { inToOut, outToIn, undetermined } |
Protected Member Functions | |
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... | |
virtual std::vector< TrackCand > | makeTkCandCollection (const TrackCand &)=0 |
make a TrackCand collection using tracker Track, Trajectory information 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... | |
Protected Attributes | |
std::string | theCategory |
float | thePCut |
float | thePtCut |
Base class for GlobalMuonTrajectoryBuilder and L3MuonTrajectoryBuilder Provide common tools and interface to reconstruct muons starting from a muon track reconstructed in the standalone muon system (with DT, CSC and RPC information). It tries to reconstruct the corresponding track in the tracker and performs matching between the reconstructed tracks in the muon system and the tracker.
Definition at line 46 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::ConstMuonRecHitContainer GlobalTrajectoryBuilderBase::ConstMuonRecHitContainer |
Definition at line 55 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::ConstMuonRecHitPointer GlobalTrajectoryBuilderBase::ConstMuonRecHitPointer |
Definition at line 53 of file GlobalTrajectoryBuilderBase.h.
typedef TransientTrackingRecHit::ConstRecHitContainer GlobalTrajectoryBuilderBase::ConstRecHitContainer |
Definition at line 49 of file GlobalTrajectoryBuilderBase.h.
Definition at line 51 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::MuonRecHitContainer GlobalTrajectoryBuilderBase::MuonRecHitContainer |
Definition at line 54 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::MuonRecHitPointer GlobalTrajectoryBuilderBase::MuonRecHitPointer |
Definition at line 52 of file GlobalTrajectoryBuilderBase.h.
Definition at line 48 of file GlobalTrajectoryBuilderBase.h.
Definition at line 50 of file GlobalTrajectoryBuilderBase.h.
typedef std::vector<Trajectory> GlobalTrajectoryBuilderBase::TC |
Definition at line 56 of file GlobalTrajectoryBuilderBase.h.
typedef TC::const_iterator GlobalTrajectoryBuilderBase::TI |
Definition at line 57 of file GlobalTrajectoryBuilderBase.h.
|
protected |
Enumerator | |
---|---|
inToOut | |
outToIn | |
undetermined |
Definition at line 74 of file GlobalTrajectoryBuilderBase.h.
GlobalTrajectoryBuilderBase::GlobalTrajectoryBuilderBase | ( | const edm::ParameterSet & | par, |
const MuonServiceProxy * | service, | ||
edm::ConsumesCollector & | iC | ||
) |
constructor with Parameter Set and MuonServiceProxy
Class: GlobalTrajectoryBuilderBase
Base class for GlobalMuonTrajectoryBuilder and L3MuonTrajectoryBuilder Provide common tools and interface to reconstruct muons starting from a muon track reconstructed in the standalone muon system (with DT, CSC and RPC information). It tries to reconstruct the corresponding track in the tracker and performs matching between the reconstructed tracks in the muon system and the tracker.
Definition at line 76 of file GlobalTrajectoryBuilderBase.cc.
References edm::ConsumesCollector::esConsumes(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), GlobalMuonRefitter_cff::GlobalMuonRefitter, GlobalMuonTrackMatcher_cff::GlobalMuonTrackMatcher, HLT_FULL_cff::MuonTrackingRegionBuilder, AlCaHLTBitMon_QueryRunRegistry::string, theCategory, theFieldToken, theGlbRefitter, theMSMakerToken, theMuonHitsOption, theMuonRecHitBuilderToken, thePCut, thePtCut, theRefitFlag, theRegionBuilder, theRPCInTheFit, theService, theTECxScale, theTECyScale, theTopoToken, theTrackerPropagatorName, theTrackerRecHitBuilderToken, theTrackMatcher, and theTrackTransformer.
|
override |
destructor
Definition at line 124 of file GlobalTrajectoryBuilderBase.cc.
References theGlbRefitter, theRegionBuilder, theTrackMatcher, and theTrackTransformer.
|
inlineprotected |
if TrackCand has only a TrackRef, attempt to add Trajectory*
Definition at line 110 of file GlobalTrajectoryBuilderBase.h.
|
protected |
build combined trajectory from sta Track and tracker RecHits
Definition at line 160 of file GlobalTrajectoryBuilderBase.cc.
References funct::abs(), checkRecHitsOrdering(), fixTEC(), getTransientRecHits(), LogDebug, LogTrace, MuonServiceProxy::magneticField(), SiStripPI::max, eostools::move(), or, outToIn, GlobalMuonRefitter::refit(), selectTrackerHits(), theCategory, theGlbRefitter, theMuonHitsOption, thePCut, thePtCut, theRefitFlag, theService, theTECxScale, theTECyScale, theTopo, theTrackTransformer, MuonServiceProxy::trackingGeometry(), trackProbability(), and TrackTransformer::transform().
Referenced by GlobalMuonTrajectoryBuilder::trajectories(), and L3MuonTrajectoryBuilder::trajectories().
|
protected |
check muon RecHits, calculate chamber occupancy and select hits to be used in the final fit
|
protected |
This does nothing now.
check order of RechIts on a trajectory
Definition at line 393 of file GlobalTrajectoryBuilderBase.cc.
References inToOut, outToIn, theCategory, and undetermined.
Referenced by build().
|
protected |
choose tracker tracks within region of interest
Definition at line 307 of file GlobalTrajectoryBuilderBase.cc.
References defineRegionOfInterest(), HLT_FULL_cff::deltaR, TrackingRegion::direction(), PV3DBase< T, PVType, FrameType >::eta(), PV3DBase< T, PVType, FrameType >::phi(), and mps_fire::result.
Referenced by GlobalMuonTrajectoryBuilder::makeTkCandCollection().
|
protected |
choose final trajectory
|
protected |
define region of interest with tracker
Definition at line 340 of file GlobalTrajectoryBuilderBase.cc.
References funct::abs(), MuonTrackingRegionBuilder::region(), theField, theMSMaker, and theRegionBuilder.
Referenced by chooseRegionalTrackerTracks().
|
protected |
rescale errors of outermost TEC RecHit
freeze this hit, make sure it will not be recomputed during fitting
/ the implemetantion below works with cloning / to get a RecHitPointer to SiStripRecHit2D, the only method that works is / RecHitPointer MuonTransientTrackingRecHit::build(const GeomDet*,const TrackingRecHit*)
Definition at line 449 of file GlobalTrajectoryBuilderBase.cc.
References angle(), MuonTransientTrackingRecHit::build(), SiStripRecHit2D::cluster(), TrackingRecHit::det(), relativeConstraints::error, mps_fire::i, BaseTrackerRecHit::localPosition(), BaseTrackerRecHit::localPositionError(), LocalError::rotate(), StripTopology::strip(), digitizers_cfi::strip, StripTopology::stripAngle(), StripSubdetector::TEC, DetId::Tracker, LocalError::xx(), and LocalError::yy().
Referenced by build().
|
protected |
get transient RecHits of a Track
Definition at line 506 of file GlobalTrajectoryBuilderBase.cc.
References TransientTrackingRecHitBuilder::build(), runTheMatrix::const, DetId::det(), h, trajectoryStateTransform::innerStateOnSurface(), TrajectoryStateOnSurface::isValid(), LogDebug, MuonServiceProxy::magneticField(), DetId::Muon, MuonServiceProxy::propagator(), reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), mps_fire::result, theCategory, theMuonRecHitBuilder, theRPCInTheFit, theService, theTrackerPropagatorName, theTrackerRecHitBuilder, DetId::Tracker, and MuonServiceProxy::trackingGeometry().
Referenced by build().
|
protectedpure virtual |
make a TrackCand collection using tracker Track, Trajectory information
Implemented in L3MuonTrajectoryBuilder, and GlobalMuonTrajectoryBuilder.
|
protected |
print all RecHits of a trajectory
Definition at line 374 of file GlobalTrajectoryBuilderBase.cc.
References LogTrace, mathSSE::sqrt(), theCategory, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by ntuplePrintersDiff.TrackingParticlePrinter::__call__(), ntuplePrintersDiff.SeedPrinter::diff(), ntuplePrintersDiff.TrackPrinter::diff(), ntuplePrintersDiff.TrackingParticlePrinter::diff(), ntuplePrintersDiff.SeedPrinter::printSeed(), and ntuplePrintersDiff.TrackPrinter::printTrack().
|
protected |
select muon hits compatible with trajectory; check hits in chambers with showers
|
protected |
select tracker hits; exclude some tracker hits in the global trajectory
Definition at line 425 of file GlobalTrajectoryBuilderBase.cc.
References python.cmstools::all(), mps_fire::i, StripSubdetector::TEC, and DetId::Tracker.
Referenced by build().
|
inlineprotected |
Definition at line 122 of file GlobalTrajectoryBuilderBase.h.
References theService.
|
overridevirtual |
pass the Event to the algo at each event
Implements MuonTrajectoryBuilder.
Reimplemented in L3MuonTrajectoryBuilder.
Definition at line 138 of file GlobalTrajectoryBuilderBase.cc.
References edmPickEvents::event, MuonServiceProxy::eventSetup(), edm::EventSetup::getData(), MuonTrackingRegionBuilder::setEvent(), GlobalMuonRefitter::setEvent(), GlobalMuonRefitter::setServices(), TrackTransformer::setServices(), theEvent, theField, theFieldToken, theGlbRefitter, theMSMaker, theMSMakerToken, theMuonRecHitBuilder, theMuonRecHitBuilderToken, theRegionBuilder, theService, theTopo, theTopoToken, theTrackerRecHitBuilder, theTrackerRecHitBuilderToken, and theTrackTransformer.
Referenced by GlobalMuonTrajectoryBuilder::setEvent(), and L3MuonTrajectoryBuilder::setEvent().
|
inlineprotected |
Definition at line 119 of file GlobalTrajectoryBuilderBase.h.
References theTrackMatcher.
Referenced by GlobalMuonTrajectoryBuilder::trajectories(), and L3MuonTrajectoryBuilder::trajectories().
|
protected |
calculate chi2 probability (-ln(P))
Definition at line 363 of file GlobalTrajectoryBuilderBase.cc.
References Trajectory::chiSquared(), LnChiSquaredProbability(), and Trajectory::ndof().
Referenced by build().
|
inlineoverridevirtual |
dummy implementation, unused in this class
Implements MuonTrajectoryBuilder.
Definition at line 66 of file GlobalTrajectoryBuilderBase.h.
|
protected |
Definition at line 147 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), checkRecHitsOrdering(), getTransientRecHits(), GlobalTrajectoryBuilderBase(), and printHits().
|
private |
Definition at line 164 of file GlobalTrajectoryBuilderBase.h.
Referenced by setEvent().
|
private |
Definition at line 172 of file GlobalTrajectoryBuilderBase.h.
Referenced by defineRegionOfInterest(), and setEvent().
|
private |
Definition at line 171 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
private |
Definition at line 157 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 153 of file GlobalTrajectoryBuilderBase.h.
|
private |
Definition at line 174 of file GlobalTrajectoryBuilderBase.h.
Referenced by defineRegionOfInterest(), and setEvent().
|
private |
Definition at line 173 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
private |
Definition at line 160 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 168 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and setEvent().
|
private |
Definition at line 167 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
protected |
Definition at line 149 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
protected |
Definition at line 148 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), GlobalMuonTrajectoryBuilder::trajectories(), and L3MuonTrajectoryBuilder::trajectories().
|
private |
Definition at line 159 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 155 of file GlobalTrajectoryBuilderBase.h.
Referenced by defineRegionOfInterest(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 158 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 156 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), getTransientRecHits(), GlobalTrajectoryBuilderBase(), service(), and setEvent().
|
private |
Definition at line 161 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 162 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 170 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and setEvent().
|
private |
Definition at line 169 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
private |
Definition at line 163 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 166 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and setEvent().
|
private |
Definition at line 165 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
private |
Definition at line 152 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), trackMatcher(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 154 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().