CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
SeedGeneratorForCosmics Class Reference

#include <SeedGeneratorForCosmics.h>

Public Types

typedef TrajectoryStateOnSurface TSOS
 

Public Member Functions

void init (const SiStripRecHit2DCollection &collstereo, const SiStripRecHit2DCollection &collrphi, const SiStripMatchedRecHit2DCollection &collmatched, const edm::EventSetup &c)
 
void run (TrajectorySeedCollection &, const edm::EventSetup &c)
 
 SeedGeneratorForCosmics (const edm::ParameterSet &conf)
 
bool seeds (TrajectorySeedCollection &output, const edm::EventSetup &c, const TrackingRegion &region)
 
virtual ~SeedGeneratorForCosmics ()
 

Private Attributes

std::string builderName
 
std::string geometry
 
OrderedHitPairs HitPairs
 
std::string hitsforseeds
 
OrderedHitTriplets HitTriplets
 
edm::ESHandle< MagneticFieldmagfield
 
int32_t maxSeeds_
 
bool negativeYOnly
 
bool positiveYOnly
 
GlobalTrackingRegion region
 
float seedpt
 
CosmicHitPairGeneratorthePairGenerator
 
PropagatorWithMaterialthePropagatorAl
 
PropagatorWithMaterialthePropagatorOp
 
CosmicHitTripletGeneratortheTripletGenerator
 
KFUpdatortheUpdator
 
edm::ESHandle< TrackerGeometrytracker
 
const TransientTrackingRecHitBuilderTTTRHBuilder
 

Detailed Description

Definition at line 26 of file SeedGeneratorForCosmics.h.

Member Typedef Documentation

◆ TSOS

Definition at line 28 of file SeedGeneratorForCosmics.h.

Constructor & Destructor Documentation

◆ SeedGeneratorForCosmics()

SeedGeneratorForCosmics::SeedGeneratorForCosmics ( const edm::ParameterSet conf)

Definition at line 45 of file SeedGeneratorForCosmics.cc.

46  : maxSeeds_(conf.getParameter<int32_t>("maxSeeds")) {
47  float ptmin = conf.getParameter<double>("ptMin");
48  float originradius = conf.getParameter<double>("originRadius");
49  float halflength = conf.getParameter<double>("originHalfLength");
50  float originz = conf.getParameter<double>("originZPosition");
51  seedpt = conf.getParameter<double>("SeedPt");
52 
53  builderName = conf.getParameter<std::string>("TTRHBuilder");
54  geometry = conf.getUntrackedParameter<std::string>("GeometricStructure", "STANDARD");
55  region = GlobalTrackingRegion(ptmin, originradius, halflength, originz);
56  hitsforseeds = conf.getUntrackedParameter<std::string>("HitsForSeeds", "pairs");
57  edm::LogInfo("SeedGeneratorForCosmics")
58  << " PtMin of track is " << ptmin << " The Radius of the cylinder for seeds is " << originradius << "cm"
59  << " The set Seed Momentum" << seedpt;
60 
61  //***top-bottom
62  positiveYOnly = conf.getParameter<bool>("PositiveYOnly");
63  negativeYOnly = conf.getParameter<bool>("NegativeYOnly");
64  //***
65 }

References builderName, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hitsforseeds, negativeYOnly, positiveYOnly, ptmin, region, seedpt, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ ~SeedGeneratorForCosmics()

virtual SeedGeneratorForCosmics::~SeedGeneratorForCosmics ( )
inlinevirtual

Definition at line 30 of file SeedGeneratorForCosmics.h.

30 {};

Member Function Documentation

◆ init()

void SeedGeneratorForCosmics::init ( const SiStripRecHit2DCollection collstereo,
const SiStripRecHit2DCollection collrphi,
const SiStripMatchedRecHit2DCollection collmatched,
const edm::EventSetup c 
)

Definition at line 8 of file SeedGeneratorForCosmics.cc.

