#include <MuonUpdatorAtVertex.h>
Public Member Functions | |
MuonUpdatorAtVertex (const edm::ParameterSet &pset, const MuonServiceProxy *service) | |
Constructor. More... | |
std::pair< bool, FreeTrajectoryState > | propagate (const TrajectoryStateOnSurface &tsos, const reco::BeamSpot &beamSpot) const |
Propagate the state to the 2D-PCA. More... | |
std::pair< bool, FreeTrajectoryState > | propagate (const TrajectoryStateOnSurface &tsos) const __attribute__((deprecated)) |
Propagate the state to the 2D-PCA (nominal CMS axis) - DEPRECATED -. More... | |
std::pair< bool, FreeTrajectoryState > | propagateToNominalLine (const TrajectoryStateOnSurface &tsos) const |
Propagate the state to the 2D-PCA (nominal CMS axis) More... | |
std::pair< bool, FreeTrajectoryState > | propagateWithUpdate (const TrajectoryStateOnSurface &tsos, const reco::BeamSpot &beamSpot) const |
Propagate to the 2D-PCA and apply the vertex constraint. More... | |
std::pair< bool, FreeTrajectoryState > | update (const reco::TransientTrack &track, const reco::BeamSpot &beamSpot) const |
Applies the vertex constraint. More... | |
std::pair< bool, FreeTrajectoryState > | update (const FreeTrajectoryState &ftsAtVtx, const reco::BeamSpot &beamSpot) const |
Applies the vertex constraint. More... | |
virtual | ~MuonUpdatorAtVertex () |
Destructor. More... | |
Private Attributes | |
double | theChi2Cut |
SingleTrackVertexConstraint | theConstrictor |
GlobalError | thePositionErrors |
std::string | thePropagatorName |
const MuonServiceProxy * | theService |
TransientTrackFromFTSFactory | theTransientTrackFactory |
This class do the extrapolation of a TrajectoryStateOnSurface to the PCA and can apply, with a different method, the vertex constraint. The vertex constraint is applyed using the Kalman Filter tools used for the vertex reconstruction.
For the time being the propagator is the SteppingHelixPropagator because the method propagate(TSOS,GlobalPoint) it is in its specific interface. Once the interface of the Propagator base class will be updated, then propagator will become generic.
For what concern the beam spot, it is possible set via cff the relevant parameters:
BeamSpotPosition[0] <=> x BeamSpotPosition[1] <=> y BeamSpotPosition[2] <=> z
BeamSpotPositionErrors[0] = sigma(x) BeamSpotPositionErrors[1] = sigma(y) BeamSpotPositionErrors[2] = sigma(z)
This class do the extrapolation of a TrajectoryStateOnSurface to the PCA and can apply, with a different method, the vertex constraint. The vertex constraint is applyed using the Kalman Filter tools used for the vertex reconstruction.
Definition at line 42 of file MuonUpdatorAtVertex.h.
MuonUpdatorAtVertex::MuonUpdatorAtVertex | ( | const edm::ParameterSet & | pset, |
const MuonServiceProxy * | service | ||
) |
Constructor.
Definition at line 28 of file MuonUpdatorAtVertex.cc.
References muonDTDigis_cfi::pset, theChi2Cut, thePositionErrors, and thePropagatorName.
|
virtual |
pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::propagate | ( | const TrajectoryStateOnSurface & | tsos, |
const reco::BeamSpot & | beamSpot | ||
) | const |
Propagate the state to the 2D-PCA.
Propagate the state to the PCA in 2D, i.e. to the beam line.
Definition at line 61 of file MuonUpdatorAtVertex.cc.
References pwdgSkimBPark_cfi::beamSpot, TrajectoryStateOnSurface::freeState(), TrajectoryStateOnSurface::globalPosition(), TrackerBounds::isInside(), TrajectoryStateClosestToBeamLine::isValid(), LogTrace, metname, mps_fire::result, thePropagatorName, theService, and TrajectoryStateClosestToBeamLine::trackStateAtPCA().
Referenced by AlignmentMonitorTracksFromTrajectories::event(), and propagateWithUpdate().
std::pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::propagate | ( | const TrajectoryStateOnSurface & | tsos | ) | const |
Propagate the state to the 2D-PCA (nominal CMS axis) - DEPRECATED -.
Definition at line 177 of file MuonUpdatorAtVertex.cc.
References propagateToNominalLine().
std::pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::propagateToNominalLine | ( | const TrajectoryStateOnSurface & | tsos | ) | const |
Propagate the state to the 2D-PCA (nominal CMS axis)
Definition at line 141 of file MuonUpdatorAtVertex.cc.
References TrajectoryStateOnSurface::freeState(), TrajectoryStateOnSurface::globalPosition(), TrackerBounds::isInside(), TrajectoryStateClosestToPoint::isValid(), LogTrace, metname, LaserDQM_cfg::p1, SiStripOfflineCRack_cfg::p2, mps_fire::result, thePropagatorName, theService, and TrajectoryStateClosestToPoint::theState().
Referenced by propagate().
pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::propagateWithUpdate | ( | const TrajectoryStateOnSurface & | tsos, |
const reco::BeamSpot & | beamSpot | ||
) | const |
Propagate to the 2D-PCA and apply the vertex constraint.
Definition at line 129 of file MuonUpdatorAtVertex.cc.
References pwdgSkimBPark_cfi::beamSpot, propagate(), and update().
Referenced by AlignmentMonitorTracksFromTrajectories::event().
pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::update | ( | const reco::TransientTrack & | track, |
const reco::BeamSpot & | beamSpot | ||
) | const |
Applies the vertex constraint.
Definition at line 91 of file MuonUpdatorAtVertex.cc.
References pwdgSkimBPark_cfi::beamSpot, SingleTrackVertexConstraint::constrain(), MillePedeFileConverter_cfg::e, LogTrace, metname, mps_fire::result, AlCaHLTBitMon_QueryRunRegistry::string, theChi2Cut, theConstrictor, thePositionErrors, and HLT_2022v15_cff::track.
Referenced by progressbar.ProgressBar::__next__(), MatrixUtil.Matrix::__setitem__(), MatrixUtil.Steps::__setitem__(), progressbar.ProgressBar::finish(), MatrixUtil.Steps::overwrite(), propagateWithUpdate(), and update().
pair< bool, FreeTrajectoryState > MuonUpdatorAtVertex::update | ( | const FreeTrajectoryState & | ftsAtVtx, |
const reco::BeamSpot & | beamSpot | ||
) | const |
Applies the vertex constraint.
Definition at line 124 of file MuonUpdatorAtVertex.cc.
References pwdgSkimBPark_cfi::beamSpot, TransientTrackFromFTSFactory::build(), theTransientTrackFactory, and update().
Referenced by progressbar.ProgressBar::__next__(), MatrixUtil.Matrix::__setitem__(), MatrixUtil.Steps::__setitem__(), progressbar.ProgressBar::finish(), and MatrixUtil.Steps::overwrite().
|
private |
Definition at line 81 of file MuonUpdatorAtVertex.h.
Referenced by MuonUpdatorAtVertex(), and update().
|
private |
Definition at line 80 of file MuonUpdatorAtVertex.h.
Referenced by update().
|
private |
Definition at line 83 of file MuonUpdatorAtVertex.h.
Referenced by MuonUpdatorAtVertex(), and update().
|
private |
Definition at line 77 of file MuonUpdatorAtVertex.h.
Referenced by MuonUpdatorAtVertex(), propagate(), and propagateToNominalLine().
|
private |
Definition at line 76 of file MuonUpdatorAtVertex.h.
Referenced by propagate(), and propagateToNominalLine().
|
private |
Definition at line 79 of file MuonUpdatorAtVertex.h.
Referenced by update().