#include <MuonErrorMatrixAdjuster.h>
Public Member Functions | |
MuonErrorMatrixAdjuster (const edm::ParameterSet &) | |
constructor More... | |
~MuonErrorMatrixAdjuster () override | |
destructor More... | |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
EDProducer (const EDProducer &)=delete | |
bool | hasAbilityToProduceInBeginLumis () const final |
bool | hasAbilityToProduceInBeginProcessBlocks () const final |
bool | hasAbilityToProduceInBeginRuns () const final |
bool | hasAbilityToProduceInEndLumis () const final |
bool | hasAbilityToProduceInEndProcessBlocks () const final |
bool | hasAbilityToProduceInEndRuns () const final |
const EDProducer & | operator= (const EDProducer &)=delete |
Private Member Functions | |
bool | attachRecHits (const reco::Track &recotrack_orig, reco::Track &recotrack, reco::TrackExtra &trackextra, TrackingRecHitCollection &RHcol, const TrackerTopology &ttopo) |
attached rechits to the newly created reco::Track and reco::TrackExtra More... | |
bool | divide (reco::TrackBase::CovarianceMatrix &num_matrix, const reco::TrackBase::CovarianceMatrix &denom_matrix) |
divide the num_matrix (first argument) by second matrix, TERM by TERM More... | |
reco::TrackBase::CovarianceMatrix | fix_cov_matrix (const reco::TrackBase::CovarianceMatrix &error_matrix, const GlobalVector &momentum) |
return a corrected error matrix More... | |
reco::Track | makeTrack (const reco::Track &recotrack_orig, const FreeTrajectoryState &PCAstate) |
create a corrected reco::Track from itself and trajectory state (redundant information) More... | |
reco::TrackExtra * | makeTrackExtra (const reco::Track &recotrack_orig, reco::Track &recotrack, reco::TrackExtraCollection &TEcol) |
create a track extra for the newly created recotrack, scaling the outer/inner measurment error matrix by the scale matrix recotrack/recotrack_orig More... | |
void | multiply (reco::TrackBase::CovarianceMatrix &revised_matrix, const reco::TrackBase::CovarianceMatrix &scale_matrix) |
mutliply revised_matrix (first argument) by second matrix TERM by TERM More... | |
void | produce (edm::Event &, const edm::EventSetup &) override |
framework method More... | |
bool | selectTrack (const reco::Track &recotrack_orig) |
make a selection on the reco:Track. (dummy for the moment) More... | |
Private Attributes | |
std::string | theCategory |
log category: MuonErrorMatrixAdjuster More... | |
edm::ESHandle< MagneticField > | theField |
hold on to the magnetic field More... | |
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > | theFieldToken |
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > | theHttopoToken |
std::string | theInstanceName |
instrance name of the created track collecion. rechit and trackextra have no instance name More... | |
std::unique_ptr< MuonErrorMatrix > | theMatrixProvider |
holds the error matrix parametrization More... | |
edm::RefProd< TrackingRecHitCollection > | theRefprodRH |
get reference before put rechit to the event, in order to create edm::Ref More... | |
edm::RefProd< reco::TrackExtraCollection > | theRefprodTE |
get reference before put track extra to the event, in order to create edm::Ref More... | |
bool | theRescale |
select the rescaling or replacing method to correct the error matrix More... | |
edm::Ref< TrackingRecHitCollection >::key_type | theRHi |
edm::Ref< reco::TrackExtraCollection >::key_type | theTEi |
edm::InputTag | theTrackLabel |
input tag of the reco::Track collection to be corrected More... | |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
using | CacheTypes = CacheContexts< T... > |
using | GlobalCache = typename CacheTypes::GlobalCache |
using | HasAbility = AbilityChecker< T... > |
using | InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache |
using | LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache |
using | LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache > |
using | LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache |
using | RunCache = typename CacheTypes::RunCache |
using | RunContext = RunContextT< RunCache, GlobalCache > |
using | RunSummaryCache = typename CacheTypes::RunSummaryCache |
EDProducer which duplicatesa collection of track, adjusting their error matrix
track collection is retrieve from the event, duplicated, while the error matrix is corrected rechit are copied into a new collection track extra is also copied and error matrix are corrected by the same scale factors
Definition at line 46 of file MuonErrorMatrixAdjuster.h.
|
explicit |
constructor
Definition at line 19 of file MuonErrorMatrixAdjuster.cc.
References deDxTools::esConsumes().
|
override |
destructor
Definition at line 37 of file MuonErrorMatrixAdjuster.cc.
|
private |
attached rechits to the newly created reco::Track and reco::TrackExtra
Definition at line 148 of file MuonErrorMatrixAdjuster.cc.
References reco::TrackBase::appendHitPattern(), edm::OwnVector< T, P >::push_back(), rpcPointValidation_cfi::recHit, reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), reco::TrackExtraBase::setHits(), theRefprodRH, and theRHi.
Referenced by produce().
|
private |
divide the num_matrix (first argument) by second matrix, TERM by TERM
Definition at line 70 of file MuonErrorMatrixAdjuster.cc.
References mps_fire::i, and dqmiolumiharvest::j.
Referenced by makeTrackExtra().
|
private |
return a corrected error matrix
Definition at line 47 of file MuonErrorMatrixAdjuster.cc.
References multiply(), theMatrixProvider, and theRescale.
Referenced by makeTrack().
|
private |
create a corrected reco::Track from itself and trajectory state (redundant information)
Definition at line 85 of file MuonErrorMatrixAdjuster.cc.
References ALCARECOTkAlJpsiMuMu_cff::charge, reco::TrackBase::charge(), hltPixelTracks_cff::chi2, reco::TrackBase::chi2(), reco::TrackBase::covariance(), fix_cov_matrix(), LogDebug, FreeTrajectoryState::momentum(), reco::TrackBase::momentum(), ndof, reco::TrackBase::ndof(), reco::TrackBase::referencePoint(), and theCategory.
Referenced by produce().
|
private |
create a track extra for the newly created recotrack, scaling the outer/inner measurment error matrix by the scale matrix recotrack/recotrack_orig
Definition at line 104 of file MuonErrorMatrixAdjuster.cc.
References reco::TrackBase::covariance(), divide(), reco::Track::extra(), edm::Ref< C, T, F >::isNull(), multiply(), reco::Track::setExtra(), theCategory, theRefprodTE, and theTEi.
Referenced by produce().
|
private |
mutliply revised_matrix (first argument) by second matrix TERM by TERM
Definition at line 59 of file MuonErrorMatrixAdjuster.cc.
References mps_fire::i, and dqmiolumiharvest::j.
Referenced by fix_cov_matrix(), and makeTrackExtra().
|
overrideprivate |
framework method
Definition at line 176 of file MuonErrorMatrixAdjuster.cc.
References attachRecHits(), edm::EventSetup::getData(), edm::EventSetup::getHandle(), iEvent, trajectoryStateTransform::initialFreeState(), LogDebug, PV3DBase< T, PVType, FrameType >::mag(), makeTrack(), makeTrackExtra(), eostools::move(), FreeTrajectoryState::position(), edm::ESHandle< T >::product(), selectTrack(), theCategory, theField, theFieldToken, theHttopoToken, theInstanceName, theRefprodRH, theRefprodTE, theRHi, theTEi, theTrackLabel, and tracks.
|
private |
make a selection on the reco:Track. (dummy for the moment)
Definition at line 173 of file MuonErrorMatrixAdjuster.cc.
Referenced by produce().
|
private |
log category: MuonErrorMatrixAdjuster
Definition at line 86 of file MuonErrorMatrixAdjuster.h.
Referenced by makeTrack(), makeTrackExtra(), and produce().
|
private |
hold on to the magnetic field
Definition at line 101 of file MuonErrorMatrixAdjuster.h.
Referenced by produce().
|
private |
Definition at line 102 of file MuonErrorMatrixAdjuster.h.
Referenced by produce().
|
private |
Definition at line 103 of file MuonErrorMatrixAdjuster.h.
Referenced by produce().
|
private |
instrance name of the created track collecion. rechit and trackextra have no instance name
Definition at line 92 of file MuonErrorMatrixAdjuster.h.
Referenced by produce().
|
private |
holds the error matrix parametrization
Definition at line 98 of file MuonErrorMatrixAdjuster.h.
Referenced by fix_cov_matrix().
|
private |
get reference before put rechit to the event, in order to create edm::Ref
Definition at line 110 of file MuonErrorMatrixAdjuster.h.
Referenced by attachRecHits(), and produce().
|
private |
get reference before put track extra to the event, in order to create edm::Ref
Definition at line 106 of file MuonErrorMatrixAdjuster.h.
Referenced by makeTrackExtra(), and produce().
|
private |
select the rescaling or replacing method to correct the error matrix
Definition at line 95 of file MuonErrorMatrixAdjuster.h.
Referenced by fix_cov_matrix().
|
private |
Definition at line 111 of file MuonErrorMatrixAdjuster.h.
Referenced by attachRecHits(), and produce().
|
private |
Definition at line 107 of file MuonErrorMatrixAdjuster.h.
Referenced by makeTrackExtra(), and produce().
|
private |
input tag of the reco::Track collection to be corrected
Definition at line 89 of file MuonErrorMatrixAdjuster.h.
Referenced by produce().