11  {
12  iSetup.get<IdealMagneticFieldRecord>().get(magfield);
13  iSetup.get<TrackerDigiGeometryRecord>().get(tracker);
16  theUpdator = new KFUpdator();
17 
18  // get the transient builder
19  //
20 
22 
23  iSetup.get<TransientRecHitRecord>().get(builderName, theBuilder);
24  TTTRHBuilder = theBuilder.product();
25  LogDebug("CosmicSeedFinder") << " Hits built with " << hitsforseeds << " hits";
26 
27  CosmicLayerPairs cosmiclayers(geometry);
28 
29  cosmiclayers.init(collstereo, collrphi, collmatched, iSetup);
30  thePairGenerator = new CosmicHitPairGenerator(cosmiclayers, iSetup);
31  HitPairs.clear();
32  if ((hitsforseeds == "pairs") || (hitsforseeds == "pairsandtriplets")) {
34  }
35 
36  CosmicLayerTriplets cosmiclayers2;
37  cosmiclayers2.init(collstereo, collrphi, collmatched, geometry, iSetup);
38  theTripletGenerator = new CosmicHitTripletGenerator(cosmiclayers2, iSetup);
39  HitTriplets.clear();
40  if ((hitsforseeds == "triplets") || (hitsforseeds == "pairsandtriplets")) {
42  }
43 }

References alongMomentum, builderName, edm::EventSetup::get(), get, CosmicHitPairGenerator::hitPairs(), HitPairs, hitsforseeds, CosmicHitTripletGenerator::hitTriplets(), HitTriplets, CosmicLayerPairs::init(), CosmicLayerTriplets::init(), LogDebug, magfield, oppositeToMomentum, edm::ESHandle< T >::product(), region, thePairGenerator, thePropagatorAl, thePropagatorOp, theTripletGenerator, theUpdator, tracker, and TTTRHBuilder.

Referenced by CosmicSeedGenerator::produce().

◆ run()

void SeedGeneratorForCosmics::run ( TrajectorySeedCollection output,
const edm::EventSetup c 
)

Definition at line 67 of file SeedGeneratorForCosmics.cc.

67  {
68  seeds(output, iSetup, region);
69  delete thePairGenerator;
70  delete theTripletGenerator;
71  delete thePropagatorAl;
72  delete thePropagatorOp;
73  delete theUpdator;
74 }

References convertSQLitetoXML_cfg::output, region, seeds(), thePairGenerator, thePropagatorAl, thePropagatorOp, theTripletGenerator, and theUpdator.

Referenced by CosmicSeedGenerator::produce().

◆ seeds()

bool SeedGeneratorForCosmics::seeds ( TrajectorySeedCollection output,
const edm::EventSetup c,
const TrackingRegion region 
)

Definition at line 75 of file SeedGeneratorForCosmics.cc.

