Create L3MuonTrajectorySeeds from L2 Muons updated at vertex in an outside in manner. More...
#include <TSGForOI.h>
Public Member Functions | |
virtual void | produce (edm::Event &iEvent, const edm::EventSetup &iSetup) override |
TSGForOI (const edm::ParameterSet &iConfig) | |
virtual | ~TSGForOI () |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
Public Member Functions inherited from edm::stream::EDProducerBase | |
EDProducerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducerBase () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &descriptions) |
Static Public Member Functions inherited from edm::stream::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Private Member Functions | |
double | calculateSFFromL2 (const GeometricSearchDet &layer, const TrajectoryStateOnSurface &tsosAtMuonSystem, const TrajectoryStateOnSurface &tsosOnLayer, const Propagator &propagatorOpposite, const reco::TrackRef track) |
Function used to calculate the dynamic error SF by analysing the L2. More... | |
void | findSeedsOnLayer (const GeometricSearchDet &layer, const TrajectoryStateOnSurface &tsosAtIP, const TrajectoryStateOnSurface &tsosAtMuonSystem, const Propagator &propagatorAlong, const Propagator &propagatorOpposite, const reco::TrackRef l2, std::auto_ptr< std::vector< TrajectorySeed > > &seeds) |
Function to find seeds on a given layer. More... | |
int | makeSeedsFromHits (const GeometricSearchDet &layer, const TrajectoryStateOnSurface &state, std::vector< TrajectorySeed > &out, const Propagator &propagatorAlong, const MeasurementTrackerEvent &mte, double errorSF) |
Function to find hits on layers and create seeds from updated TSOS. More... | |
Private Attributes | |
const bool | adjustErrorsDyanmicallyForHitless_ |
const bool | adjustErrorsDyanmicallyForHits_ |
Whether or not to use an automatically calculated SF value. More... | |
bool | analysedL2_ |
Plane::PlanePointer | dummyPlane_ |
Surface used to make a TSOS at the PCA to the beamline. More... | |
edm::ESHandle < Chi2MeasurementEstimatorBase > | estimator_ |
const std::string | estimatorName_ |
Estimator used to find dets and TrajectoryMeasurements. More... | |
const double | eta1_ |
const double | eta2_ |
const double | fixedErrorRescalingForHitless_ |
const double | fixedErrorRescalingForHits_ |
How much to rescale errors from STA for fixed option. More... | |
bool | foundCompatibleDet_ |
Counters and flags for the implementation. More... | |
edm::ESHandle < GlobalTrackingGeometry > | geometry_ |
unsigned int | layerCount_ |
edm::ESHandle< MagneticField > | magfield_ |
const double | maxEtaForTOB_ |
Maximum eta value to activate searching in the TOB. More... | |
edm::Handle < MeasurementTrackerEvent > | measurementTracker_ |
const edm::EDGetTokenT < MeasurementTrackerEvent > | measurementTrackerTag_ |
const double | minEtaForTEC_ |
Minimum eta value to activate searching in the TEC. More... | |
const unsigned int | numOfHitsToTry_ |
How many hits to try on same layer. More... | |
const unsigned int | numOfLayersToTry_ |
How many layers to try. More... | |
unsigned int | numOfMaxSeeds_ |
Maximum number of seeds for each L2. More... | |
unsigned int | numSeedsMade_ |
edm::ESHandle< Propagator > | propagatorAlong_ |
edm::ESHandle< Propagator > | propagatorOpposite_ |
const double | pT1_ |
pT, eta ranges and scale factor values More... | |
const double | pT2_ |
const double | pT3_ |
const double | SF1_ |
const double | SF2_ |
const double | SF3_ |
const double | SF4_ |
const double | SF5_ |
const edm::EDGetTokenT < reco::TrackCollection > | src_ |
Labels for input collections. More... | |
std::string | theCategory |
const double | tsosDiffDeltaR_ |
Difference in deltaR of TSOSs to trigger using hits in hybrid. More... | |
std::unique_ptr < TrajectoryStateUpdator > | updator_ |
KFUpdator defined in constructor. More... | |
const bool | useHitlessSeeds_ |
Switch to use hitless seeds or not. More... | |
bool | useHitsInHybrid_ |
const bool | useHybridSeeds_ |
Switch to use hitless + hits for seeds depending on the L2 properties. More... | |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
typedef CacheContexts< T...> | CacheTypes |
typedef CacheTypes::GlobalCache | GlobalCache |
typedef AbilityChecker< T...> | HasAbility |
typedef CacheTypes::LuminosityBlockCache | LuminosityBlockCache |
typedef LuminosityBlockContextT < LuminosityBlockCache, RunCache, GlobalCache > | LuminosityBlockContext |
typedef CacheTypes::LuminosityBlockSummaryCache | LuminosityBlockSummaryCache |
typedef CacheTypes::RunCache | RunCache |
typedef RunContextT< RunCache, GlobalCache > | RunContext |
typedef CacheTypes::RunSummaryCache | RunSummaryCache |
Public Types inherited from edm::stream::EDProducerBase | |
typedef EDProducerAdaptorBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Create L3MuonTrajectorySeeds from L2 Muons updated at vertex in an outside in manner.
Definition at line 34 of file TSGForOI.h.
|
explicit |
Definition at line 10 of file TSGForOI.cc.
References foundCompatibleDet_, edm::ParameterSet::getParameter(), numOfMaxSeeds_, numSeedsMade_, and theCategory.
|
virtual |
Definition at line 46 of file TSGForOI.cc.
|
private |
Function used to calculate the dynamic error SF by analysing the L2.
Definition at line 208 of file TSGForOI.cc.
References funct::abs(), eta1_, eta2_, pT1_, pT2_, pT3_, SF1_, SF2_, SF3_, SF4_, SF5_, and theCategory.
Referenced by findSeedsOnLayer().
|
static |
Definition at line 283 of file TSGForOI.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSetDescription::addUntracked(), HLT_FULL_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.
|
private |
Function to find seeds on a given layer.
Definition at line 149 of file TSGForOI.cc.
References adjustErrorsDyanmicallyForHitless_, adjustErrorsDyanmicallyForHits_, analysedL2_, calculateSFFromL2(), GeometricSearchDet::compatibleDetsV(), estimator_, fixedErrorRescalingForHitless_, fixedErrorRescalingForHits_, foundCompatibleDet_, layerCount_, makeSeedsFromHits(), measurementTracker_, numOfLayersToTry_, numOfMaxSeeds_, numSeedsMade_, oppositeToMomentum, GenerateHcalLaserBadRunList::out, trajectoryStateTransform::persistentState(), theCategory, useHitlessSeeds_, and useHybridSeeds_.
Referenced by produce().
|
private |
Function to find hits on layers and create seeds from updated TSOS.
Definition at line 236 of file TSGForOI.cc.
References GeometricSearchDet::compatibleDetsV(), estimator_, MeasurementDetWithData::fastMeasurements(), newFWLiteAna::found, MeasurementTrackerEvent::idToDet(), MeasurementDetWithData::isNull(), TrajectoryStateOnSurface::isValid(), eostools::move(), numOfHitsToTry_, oppositeToMomentum, trajectoryStateTransform::persistentState(), edm::OwnVector< T, P >::push_back(), fileCollector::seed, and updator_.
Referenced by findSeedsOnLayer().
|
overridevirtual |
Implements edm::stream::EDProducerBase.
Definition at line 50 of file TSGForOI.cc.
References funct::abs(), alongMomentum, analysedL2_, deltaR(), dummyPlane_, estimator_, estimatorName_, findSeedsOnLayer(), foundCompatibleDet_, geometry_, edm::EventSetup::get(), edm::Event::getByToken(), TrajectoryStateOnSurface::globalMomentum(), trajectoryStateTransform::initialFreeState(), trajectoryStateTransform::innerFreeState(), TrajectoryStateOnSurface::isValid(), layerCount_, magfield_, maxEtaForTOB_, measurementTracker_, measurementTrackerTag_, minEtaForTEC_, numOfMaxSeeds_, numSeedsMade_, oppositeToMomentum, GenerateHcalLaserBadRunList::out, FreeTrajectoryState::position(), edm::ESHandle< class >::product(), HLT_FULL_cff::propagatorAlong, propagatorAlong_, HLT_FULL_cff::propagatorOpposite, propagatorOpposite_, edm::Event::put(), query::result, SetPropagationDirection(), src_, theCategory, tsosDiffDeltaR_, and useHybridSeeds_.
|
private |
Definition at line 59 of file TSGForOI.h.
Referenced by findSeedsOnLayer().
|
private |
Whether or not to use an automatically calculated SF value.
Definition at line 58 of file TSGForOI.h.
Referenced by findSeedsOnLayer().
|
private |
Definition at line 94 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), and produce().
|
private |
Surface used to make a TSOS at the PCA to the beamline.
Definition at line 79 of file TSGForOI.h.
Referenced by produce().
|
private |
Definition at line 131 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), makeSeedsFromHits(), and produce().
|
private |
Estimator used to find dets and TrajectoryMeasurements.
Definition at line 62 of file TSGForOI.h.
Referenced by produce().
|
private |
Definition at line 86 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 86 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 55 of file TSGForOI.h.
Referenced by findSeedsOnLayer().
|
private |
How much to rescale errors from STA for fixed option.
Definition at line 54 of file TSGForOI.h.
Referenced by findSeedsOnLayer().
|
private |
Counters and flags for the implementation.
Definition at line 93 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), produce(), and TSGForOI().
|
private |
Definition at line 104 of file TSGForOI.h.
Referenced by produce().
|
private |
Definition at line 97 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), and produce().
|
private |
Definition at line 101 of file TSGForOI.h.
Referenced by produce().
|
private |
Maximum eta value to activate searching in the TOB.
Definition at line 70 of file TSGForOI.h.
Referenced by produce().
|
private |
Definition at line 105 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), and produce().
|
private |
Definition at line 64 of file TSGForOI.h.
Referenced by produce().
|
private |
Minimum eta value to activate searching in the TEC.
Definition at line 67 of file TSGForOI.h.
Referenced by produce().
|
private |
How many hits to try on same layer.
Definition at line 51 of file TSGForOI.h.
Referenced by makeSeedsFromHits().
|
private |
|
private |
Maximum number of seeds for each L2.
Definition at line 45 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), produce(), and TSGForOI().
|
private |
Definition at line 96 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), produce(), and TSGForOI().
|
private |
Definition at line 102 of file TSGForOI.h.
Referenced by produce().
|
private |
Definition at line 103 of file TSGForOI.h.
Referenced by produce().
|
private |
pT, eta ranges and scale factor values
Definition at line 85 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 85 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 85 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 87 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 87 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 87 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 87 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
Definition at line 87 of file TSGForOI.h.
Referenced by calculateSFFromL2().
|
private |
|
private |
Definition at line 99 of file TSGForOI.h.
Referenced by calculateSFFromL2(), findSeedsOnLayer(), produce(), and TSGForOI().
|
private |
Difference in deltaR of TSOSs to trigger using hits in hybrid.
Definition at line 90 of file TSGForOI.h.
Referenced by produce().
|
private |
KFUpdator defined in constructor.
Definition at line 82 of file TSGForOI.h.
Referenced by makeSeedsFromHits().
|
private |
Switch to use hitless seeds or not.
Definition at line 73 of file TSGForOI.h.
Referenced by findSeedsOnLayer().
|
private |
Definition at line 95 of file TSGForOI.h.
|
private |
Switch to use hitless + hits for seeds depending on the L2 properties.
Definition at line 76 of file TSGForOI.h.
Referenced by findSeedsOnLayer(), and produce().