|
|
Go to the documentation of this file.
100 std::vector<std::unique_ptr<TrackingRegion>>
result;
134 double pt = staTrack.
pt();
138 GlobalVector forSmallMomentum(innerMomentum.x(), innerMomentum.y(), innerMomentum.z());
139 if (staTrack.
p() <= 1.5) {
164 if (!
vtx->isFake() &&
vtx->isValid()) {
180 double region_dEta = 0;
181 double region_dPhi = 0;
195 if (
pt > 10. &&
pt < 100.) {
226 auto region = std::make_unique<RectangularEtaPhiTrackingRegion>(
229 LogDebug(
"MuonTrackingRegionBuilder") <<
"the region parameters are:\n"
230 <<
"\n dirVector: " << dirVector <<
"\n vertexPos: " << vertexPos
231 <<
"\n minPt: " <<
minPt <<
"\n deltaR:" <<
deltaR <<
"\n deltaZ:" << deltaZ
232 <<
"\n region_dEta:" << region_dEta <<
"\n region_dPhi:" << region_dPhi
233 <<
"\n on demand parameter: " << static_cast<int>(
theOnDemand);
242 descriptions.
add(
"MuonTrackingRegionBuilder",
desc);
247 descriptions.
add(
"MuonTrackingRegionBuilderHLT",
desc);
250 "Build a TrackingRegion around a standalone muon. Options to define region around beamspot or primary vertex and "
251 "dynamic regions are included.");
254 desc.add<
double>(
"EtaR_UpperLimit_Par1", 0.25);
255 desc.add<
double>(
"DeltaR", 0.2);
257 desc.add<
int>(
"OnDemand", -1);
259 desc.add<
double>(
"Rescale_phi", 3.0);
260 desc.add<
bool>(
"Eta_fixed",
false);
261 desc.add<
double>(
"Rescale_eta", 3.0);
262 desc.add<
double>(
"PhiR_UpperLimit_Par2", 0.2);
263 desc.add<
double>(
"Eta_min", 0.05);
264 desc.add<
bool>(
"Phi_fixed",
false);
265 desc.add<
double>(
"Phi_min", 0.05);
266 desc.add<
double>(
"PhiR_UpperLimit_Par1", 0.6);
267 desc.add<
double>(
"EtaR_UpperLimit_Par2", 0.15);
269 desc.add<
bool>(
"UseVertex",
false);
270 desc.add<
double>(
"Rescale_Dz", 3.0);
271 desc.add<
bool>(
"Pt_fixed",
false);
272 desc.add<
bool>(
"Z_fixed",
true);
273 desc.add<
double>(
"Pt_min", 1.5);
274 desc.add<
double>(
"DeltaZ", 15.9);
275 desc.add<
double>(
"DeltaEta", 0.2);
276 desc.add<
double>(
"DeltaPhi", 0.2);
277 desc.add<
int>(
"maxRegions", 1);
278 desc.add<
bool>(
"precise",
true);
283 desc.add<
double>(
"EtaR_UpperLimit_Par1", 0.25);
284 desc.add<
double>(
"DeltaR", 0.2);
286 desc.add<
int>(
"OnDemand", -1);
288 desc.add<
double>(
"Rescale_phi", 3.0);
289 desc.add<
bool>(
"Eta_fixed",
false);
290 desc.add<
double>(
"Rescale_eta", 3.0);
291 desc.add<
double>(
"PhiR_UpperLimit_Par2", 0.2);
292 desc.add<
double>(
"Eta_min", 0.05);
293 desc.add<
bool>(
"Phi_fixed",
false);
294 desc.add<
double>(
"Phi_min", 0.05);
295 desc.add<
double>(
"PhiR_UpperLimit_Par1", 0.6);
296 desc.add<
double>(
"EtaR_UpperLimit_Par2", 0.15);
298 desc.add<
bool>(
"UseVertex",
false);
299 desc.add<
double>(
"Rescale_Dz", 3.0);
300 desc.add<
bool>(
"Pt_fixed",
false);
301 desc.add<
bool>(
"Z_fixed",
true);
302 desc.add<
double>(
"Pt_min", 1.5);
303 desc.add<
double>(
"DeltaZ", 15.9);
304 desc.add<
double>(
"DeltaEta", 0.2);
305 desc.add<
double>(
"DeltaPhi", 0.2);
306 desc.add<
int>(
"maxRegions", 1);
307 desc.add<
bool>(
"precise",
true);
void build(const edm::ParameterSet &, edm::ConsumesCollector &)
static void fillDescriptionsHLT(edm::ParameterSetDescription &descriptions)
T const * product() const
double etaError() const
error on eta
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken
double p() const
momentum vector magnitude
std::vector< Vertex > VertexCollection
collection of Vertex objects
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::TrackRef &) const
Define tracking region.
constexpr bool isUninitialized() const noexcept
RectangularEtaPhiTrackingRegion::UseMeasurementTracker theOnDemand
double pt() const
track transverse momentum
virtual void setEvent(const edm::Event &)
Pass the Event to the algo at each event.
const math::XYZVector & innerMomentum() const
momentum vector at the innermost hit position
static UseMeasurementTracker intToUseMeasurementTracker(int value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< reco::TrackCollection > inputCollectionToken
Global3DPoint GlobalPoint
void setComment(std::string const &value)
XYZVectorD XYZVector
spatial vector with cartesian internal representation
std::vector< std::unique_ptr< TrackingRegion > > regions(const edm::Event &, const edm::EventSetup &) const override
Create Region of Interest.
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Add Fill Descriptions.
T getParameter(std::string const &) const
double phiError() const
error on phi
edm::EDGetTokenT< reco::VertexCollection > vertexCollectionToken
Abs< T >::type abs(const T &t)
edm::EDGetTokenT< MeasurementTrackerEvent > theMeasurementTrackerToken
const Vector & momentum() const
track momentum vector
static void fillDescriptionsOffline(edm::ParameterSetDescription &descriptions)
const edm::Event * theEvent
std::vector< Track > TrackCollection
collection of Tracks