77  {
78  LogDebug("CosmicSeedFinder") << "Number of triplets " << HitTriplets.size();
79  LogDebug("CosmicSeedFinder") << "Number of pairs " << HitPairs.size();
80 
81  for (unsigned int it = 0; it < HitTriplets.size(); it++) {
82  //const TrackingRecHit *hit = &(
83  // const TrackingRecHit* hit = it->hits();
84 
85  // GlobalPoint inner = tracker->idToDet(HitTriplets[it].inner().RecHit()->
86  // geographicalId())->surface().
87  // toGlobal(HitTriplets[it].inner().RecHit()->localPosition());
88  //const TrackingRecHit *innerhit = &(*HitTriplets[it].inner());
89  //const TrackingRecHit *middlehit = &(*HitTriplets[it].middle());
90 
91  GlobalPoint inner = tracker->idToDet((*(HitTriplets[it].inner())).geographicalId())
92  ->surface()
93  .toGlobal((*(HitTriplets[it].inner())).localPosition());
94 
95  GlobalPoint middle = tracker->idToDet((*(HitTriplets[it].middle())).geographicalId())
96  ->surface()
97  .toGlobal((*(HitTriplets[it].middle())).localPosition());
98 
99  GlobalPoint outer = tracker->idToDet((*(HitTriplets[it].outer())).geographicalId())
100  ->surface()
101  .toGlobal((*(HitTriplets[it].outer())).localPosition());
102 
103  // SeedingHitSet::ConstRecHitPointer outrhit=TTTRHBuilder->build(HitPairs[is].outer())
104 
105  SeedingHitSet::ConstRecHitPointer outrhit = HitTriplets[it].outer();
106  //***top-bottom
107  SeedingHitSet::ConstRecHitPointer innrhit = HitTriplets[it].inner();
108  if (positiveYOnly && (outrhit->globalPosition().y() < 0 || innrhit->globalPosition().y() < 0 ||
109  outrhit->globalPosition().y() < innrhit->globalPosition().y()))
110  continue;
111  if (negativeYOnly && (outrhit->globalPosition().y() > 0 || innrhit->globalPosition().y() > 0 ||
112  outrhit->globalPosition().y() > innrhit->globalPosition().y()))
113  continue;
114  //***
115 
117  hits.push_back(HitTriplets[it].outer()->hit()->clone());
118  FastHelix helix(inner, middle, outer, magfield->nominalValue(), &(*magfield));
119  GlobalVector gv = helix.stateAtVertex().momentum();
120  float ch = helix.stateAtVertex().charge();
121  float mom2 = gv.x() * gv.x() + gv.y() * gv.y() + gv.z() * gv.z();
122  if (mom2 > 1e06f || edm::isNotFinite(mom2))
123  continue; // ChangedByDaniele
124 
125  if (gv.y() > 0) {
126  gv = -1. * gv;
127  ch = -1. * ch;
128  }
129 
130  GlobalTrajectoryParameters Gtp(outer, gv, int(ch), &(*magfield));
132  if ((outer.y() - inner.y()) > 0) {
133  const TSOS outerState = thePropagatorAl->propagate(
134  CosmicSeed, tracker->idToDet((*(HitTriplets[it].outer())).geographicalId())->surface());
135  if (outerState.isValid()) {
136  LogDebug("CosmicSeedFinder") << "outerState " << outerState;
137  const TSOS outerUpdated = theUpdator->update(outerState, *outrhit);
138  if (outerUpdated.isValid()) {
139  LogDebug("CosmicSeedFinder") << "outerUpdated " << outerUpdated;
140 
142  outerUpdated, (*(HitTriplets[it].outer())).geographicalId().rawId()),
143  hits,
144  alongMomentum));
145 
146  if ((maxSeeds_ > 0) && (output.size() > size_t(maxSeeds_))) {
147  edm::LogError("TooManySeeds") << "Found too many seeds, bailing out.\n";
148  output.clear();
149  return false;
150  }
151  }
152  }
153  } else {
154  const TSOS outerState = thePropagatorOp->propagate(
155  CosmicSeed, tracker->idToDet((*(HitTriplets[it].outer())).geographicalId())->surface());
156  if (outerState.isValid()) {
157  LogDebug("CosmicSeedFinder") << "outerState " << outerState;
158  const TSOS outerUpdated = theUpdator->update(outerState, *outrhit);
159  if (outerUpdated.isValid()) {
160  LogDebug("CosmicSeedFinder") << "outerUpdated " << outerUpdated;
161 
163  outerUpdated, (*(HitTriplets[it].outer())).geographicalId().rawId()),
164  hits,
166 
167  if ((maxSeeds_ > 0) && (output.size() > size_t(maxSeeds_))) {
168  edm::LogError("TooManySeeds") << "Found too many seeds, bailing out.\n";
169  output.clear();
170  return false;
171  }
172  }
173  }
174  }
175  }
176 
177  for (unsigned int is = 0; is < HitPairs.size(); is++) {
178  GlobalPoint inner = tracker->idToDet((*(HitPairs[is].inner())).geographicalId())
179  ->surface()
180  .toGlobal((*(HitPairs[is].inner())).localPosition());
181  GlobalPoint outer = tracker->idToDet((*(HitPairs[is].outer())).geographicalId())
182  ->surface()
183  .toGlobal((*(HitPairs[is].outer())).localPosition());
184 
185  LogDebug("CosmicSeedFinder") << "inner point of the seed " << inner << " outer point of the seed " << outer;
186  //RC const TransientTrackingRecHit* outrhit=TTTRHBuilder->build(HitPairs[is].outer().RecHit());
187  SeedingHitSet::ConstRecHitPointer outrhit = HitPairs[is].outer();
188  //***top-bottom
189  SeedingHitSet::ConstRecHitPointer innrhit = HitPairs[is].inner();
190  if (positiveYOnly && (outrhit->globalPosition().y() < 0 || innrhit->globalPosition().y() < 0 ||
191  outrhit->globalPosition().y() < innrhit->globalPosition().y()))
192  continue;
193  if (negativeYOnly && (outrhit->globalPosition().y() > 0 || innrhit->globalPosition().y() > 0 ||
194  outrhit->globalPosition().y() > innrhit->globalPosition().y()))
195  continue;
196  //***
197 
199  hits.push_back(HitPairs[is].outer()->hit()->clone());
200  // hits.push_back(HitPairs[is].inner()->clone());
201 
202  for (int i = 0; i < 2; i++) {
203  //FIRST STATE IS CALCULATED CONSIDERING THAT THE CHARGE CAN BE POSITIVE OR NEGATIVE
204  int predsign = (2 * i) - 1;
205  if ((outer.y() - inner.y()) > 0) {
207  outer, (inner - outer) * (seedpt / (inner - outer).mag()), predsign, &(*magfield));
208 
210 
211  LogDebug("CosmicSeedFinder") << " FirstTSOS " << CosmicSeed;
212  //First propagation
213  const TSOS outerState = thePropagatorAl->propagate(
214  CosmicSeed, tracker->idToDet((*(HitPairs[is].outer())).geographicalId())->surface());
215  if (outerState.isValid()) {
216  LogDebug("CosmicSeedFinder") << "outerState " << outerState;
217  const TSOS outerUpdated = theUpdator->update(outerState, *outrhit);
218  if (outerUpdated.isValid()) {
219  LogDebug("CosmicSeedFinder") << "outerUpdated " << outerUpdated;
220 
222  outerUpdated, (*(HitPairs[is].outer())).geographicalId().rawId());
223 
224  output.push_back(TrajectorySeed(PTraj, hits, alongMomentum));
225 
226  if ((maxSeeds_ > 0) && (output.size() > size_t(maxSeeds_))) {
227  edm::LogError("TooManySeeds") << "Found too many seeds, bailing out.\n";
228  output.clear();
229  return false;
230  }
231 
232  } else
233  edm::LogWarning("CosmicSeedFinder") << " SeedForCosmics first update failed ";
234  } else
235  edm::LogWarning("CosmicSeedFinder") << " SeedForCosmics first propagation failed ";
236 
237  } else {
239  outer, (outer - inner) * (seedpt / (outer - inner).mag()), predsign, &(*magfield));
241  LogDebug("CosmicSeedFinder") << " FirstTSOS " << CosmicSeed;
242  //First propagation
243  const TSOS outerState = thePropagatorAl->propagate(
244  CosmicSeed, tracker->idToDet((*(HitPairs[is].outer())).geographicalId())->surface());
245  if (outerState.isValid()) {
246  LogDebug("CosmicSeedFinder") << "outerState " << outerState;
247  const TSOS outerUpdated = theUpdator->update(outerState, *outrhit);
248  if (outerUpdated.isValid()) {
249  LogDebug("CosmicSeedFinder") << "outerUpdated " << outerUpdated;
250 
252  outerUpdated, (*(HitPairs[is].outer())).geographicalId().rawId());
253 
254  output.push_back(TrajectorySeed(PTraj, hits, oppositeToMomentum));
255 
256  if ((maxSeeds_ > 0) && (output.size() > size_t(maxSeeds_))) {
257  edm::LogError("TooManySeeds") << "Found too many seeds, bailing out.\n";
258  output.clear();
259  return false;
260  }
261 
262  } else
263  edm::LogWarning("CosmicSeedFinder") << " SeedForCosmics first update failed ";
264  } else
265  edm::LogWarning("CosmicSeedFinder") << " SeedForCosmics first propagation failed ";
266  }
267  }
268  }
269  return true;
270 }

