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 
40 private:
43 
45  const unsigned int numOfMaxSeedsParam_;
46 
48  const unsigned int numOfLayersToTry_;
49 
51  const unsigned int numOfHitsToTry_;
52 
56 
60 
63 
65  const double minEtaForTEC_;
66 
68  const double maxEtaForTOB_;
69 
72  const bool useHitLessSeeds_;
73 
76 
78  const std::unique_ptr<TrajectoryStateUpdator> updator_;
79 
81 
83  const double pT1_, pT2_, pT3_;
84  const double eta1_, eta2_;
85  const double SF1_, SF2_, SF3_, SF4_, SF5_;
86 
88  const double tsosDiff_;
89 
93 
95  void findSeedsOnLayer(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& analysedL2,
107  std::unique_ptr<std::vector<TrajectorySeed> >& out) const;
108 
110  double calculateSFFromL2(const reco::TrackRef track) const;
111 
113  int makeSeedsFromHits(const TrackerTopology* tTopo,
114  const GeometricSearchDet& layer,
115  const TrajectoryStateOnSurface& tsosAtIP,
116  std::vector<TrajectorySeed>& out,
120  unsigned int& numSeedsMade,
121  const double errorSF,
122  const double l2Eta) const;
123 
124  //Find compatability between two TSOSs
125  double match_Chi2(const TrajectoryStateOnSurface& tsos1, const TrajectoryStateOnSurface& tsos2) const;
126 };
127 
128 #endif
const std::string estimatorName_
Estimator used to find dets and TrajectoryMeasurements.
Definition: TSGForOI.h:62
void produce(edm::StreamID sid, edm::Event &iEvent, const edm::EventSetup &iSetup) const override
Definition: TSGForOI.cc:50
const double tsosDiff_
Distance of TSOSs to trigger using hits or not.
Definition: TSGForOI.h:88
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 &analysedL2, std::unique_ptr< std::vector< TrajectorySeed > > &out) const
Function to find seeds on a given layer.
Definition: TSGForOI.cc:283
const std::string propagatorName_
Counters and flags for the implementation.
Definition: TSGForOI.h:91
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: TSGForOI.cc:482
const double SF3_
Definition: TSGForOI.h:85
const double maxEtaForTOB_
Maximum eta value to activate searching in the TOB.
Definition: TSGForOI.h:68
~TSGForOI() override
Definition: TSGForOI.cc:48
const double minEtaForTEC_
Minimum eta value to activate searching in the TEC.
Definition: TSGForOI.h:65
int iEvent
Definition: GenABIO.cc:224
double match_Chi2(const TrajectoryStateOnSurface &tsos1, const TrajectoryStateOnSurface &tsos2) const
Definition: TSGForOI.cc:463
const double fixedErrorRescalingForHits_
How much to rescale errors from the L2 (fixed error vs pT, eta)
Definition: TSGForOI.h:54
const std::unique_ptr< TrajectoryStateUpdator > updator_
KFUpdator defined in constructor.
Definition: TSGForOI.h:78
const double eta2_
Definition: TSGForOI.h:84
const bool useHitLessSeeds_
Definition: TSGForOI.h:72
const unsigned int numOfLayersToTry_
How many layers to try.
Definition: TSGForOI.h:48
const double SF1_
Definition: TSGForOI.h:85
double calculateSFFromL2(const reco::TrackRef track) const
Function used to calculate the dynamic error SF by analysing the L2.
Definition: TSGForOI.cc:356
const bool useStereoLayersInTEC_
Switch ON to use Stereo layers instead of using every layer in TEC.
Definition: TSGForOI.h:75
const double SF5_
Definition: TSGForOI.h:85
Create L3MuonTrajectorySeeds from L2 Muons updated at vertex in an outside in manner.
Definition: TSGForOI.h:33
const bool adjustErrorsDynamicallyForHitless_
Definition: TSGForOI.h:59
const double pT1_
pT, eta ranges and scale factor values
Definition: TSGForOI.h:83
const double SF4_
Definition: TSGForOI.h:85
const double pT2_
Definition: TSGForOI.h:83
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 double l2Eta) const
Function to find hits on layers and create seeds from updated TSOS.
Definition: TSGForOI.cc:387
const double eta1_
Definition: TSGForOI.h:84
const double pT3_
Definition: TSGForOI.h:83
const edm::EDGetTokenT< reco::TrackCollection > src_
Labels for input collections.
Definition: TSGForOI.h:42
const bool adjustErrorsDynamicallyForHits_
Whether or not to use an automatically calculated scale-factor value.
Definition: TSGForOI.h:58
TSGForOI(const edm::ParameterSet &iConfig)
Definition: TSGForOI.cc:15
const edm::EDGetTokenT< MeasurementTrackerEvent > measurementTrackerTag_
Definition: TSGForOI.h:80
const unsigned int numOfMaxSeedsParam_
Maximum number of seeds for each L2.
Definition: TSGForOI.h:45
const std::string theCategory
Definition: TSGForOI.h:92
const double SF2_
Definition: TSGForOI.h:85
const unsigned int numOfHitsToTry_
How many hits to try per layer.
Definition: TSGForOI.h:51
const double fixedErrorRescalingForHitless_
Definition: TSGForOI.h:55