CMS 3D CMS Logo

TSGForOI.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackerSeedGenerator_TSGForOI_H
2 #define RecoMuon_TrackerSeedGenerator_TSGForOI_H
3 
32 
34 public:
35  explicit TSGForOI(const edm::ParameterSet & iConfig);
36  ~TSGForOI() override;
37  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
38  void produce(edm::StreamID sid, edm::Event& iEvent, const edm::EventSetup& iSetup) const override;
39 private:
42 
44  const unsigned int numOfMaxSeedsParam_;
45 
47  const unsigned int numOfLayersToTry_;
48 
50  const unsigned int numOfHitsToTry_;
51 
55 
59 
62 
64  const double minEtaForTEC_;
65 
67  const double maxEtaForTOB_;
68 
71  const bool useHitLessSeeds_;
72 
75 
77  const std::unique_ptr<TrajectoryStateUpdator> updator_;
78 
80 
82  const double pT1_,pT2_,pT3_;
83  const double eta1_,eta2_;
84  const double SF1_,SF2_,SF3_,SF4_,SF5_;
85 
87  const double tsosDiff_;
88 
92 
94  void findSeedsOnLayer(
95  const TrackerTopology* tTopo,
96  const GeometricSearchDet &layer,
97  const TrajectoryStateOnSurface &tsosAtIP,
100  const reco::TrackRef l2,
102  edm::Handle<MeasurementTrackerEvent>& measurementTrackerH,
103  unsigned int& numSeedsMade,
104  unsigned int& numOfMaxSeeds,
105  unsigned int& layerCount,
106  bool& foundHitlessSeed,
107  bool& analysedL2,
108  std::unique_ptr<std::vector<TrajectorySeed> >& out) const;
109 
111  double calculateSFFromL2(const reco::TrackRef track) const;
112 
114  int makeSeedsFromHits(
115  const TrackerTopology* tTopo,
116  const GeometricSearchDet &layer,
117  const TrajectoryStateOnSurface &tsosAtIP,
118  std::vector<TrajectorySeed> &out,
120  const MeasurementTrackerEvent &measurementTracker,
122  unsigned int& numSeedsMade,
123  const double errorSF) const;
124 
125 
126 };
127 
128 #endif
const std::string estimatorName_
Estimator used to find dets and TrajectoryMeasurements.
Definition: TSGForOI.h:61
void produce(edm::StreamID sid, edm::Event &iEvent, const edm::EventSetup &iSetup) const override
Definition: TSGForOI.cc:53
const double tsosDiff_
Distance of TSOSs to trigger using hits or not.
Definition: TSGForOI.h:87
const std::string propagatorName_
Counters and flags for the implementation.
Definition: TSGForOI.h:90
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: TSGForOI.cc:347
const double SF3_
Definition: TSGForOI.h:84
const double maxEtaForTOB_
Maximum eta value to activate searching in the TOB.
Definition: TSGForOI.h:67
~TSGForOI() override
Definition: TSGForOI.cc:49
const double minEtaForTEC_
Minimum eta value to activate searching in the TEC.
Definition: TSGForOI.h:64
int iEvent
Definition: GenABIO.cc:230
const double fixedErrorRescalingForHits_
How much to rescale errors from the L2 (fixed error vs pT, eta)
Definition: TSGForOI.h:53
const std::unique_ptr< TrajectoryStateUpdator > updator_
KFUpdator defined in constructor.
Definition: TSGForOI.h:77
const double eta2_
Definition: TSGForOI.h:83
const bool useHitLessSeeds_
Definition: TSGForOI.h:71
const unsigned int numOfLayersToTry_
How many layers to try.
Definition: TSGForOI.h:47
const double SF1_
Definition: TSGForOI.h:84
double calculateSFFromL2(const reco::TrackRef track) const
Function used to calculate the dynamic error SF by analysing the L2.
Definition: TSGForOI.cc:256
const bool useStereoLayersInTEC_
Switch ON to use Stereo layers instead of using every layer in TEC.
Definition: TSGForOI.h:74
void findSeedsOnLayer(const TrackerTopology *tTopo, const GeometricSearchDet &layer, const TrajectoryStateOnSurface &tsosAtIP, const Propagator &propagatorAlong, const Propagator &propagatorOpposite, const reco::TrackRef l2, edm::ESHandle< Chi2MeasurementEstimatorBase > &estimator_, edm::Handle< MeasurementTrackerEvent > &measurementTrackerH, unsigned int &numSeedsMade, unsigned int &numOfMaxSeeds, unsigned int &layerCount, bool &foundHitlessSeed, bool &analysedL2, std::unique_ptr< std::vector< TrajectorySeed > > &out) const
Function to find seeds on a given layer.
Definition: TSGForOI.cc:195
const double SF5_
Definition: TSGForOI.h:84
Create L3MuonTrajectorySeeds from L2 Muons updated at vertex in an outside in manner.
Definition: TSGForOI.h:33
const bool adjustErrorsDynamicallyForHitless_
Definition: TSGForOI.h:58
const double pT1_
pT, eta ranges and scale factor values
Definition: TSGForOI.h:82
const double SF4_
Definition: TSGForOI.h:84
const double pT2_
Definition: TSGForOI.h:82
const double eta1_
Definition: TSGForOI.h:83
const double pT3_
Definition: TSGForOI.h:82
int makeSeedsFromHits(const TrackerTopology *tTopo, const GeometricSearchDet &layer, const TrajectoryStateOnSurface &tsosAtIP, std::vector< TrajectorySeed > &out, const Propagator &propagatorAlong, const MeasurementTrackerEvent &measurementTracker, edm::ESHandle< Chi2MeasurementEstimatorBase > &estimator_, unsigned int &numSeedsMade, const double errorSF) const
Function to find hits on layers and create seeds from updated TSOS.
Definition: TSGForOI.cc:281
const edm::EDGetTokenT< reco::TrackCollection > src_
Labels for input collections.
Definition: TSGForOI.h:41
const bool adjustErrorsDynamicallyForHits_
Whether or not to use an automatically calculated scale-factor value.
Definition: TSGForOI.h:57
TSGForOI(const edm::ParameterSet &iConfig)
Definition: TSGForOI.cc:15
const edm::EDGetTokenT< MeasurementTrackerEvent > measurementTrackerTag_
Definition: TSGForOI.h:79
const unsigned int numOfMaxSeedsParam_
Maximum number of seeds for each L2.
Definition: TSGForOI.h:44
const std::string theCategory
Definition: TSGForOI.h:91
const double SF2_
Definition: TSGForOI.h:84
const unsigned int numOfHitsToTry_
How many hits to try per layer.
Definition: TSGForOI.h:50
const double fixedErrorRescalingForHitless_
Definition: TSGForOI.h:54