References alongMomentum, clone(), HitPairs, hfClusterShapes_cfi::hits, HitTriplets, mps_fire::i, TrackerGeometry::idToDet(), SurfaceOrientation::inner, edm::isNotFinite(), TrajectoryStateOnSurface::isValid(), LogDebug, mag(), magfield, maxSeeds_, negativeYOnly, MagneticField::nominalValue(), oppositeToMomentum, SurfaceOrientation::outer, convertSQLitetoXML_cfg::output, trajectoryStateTransform::persistentState(), positiveYOnly, PropagatorWithMaterial::propagate(), seedpt, OrderedHitPairs::size(), OrderedHitTriplets::size(), GeomDet::surface(), thePropagatorAl, thePropagatorOp, theUpdator, Surface::toGlobal(), tracker, KFUpdator::update(), and PV3DBase< T, PVType, FrameType >::x().

Referenced by run().

Member Data Documentation

◆ builderName

std::string SeedGeneratorForCosmics::builderName
private

Definition at line 51 of file SeedGeneratorForCosmics.h.

Referenced by init(), and SeedGeneratorForCosmics().

◆ geometry

std::string SeedGeneratorForCosmics::geometry
private

Definition at line 52 of file SeedGeneratorForCosmics.h.

◆ HitPairs

OrderedHitPairs SeedGeneratorForCosmics::HitPairs
private

