#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 |
Private Attributes | |
unsigned long long | theCacheId_TRH |
const edm::Event * | theEvent |
GlobalMuonRefitter * | theGlbRefitter |
MuonDetLayerMeasurements * | theLayerMeasurements |
int | theMuonHitsOption |
edm::ESHandle< TransientTrackingRecHitBuilder > | theMuonRecHitBuilder |
std::string | theMuonRecHitBuilderName |
bool | theRefitFlag |
MuonTrackingRegionBuilder * | theRegionBuilder |
bool | theRPCInTheFit |
const MuonServiceProxy * | theService |
float | theTECxScale |
float | theTECyScale |
const TrackerTopology * | theTopo |
std::string | theTrackerPropagatorName |
edm::ESHandle< TransientTrackingRecHitBuilder > | theTrackerRecHitBuilder |
std::string | theTrackerRecHitBuilderName |
GlobalMuonTrackMatcher * | theTrackMatcher |
TrackTransformer * | theTrackTransformer |
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 42 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::ConstMuonRecHitContainer GlobalTrajectoryBuilderBase::ConstMuonRecHitContainer |
Definition at line 53 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::ConstMuonRecHitPointer GlobalTrajectoryBuilderBase::ConstMuonRecHitPointer |
Definition at line 51 of file GlobalTrajectoryBuilderBase.h.
typedef TransientTrackingRecHit::ConstRecHitContainer GlobalTrajectoryBuilderBase::ConstRecHitContainer |
Definition at line 47 of file GlobalTrajectoryBuilderBase.h.
Definition at line 49 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::MuonRecHitContainer GlobalTrajectoryBuilderBase::MuonRecHitContainer |
Definition at line 52 of file GlobalTrajectoryBuilderBase.h.
typedef MuonTransientTrackingRecHit::MuonRecHitPointer GlobalTrajectoryBuilderBase::MuonRecHitPointer |
Definition at line 50 of file GlobalTrajectoryBuilderBase.h.
Definition at line 46 of file GlobalTrajectoryBuilderBase.h.
Definition at line 48 of file GlobalTrajectoryBuilderBase.h.
typedef std::vector<Trajectory> GlobalTrajectoryBuilderBase::TC |
Definition at line 54 of file GlobalTrajectoryBuilderBase.h.
typedef TC::const_iterator GlobalTrajectoryBuilderBase::TI |
Definition at line 55 of file GlobalTrajectoryBuilderBase.h.
|
protected |
Enumerator | |
---|---|
inToOut | |
outToIn | |
undetermined |
Definition at line 71 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::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), GlobalMuonRefitter_cff::GlobalMuonRefitter, globalMuons_cfi::GlobalMuonTrackMatcher, HiRegitMuonDetachedTripletStep_cff::MuonTrackingRegionBuilder, AlCaHLTBitMon_QueryRunRegistry::string, theCacheId_TRH, theCategory, theGlbRefitter, theMuonHitsOption, theMuonRecHitBuilderName, thePCut, thePtCut, theRefitFlag, theRegionBuilder, theRPCInTheFit, theService, theTECxScale, theTECyScale, theTrackerPropagatorName, theTrackerRecHitBuilderName, theTrackMatcher, theTrackTransformer, and rpcPointProducer_cfi::TrackTransformer.
|
override |
destructor
Definition at line 121 of file GlobalTrajectoryBuilderBase.cc.
References theGlbRefitter, theRegionBuilder, theTrackMatcher, and theTrackTransformer.
|
inlineprotected |
if TrackCand has only a TrackRef, attempt to add Trajectory*
Definition at line 115 of file GlobalTrajectoryBuilderBase.h.
References checkRecHitsOrdering(), and getTransientRecHits().
|
protected |
build combined trajectory from sta Track and tracker RecHits
Definition at line 163 of file GlobalTrajectoryBuilderBase.cc.
References funct::abs(), checkRecHitsOrdering(), fixTEC(), getTransientRecHits(), LogDebug, LogTrace, MuonServiceProxy::magneticField(), SiStripPI::max, conversionTrackMerger_cfi::minProb, MuonCandidate::muonTrack(), nullptr, outToIn, TtFullHadEvtBuilder_cfi::prob, GlobalMuonRefitter::refit(), groupFilesInBlocks::reverse, selectTrackerHits(), Trajectory::setSeedRef(), theCategory, theGlbRefitter, theMuonHitsOption, thePCut, thePtCut, theRefitFlag, theService, theTECxScale, theTECyScale, theTopo, theTrackTransformer, MuonCandidate::trackerTrack(), MuonCandidate::trackerTrajectory(), MuonServiceProxy::trackingGeometry(), trackProbability(), MuonCandidate::trajectory(), 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 409 of file GlobalTrajectoryBuilderBase.cc.
References inToOut, outToIn, theCategory, and undetermined.
Referenced by addTraj(), and build().
|
protected |
choose tracker tracks within region of interest
Definition at line 309 of file GlobalTrajectoryBuilderBase.cc.
References defineRegionOfInterest(), 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 345 of file GlobalTrajectoryBuilderBase.cc.
References funct::abs(), MuonTrackingRegionBuilder::region(), 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 462 of file GlobalTrajectoryBuilderBase.cc.
References angle(), MuonTransientTrackingRecHit::build(), SiStripRecHit2D::cluster(), TrackingRecHit::det(), relativeConstraints::error, mps_fire::i, BaseTrackerRecHit::localPosition(), BaseTrackerRecHit::localPositionError(), LocalError::rotate(), digitizers_cfi::strip, StripTopology::strip(), StripTopology::stripAngle(), StripSubdetector::TEC, ecaldqm::topology(), DetId::Tracker, LocalError::xx(), and LocalError::yy().
Referenced by build().
|
protected |
get transient RecHits of a Track
Definition at line 528 of file GlobalTrajectoryBuilderBase.cc.
References TransientTrackingRecHitBuilder::build(), TkTransientTrackingRecHitBuilder::cloner(), DetId::det(), GlobalTrackingGeometry::idToDet(), trajectoryStateTransform::innerStateOnSurface(), TrajectoryStateOnSurface::isValid(), LogDebug, MuonServiceProxy::magneticField(), DetId::Muon, edm::ESHandle< T >::product(), Propagator::propagate(), MuonServiceProxy::propagator(), reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), mps_fire::result, GeomDet::surface(), theCategory, theMuonRecHitBuilder, theRPCInTheFit, theService, theTrackerPropagatorName, theTrackerRecHitBuilder, DetId::Tracker, and MuonServiceProxy::trackingGeometry().
Referenced by addTraj(), and 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 383 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 438 of file GlobalTrajectoryBuilderBase.cc.
References Vispa.Plugins.EdmBrowser.EdmDataAccessor::all(), hfClusterShapes_cfi::hits, mps_fire::i, StripSubdetector::TEC, and DetId::Tracker.
Referenced by build().
|
inlineprotected |
Definition at line 128 of file GlobalTrajectoryBuilderBase.h.
References theService.
|
overridevirtual |
pass the Event to the algo at each event
Implements MuonTrajectoryBuilder.
Reimplemented in L3MuonTrajectoryBuilder.
Definition at line 133 of file GlobalTrajectoryBuilderBase.cc.
References event(), MuonServiceProxy::eventSetup(), edm::EventSetup::get(), LogDebug, edm::ESHandle< T >::product(), MuonTrackingRegionBuilder::setEvent(), GlobalMuonRefitter::setEvent(), TrackTransformer::setServices(), GlobalMuonRefitter::setServices(), theCacheId_TRH, theCategory, theEvent, theGlbRefitter, theMuonRecHitBuilder, theMuonRecHitBuilderName, theRegionBuilder, theService, theTopo, theTrackerRecHitBuilder, theTrackerRecHitBuilderName, and theTrackTransformer.
Referenced by GlobalMuonTrajectoryBuilder::setEvent(), L3MuonTrajectoryBuilder::setEvent(), and trajectories().
|
inlineprotected |
Definition at line 125 of file GlobalTrajectoryBuilderBase.h.
References theTrackMatcher.
Referenced by GlobalMuonTrajectoryBuilder::trajectories(), and L3MuonTrajectoryBuilder::trajectories().
|
protected |
calculate chi2 probability (-ln(P))
Definition at line 369 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 64 of file GlobalTrajectoryBuilderBase.h.
References setEvent().
|
private |
Definition at line 162 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
protected |
Definition at line 150 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), checkRecHitsOrdering(), getTransientRecHits(), GlobalTrajectoryBuilderBase(), printHits(), and setEvent().
|
private |
Definition at line 169 of file GlobalTrajectoryBuilderBase.h.
Referenced by setEvent().
|
private |
Definition at line 161 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 157 of file GlobalTrajectoryBuilderBase.h.
|
private |
Definition at line 165 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 173 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and setEvent().
|
private |
Definition at line 172 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
protected |
Definition at line 152 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
protected |
Definition at line 151 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), GlobalMuonTrajectoryBuilder::trajectories(), and L3MuonTrajectoryBuilder::trajectories().
|
private |
Definition at line 164 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 159 of file GlobalTrajectoryBuilderBase.h.
Referenced by defineRegionOfInterest(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 163 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 160 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), getTransientRecHits(), GlobalTrajectoryBuilderBase(), service(), and setEvent().
|
private |
Definition at line 166 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 167 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 174 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), and setEvent().
|
private |
Definition at line 168 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and GlobalTrajectoryBuilderBase().
|
private |
Definition at line 171 of file GlobalTrajectoryBuilderBase.h.
Referenced by getTransientRecHits(), and setEvent().
|
private |
Definition at line 170 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), and setEvent().
|
private |
Definition at line 156 of file GlobalTrajectoryBuilderBase.h.
Referenced by GlobalTrajectoryBuilderBase(), trackMatcher(), and ~GlobalTrajectoryBuilderBase().
|
private |
Definition at line 158 of file GlobalTrajectoryBuilderBase.h.
Referenced by build(), GlobalTrajectoryBuilderBase(), setEvent(), and ~GlobalTrajectoryBuilderBase().