Definition at line 55 of file SeedGeneratorForCosmics.h.

Referenced by init(), and seeds().

◆ hitsforseeds

std::string SeedGeneratorForCosmics::hitsforseeds
private

Definition at line 53 of file SeedGeneratorForCosmics.h.

Referenced by init(), and SeedGeneratorForCosmics().

◆ HitTriplets

OrderedHitTriplets SeedGeneratorForCosmics::HitTriplets
private

Definition at line 56 of file SeedGeneratorForCosmics.h.

Referenced by init(), and seeds().

◆ magfield

edm::ESHandle<MagneticField> SeedGeneratorForCosmics::magfield
private

Definition at line 44 of file SeedGeneratorForCosmics.h.

Referenced by init(), and seeds().

◆ maxSeeds_

int32_t SeedGeneratorForCosmics::maxSeeds_
private

Definition at line 40 of file SeedGeneratorForCosmics.h.

Referenced by seeds().

◆ negativeYOnly

bool SeedGeneratorForCosmics::negativeYOnly
private

Definition at line 60 of file SeedGeneratorForCosmics.h.

Referenced by SeedGeneratorForCosmics(), and seeds().

◆ positiveYOnly

bool SeedGeneratorForCosmics::positiveYOnly
private

Definition at line 59 of file SeedGeneratorForCosmics.h.

Referenced by SeedGeneratorForCosmics(), and seeds().

◆ region

GlobalTrackingRegion SeedGeneratorForCosmics::region
private

Definition at line 41 of file SeedGeneratorForCosmics.h.

Referenced by init(), run(), and SeedGeneratorForCosmics().

◆ seedpt

float SeedGeneratorForCosmics::seedpt
private

Definition at line 54 of file SeedGeneratorForCosmics.h.

Referenced by SeedGeneratorForCosmics(), and seeds().

◆ thePairGenerator

CosmicHitPairGenerator* SeedGeneratorForCosmics::thePairGenerator
private

Definition at line 42 of file SeedGeneratorForCosmics.h.

Referenced by init(), and run().

◆ thePropagatorAl

PropagatorWithMaterial* SeedGeneratorForCosmics::thePropagatorAl
private

Definition at line 48 of file SeedGeneratorForCosmics.h.

Referenced by init(), run(), and seeds().

◆ thePropagatorOp

PropagatorWithMaterial* SeedGeneratorForCosmics::thePropagatorOp
private

Definition at line 49 of file SeedGeneratorForCosmics.h.

Referenced by init(), run(), and seeds().

◆ theTripletGenerator

CosmicHitTripletGenerator* SeedGeneratorForCosmics::theTripletGenerator
private

Definition at line 43 of file SeedGeneratorForCosmics.h.

Referenced by init(), and run().

◆ theUpdator

KFUpdator* SeedGeneratorForCosmics::theUpdator
private

Definition at line 47 of file SeedGeneratorForCosmics.h.

Referenced by init(), run(), and seeds().

◆ tracker

edm::ESHandle<TrackerGeometry> SeedGeneratorForCosmics::tracker
private

Definition at line 45 of file SeedGeneratorForCosmics.h.

Referenced by init(), and seeds().

◆ TTTRHBuilder

const TransientTrackingRecHitBuilder* SeedGeneratorForCosmics::TTTRHBuilder
private

Definition at line 50 of file SeedGeneratorForCosmics.h.

Referenced by init().

Vector3DBase
Definition: Vector3DBase.h:8
TrackerGeometry::idToDet
const TrackerGeomDet * idToDet(DetId) const override
Definition: TrackerGeometry.cc:193
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
SeedGeneratorForCosmics::magfield
edm::ESHandle< MagneticField > magfield
Definition: SeedGeneratorForCosmics.h:44
KFUpdator::update
TrajectoryStateOnSurface update(const TrajectoryStateOnSurface &, const TrackingRecHit &) const override
Definition: KFUpdator.cc:177
mps_fire.i
i
Definition: mps_fire.py:428
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
PropagatorWithMaterial::propagate
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
Definition: Propagator.h:50
edm::isNotFinite
constexpr bool isNotFinite(T x)
Definition: isFinite.h:9
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
FastHelix
Definition: FastHelix.h:26
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:72
SeedGeneratorForCosmics::tracker
edm::ESHandle< TrackerGeometry > tracker
Definition: SeedGeneratorForCosmics.h:45
trajectoryStateTransform::persistentState
PTrajectoryStateOnDet persistentState(const TrajectoryStateOnSurface &ts, unsigned int detid)
Definition: TrajectoryStateTransform.cc:14
geometry
Definition: geometry.py:1
SeedingHitSet::ConstRecHitPointer
BaseTrackerRecHit const * ConstRecHitPointer
Definition: SeedingHitSet.h:10
TransientRecHitRecord
Definition: TransientRecHitRecord.h:14
oppositeToMomentum
Definition: PropagationDirection.h:4
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
CosmicLayerTriplets
Definition: CosmicLayerTriplets.h:24
GlobalTrackingRegion
Definition: GlobalTrackingRegion.h:13
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
AlgebraicMatrixID
ROOT::Math::SMatrixIdentity AlgebraicMatrixID
Definition: AlgebraicROOTObjects.h:72
SeedGeneratorForCosmics::thePairGenerator
CosmicHitPairGenerator * thePairGenerator
Definition: SeedGeneratorForCosmics.h:42
IdealMagneticFieldRecord
Definition: IdealMagneticFieldRecord.h:11
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
PropagatorWithMaterial
Definition: PropagatorWithMaterial.h:25
SeedGeneratorForCosmics::thePropagatorAl
PropagatorWithMaterial * thePropagatorAl
Definition: SeedGeneratorForCosmics.h:48
SeedGeneratorForCosmics::region
GlobalTrackingRegion region
Definition: SeedGeneratorForCosmics.h:41
CurvilinearTrajectoryError
Definition: CurvilinearTrajectoryError.h:27
SeedGeneratorForCosmics::HitTriplets
OrderedHitTriplets HitTriplets
Definition: SeedGeneratorForCosmics.h:56
SeedGeneratorForCosmics::thePropagatorOp
PropagatorWithMaterial * thePropagatorOp
Definition: SeedGeneratorForCosmics.h:49
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
SeedGeneratorForCosmics::theTripletGenerator
CosmicHitTripletGenerator * theTripletGenerator
Definition: SeedGeneratorForCosmics.h:43
SurfaceOrientation::inner
Definition: Surface.h:19
SeedGeneratorForCosmics::positiveYOnly
bool positiveYOnly
Definition: SeedGeneratorForCosmics.h:59
TrackerDigiGeometryRecord
Definition: TrackerDigiGeometryRecord.h:16
Surface::toGlobal
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
edm::ESHandle< TransientTrackingRecHitBuilder >
MagneticField::nominalValue
int nominalValue() const
The nominal field value for this map in kGauss.
Definition: MagneticField.h:49
GlobalTrajectoryParameters
Definition: GlobalTrajectoryParameters.h:15
Point3DBase< float, GlobalTag >
SeedGeneratorForCosmics::negativeYOnly
bool negativeYOnly
Definition: SeedGeneratorForCosmics.h:60
SeedGeneratorForCosmics::seeds
bool seeds(TrajectorySeedCollection &output, const edm::EventSetup &c, const TrackingRegion &region)
Definition: SeedGeneratorForCosmics.cc:75
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:233
SeedGeneratorForCosmics::hitsforseeds
std::string hitsforseeds
Definition: SeedGeneratorForCosmics.h:53
SeedGeneratorForCosmics::builderName
std::string builderName
Definition: SeedGeneratorForCosmics.h:51
SeedGeneratorForCosmics::maxSeeds_
int32_t maxSeeds_
Definition: SeedGeneratorForCosmics.h:40
CosmicLayerTriplets::init
void init(const SiStripRecHit2DCollection &collstereo, const SiStripRecHit2DCollection &collrphi, const SiStripMatchedRecHit2DCollection &collmatched, std::string geometry, const edm::EventSetup &iSetup)
Definition: CosmicLayerTriplets.cc:56
OrderedHitTriplets::size
unsigned int size() const override
Definition: OrderedHitTriplets.h:13
CosmicLayerPairs
Definition: CosmicLayerPairs.h:19
SeedGeneratorForCosmics::theUpdator
KFUpdator * theUpdator
Definition: SeedGeneratorForCosmics.h:47
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
get
#define get
SeedGeneratorForCosmics::seedpt
float seedpt
Definition: SeedGeneratorForCosmics.h:54
CosmicHitTripletGenerator::hitTriplets
void hitTriplets(const TrackingRegion &reg, OrderedHitTriplets &prs, const edm::EventSetup &iSetup)
Definition: CosmicHitTripletGenerator.cc:34
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition: Basic3DVectorLD.h:127
CosmicHitTripletGenerator
Definition: CosmicHitTripletGenerator.h:19
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
CosmicHitPairGenerator
Definition: CosmicHitPairGenerator.h:17
SeedGeneratorForCosmics::HitPairs
OrderedHitPairs HitPairs
Definition: SeedGeneratorForCosmics.h:55
ptmin
double ptmin
Definition: HydjetWrapper.h:84
TrajectorySeed
Definition: TrajectorySeed.h:18
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
OrderedHitPairs::size
unsigned int size() const override
Definition: OrderedHitPairs.h:12
PTrajectoryStateOnDet
Definition: PTrajectoryStateOnDet.h:10
SurfaceOrientation::outer
Definition: Surface.h:19
AlgebraicSymMatrix55
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
Definition: AlgebraicROOTObjects.h:23
alongMomentum
Definition: PropagationDirection.h:4
CosmicHitPairGenerator::hitPairs
void hitPairs(const TrackingRegion &reg, OrderedHitPairs &prs, const edm::EventSetup &iSetup)
form base class
Definition: CosmicHitPairGenerator.cc:25
KFUpdator
Definition: KFUpdator.h:32
TrajectoryStateOnSurface::isValid
bool isValid() const
Definition: TrajectoryStateOnSurface.h:54
hit
Definition: SiStripHitEffFromCalibTree.cc:88
edm::OwnVector< TrackingRecHit >
SeedGeneratorForCosmics::TTTRHBuilder
const TransientTrackingRecHitBuilder * TTTRHBuilder
Definition: SeedGeneratorForCosmics.h:50