CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
NuclearInteractionFinder Class Reference

Class used to obtain vector of all compatible TMs associated to a trajectory to be used by the NuclearTester. More...

#include <NuclearInteractionFinder.h>

Public Member Functions

std::unique_ptr
< TrajectorySeedCollection
getPersistentSeeds ()
 Fill 'output' with persistent nuclear seeds. More...
 
void improveSeeds (const MeasurementTrackerEvent &event)
 Improve the seeds with a third RecHit. More...
 
const NavigationSchoolnav () const
 
 NuclearInteractionFinder ()
 
 NuclearInteractionFinder (const edm::EventSetup &es, const edm::ParameterSet &iConfig)
 
TrajectoryStateOnSurface rescaleError (float rescale, const TSOS &state) const
 
bool run (const Trajectory &traj, const MeasurementTrackerEvent &event)
 Run the Finder. More...
 
virtual ~NuclearInteractionFinder ()
 

Private Types

typedef
TrajectoryMeasurement::ConstRecHitPointer 
ConstRecHitPointer
 
typedef FreeTrajectoryState FTS
 
typedef TrajectoryMeasurement TM
 
typedef std::vector< TrajectoryTrajectoryContainer
 
typedef TrajectoryStateOnSurface TSOS
 

Private Member Functions

void definePrimaryHelix (std::vector< TrajectoryMeasurement >::const_iterator it_meas)
 Calculate the parameters of the circle representing the primary track at the interaction point. More...
 
void fillSeeds (const std::pair< TrajectoryMeasurement, std::vector< TrajectoryMeasurement > > &tmPairs)
 get the seeds at the interaction point More...
 
std::vector
< TrajectoryMeasurement
findCompatibleMeasurements (const TM &lastMeas, double rescaleFactor, const LayerMeasurements &layerMeasurements) const
 Find compatible TM of a TM with error rescaled by rescaleFactor. More...
 
std::vector
< TrajectoryMeasurement
findMeasurementsFromTSOS (const TSOS &currentState, DetId detid, const LayerMeasurements &layerMeasurements) const
 

Private Attributes

std::vector
< SeedFromNuclearInteraction
allSeeds
 
bool checkCompletedTrack
 
SeedFromNuclearInteractioncurrentSeed
 
unsigned int maxHits
 
std::string navigationSchoolName
 
NuclearTesternuclTester
 
double ptMin
 
double rescaleErrorFactor
 
const MeasurementEstimatortheEstimator
 
const GeometricSearchTrackertheGeomSearchTracker
 
edm::ESHandle< MagneticFieldtheMagField
 
const MeasurementTrackertheMeasurementTracker
 
const NavigationSchooltheNavigationSchool
 
TangentHelixthePrimaryHelix
 
const PropagatorthePropagator
 

Detailed Description

Class used to obtain vector of all compatible TMs associated to a trajectory to be used by the NuclearTester.

The method run gets all compatible TMs of all TMs associated of a trajectory. Then it uses the NuclearTester class to decide whether the trajectory has interacted nuclearly or not. It finally returns a pair of the TM where the nuclear interaction occurs and all compatible TMs associated.

Definition at line 41 of file NuclearInteractionFinder.h.

Member Typedef Documentation

Definition at line 47 of file NuclearInteractionFinder.h.

Definition at line 44 of file NuclearInteractionFinder.h.

Definition at line 45 of file NuclearInteractionFinder.h.

Definition at line 46 of file NuclearInteractionFinder.h.

Definition at line 43 of file NuclearInteractionFinder.h.

Constructor & Destructor Documentation

NuclearInteractionFinder::NuclearInteractionFinder ( )
inline

Definition at line 65 of file NuclearInteractionFinder.h.

65 {}
NuclearInteractionFinder::NuclearInteractionFinder ( const edm::EventSetup es,
const edm::ParameterSet iConfig 
)

Definition at line 19 of file NuclearInteractionFinder.cc.

References checkCompletedTrack, currentSeed, edm::EventSetup::get(), edm::ParameterSet::getParameter(), iConfig, LogDebug, maxHits, nav(), navigationSchoolName, nuclTester, edm::ESHandle< class >::product(), rescaleErrorFactor, AlCaHLTBitMon_QueryRunRegistry::string, theEstimator, theGeomSearchTracker, theMagField, theMeasurementTracker, theNavigationSchool, thePrimaryHelix, and thePropagator.

20  : maxHits(iConfig.getParameter<int>("maxHits")),
21  rescaleErrorFactor(iConfig.getParameter<double>("rescaleErrorFactor")),
22  checkCompletedTrack(iConfig.getParameter<bool>("checkCompletedTrack")),
23  navigationSchoolName(iConfig.getParameter<std::string>("NavigationSchool")) {
24  std::string measurementTrackerName = iConfig.getParameter<std::string>("MeasurementTrackerName");
25 
29  edm::ESHandle<MeasurementTracker> measurementTrackerHandle;
30  edm::ESHandle<GeometricSearchTracker> theGeomSearchTrackerHandle;
31  edm::ESHandle<TrackerGeometry> theTrackerGeom;
32 
33  es.get<TrackerDigiGeometryRecord>().get(theTrackerGeom);
34  es.get<TrackingComponentsRecord>().get("PropagatorWithMaterial", prop);
35  es.get<TrackingComponentsRecord>().get("Chi2", est);
36  es.get<CkfComponentsRecord>().get(measurementTrackerName, measurementTrackerHandle);
37  es.get<TrackerRecoGeometryRecord>().get(theGeomSearchTrackerHandle);
39 
43 
44  thePropagator = prop.product();
45  theEstimator = est.product();
46  theMeasurementTracker = measurementTrackerHandle.product();
47  theGeomSearchTracker = theGeomSearchTrackerHandle.product();
48 
49  LogDebug("NuclearSeedGenerator") << "New NuclearInteractionFinder instance with parameters : \n"
50  << "maxHits : " << maxHits << "\n"
51  << "rescaleErrorFactor : " << rescaleErrorFactor << "\n"
52  << "checkCompletedTrack : " << checkCompletedTrack << "\n";
53 
54  nuclTester = new NuclearTester(maxHits, theEstimator, theTrackerGeom.product());
55 
57 
59 }
const NavigationSchool * nav() const
const MeasurementTracker * theMeasurementTracker
const NavigationSchool * theNavigationSchool
const MeasurementEstimator * theEstimator
edm::ESHandle< MagneticField > theMagField
T const * product() const
Definition: ESHandle.h:86
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
const GeometricSearchTracker * theGeomSearchTracker
T get() const
Definition: EventSetup.h:88
Class used to test if a track has interacted nuclearly.
Definition: NuclearTester.h:16
SeedFromNuclearInteraction * currentSeed
#define LogDebug(id)
NuclearInteractionFinder::~NuclearInteractionFinder ( )
virtual

Definition at line 61 of file NuclearInteractionFinder.cc.

References currentSeed, nuclTester, and thePrimaryHelix.

61  {
62  delete nuclTester;
63  delete currentSeed;
64  delete thePrimaryHelix;
65 }
SeedFromNuclearInteraction * currentSeed

Member Function Documentation

void NuclearInteractionFinder::definePrimaryHelix ( std::vector< TrajectoryMeasurement >::const_iterator  it_meas)
private

Calculate the parameters of the circle representing the primary track at the interaction point.

Definition at line 130 of file NuclearInteractionFinder.cc.

References mps_fire::i, DiDispStaMuonMonitor_cfi::pt, and thePrimaryHelix.

Referenced by run().

130  {
131  // This method uses the 3 last TM after the interaction point to calculate the helix parameters
132 
133  GlobalPoint pt[3];
134  for (int i = 0; i < 3; i++) {
135  pt[i] = (it_meas->updatedState()).globalParameters().position();
136  it_meas++;
137  }
138  delete thePrimaryHelix;
139  thePrimaryHelix = new TangentHelix(pt[0], pt[1], pt[2]);
140 }
void NuclearInteractionFinder::fillSeeds ( const std::pair< TrajectoryMeasurement, std::vector< TrajectoryMeasurement > > &  tmPairs)
private

get the seeds at the interaction point

Definition at line 192 of file NuclearInteractionFinder.cc.

References allSeeds, currentSeed, sistrip::SpyUtilities::isValid(), LogDebug, TrajectoryMeasurement::recHit(), SeedFromNuclearInteraction::setMeasurements(), and TrajectoryMeasurement::updatedState().

Referenced by run().

193  {
194  // This method returns the seeds calculated by the class SeedsFromNuclearInteraction
195 
196  const TM& innerTM = tmPairs.first;
197  const std::vector<TM>& outerTMs = tmPairs.second;
198 
199  // Loop on all outer TM
200  for (std::vector<TM>::const_iterator outtm = outerTMs.begin(); outtm != outerTMs.end(); outtm++) {
201  if ((innerTM.recHit())->isValid() && (outtm->recHit())->isValid()) {
202  currentSeed->setMeasurements(innerTM.updatedState(), innerTM.recHit(), outtm->recHit());
203  allSeeds.push_back(*currentSeed);
204  } else
205  LogDebug("NuclearSeedGenerator") << "The initial hits for seeding are invalid"
206  << "\n";
207  }
208  return;
209 }
const bool isValid(const Frame &aFrame, const FrameQuality &aQuality, const uint16_t aExpectedPos)
void setMeasurements(const TSOS &tsosAtInteractionPoint, ConstRecHitPointer ihit, ConstRecHitPointer ohit)
Fill all data members from 2 TM&#39;s where the first one is supposed to be at the interaction point...
std::vector< SeedFromNuclearInteraction > allSeeds
SeedFromNuclearInteraction * currentSeed
#define LogDebug(id)
std::vector< TrajectoryMeasurement > NuclearInteractionFinder::findCompatibleMeasurements ( const TM lastMeas,
double  rescaleFactor,
const LayerMeasurements layerMeasurements 
) const
private

Find compatible TM of a TM with error rescaled by rescaleFactor.

Definition at line 142 of file NuclearInteractionFinder.cc.

References findMeasurementsFromTSOS(), LogDebug, TrajectoryMeasurement::recHit(), rescaleError(), and TrajectoryMeasurement::updatedState().

Referenced by run().

143  {
144  const TSOS& currentState = lastMeas.updatedState();
145  LogDebug("NuclearSeedGenerator") << "currentState :" << currentState << "\n";
146 
147  TSOS newState = rescaleError(rescale, currentState);
148  return findMeasurementsFromTSOS(newState, lastMeas.recHit()->geographicalId(), layerMeasurements);
149 }
std::vector< TrajectoryMeasurement > findMeasurementsFromTSOS(const TSOS &currentState, DetId detid, const LayerMeasurements &layerMeasurements) const
TrajectoryStateOnSurface rescaleError(float rescale, const TSOS &state) const
#define LogDebug(id)
std::vector< TrajectoryMeasurement > NuclearInteractionFinder::findMeasurementsFromTSOS ( const TSOS currentState,
DetId  detid,
const LayerMeasurements layerMeasurements 
) const
private

Definition at line 151 of file NuclearInteractionFinder.cc.

References alongMomentum, GeometricSearchTracker::detLayer(), TrajectoryStateOnSurface::freeState(), LogDebug, LayerMeasurements::measurements(), NavigationSchool::nextLayers(), mps_fire::result, theEstimator, theGeomSearchTracker, theNavigationSchool, thePropagator, and createJobs::tmp.

Referenced by findCompatibleMeasurements(), and improveSeeds().

152  {
153  using namespace std;
154  int invalidHits = 0;
155  vector<TM> result;
156  const DetLayer* lastLayer = theGeomSearchTracker->detLayer(detid);
157  vector<const DetLayer*> nl;
158 
159  if (lastLayer) {
160  nl = theNavigationSchool->nextLayers(*lastLayer, *currentState.freeState(), alongMomentum);
161  } else {
162  edm::LogError("NuclearInteractionFinder") << "In findCompatibleMeasurements : lastLayer not accessible";
163  return result;
164  }
165 
166  if (nl.empty()) {
167  LogDebug("NuclearSeedGenerator") << "In findCompatibleMeasurements : no compatible layer found";
168  return result;
169  }
170 
171  for (vector<const DetLayer*>::iterator il = nl.begin(); il != nl.end(); il++) {
172  vector<TM> tmp = layerMeasurements.measurements((**il), currentState, *thePropagator, *theEstimator);
173  if (!tmp.empty()) {
174  if (result.empty())
175  result = tmp;
176  else {
177  // keep one dummy TM at the end, skip the others
178  result.insert(result.end() - invalidHits, tmp.begin(), tmp.end());
179  }
180  invalidHits++;
181  }
182  }
183 
184  // sort the final result, keep dummy measurements at the end
185  if (result.size() > 1) {
186  sort(result.begin(), result.end() - invalidHits, TrajMeasLessEstim());
187  }
188  return result;
189 }
std::vector< TrajectoryMeasurement > measurements(const DetLayer &layer, const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
Log< level::Error, false > LogError
tuple result
Definition: mps_fire.py:311
FreeTrajectoryState const * freeState(bool withErrors=true) const
const DetLayer * detLayer(const DetId &id) const
obsolete method. Use idToLayer() instead.
const NavigationSchool * theNavigationSchool
const MeasurementEstimator * theEstimator
std::vector< const DetLayer * > nextLayers(const DetLayer &detLayer, Args &&...args) const
const GeometricSearchTracker * theGeomSearchTracker
tmp
align.sh
Definition: createJobs.py:716
#define LogDebug(id)
std::unique_ptr< TrajectorySeedCollection > NuclearInteractionFinder::getPersistentSeeds ( )

Fill 'output' with persistent nuclear seeds.

Definition at line 211 of file NuclearInteractionFinder.cc.

References allSeeds, LogDebug, and convertSQLitetoXML_cfg::output.

211  {
212  auto output = std::make_unique<TrajectorySeedCollection>();
213  for (std::vector<SeedFromNuclearInteraction>::const_iterator it_seed = allSeeds.begin(); it_seed != allSeeds.end();
214  it_seed++) {
215  if (it_seed->isValid()) {
216  output->push_back(it_seed->TrajSeed());
217  } else
218  LogDebug("NuclearSeedGenerator") << "The seed is invalid"
219  << "\n";
220  }
221  return output;
222 }
std::vector< SeedFromNuclearInteraction > allSeeds
#define LogDebug(id)
void NuclearInteractionFinder::improveSeeds ( const MeasurementTrackerEvent event)

Improve the seeds with a third RecHit.

Definition at line 224 of file NuclearInteractionFinder.cc.

References allSeeds, currentSeed, findMeasurementsFromTSOS(), SeedFromNuclearInteraction::setMeasurements(), theMeasurementTracker, and thePrimaryHelix.

224  {
225  std::vector<SeedFromNuclearInteraction> newSeedCollection;
226 
227  LayerMeasurements layerMeasurements(*theMeasurementTracker, event);
228 
229  // loop on all actual seeds
230  for (std::vector<SeedFromNuclearInteraction>::const_iterator it_seed = allSeeds.begin(); it_seed != allSeeds.end();
231  it_seed++) {
232  if (!it_seed->isValid())
233  continue;
234 
235  // find compatible TM in an outer layer
236  std::vector<TM> thirdTMs =
237  findMeasurementsFromTSOS(it_seed->updatedTSOS(), it_seed->outerHitDetId(), layerMeasurements);
238 
239  // loop on those new TMs
240  for (std::vector<TM>::const_iterator tm = thirdTMs.begin(); tm != thirdTMs.end(); tm++) {
241  if (!tm->recHit()->isValid())
242  continue;
243 
244  // create new seeds collection using the circle equation
245  currentSeed->setMeasurements(*thePrimaryHelix, it_seed->initialTSOS(), it_seed->outerHit(), tm->recHit());
246  newSeedCollection.push_back(*currentSeed);
247  }
248  }
249  allSeeds.clear();
250  allSeeds = newSeedCollection;
251 }
std::vector< TrajectoryMeasurement > findMeasurementsFromTSOS(const TSOS &currentState, DetId detid, const LayerMeasurements &layerMeasurements) const
void setMeasurements(const TSOS &tsosAtInteractionPoint, ConstRecHitPointer ihit, ConstRecHitPointer ohit)
Fill all data members from 2 TM&#39;s where the first one is supposed to be at the interaction point...
const MeasurementTracker * theMeasurementTracker
std::vector< SeedFromNuclearInteraction > allSeeds
SeedFromNuclearInteraction * currentSeed
const NavigationSchool* NuclearInteractionFinder::nav ( ) const
inline

Definition at line 82 of file NuclearInteractionFinder.h.

References theNavigationSchool.

Referenced by NuclearInteractionFinder().

82 { return theNavigationSchool; }
const NavigationSchool * theNavigationSchool
TrajectoryStateOnSurface NuclearInteractionFinder::rescaleError ( float  rescale,
const TSOS state 
) const

Definition at line 253 of file NuclearInteractionFinder.cc.

References TrajectoryStateOnSurface::globalParameters(), TrajectoryStateOnSurface::localError(), TrajectoryStateOnSurface::localParameters(), visualization-live-secondInstance_cfg::m, GlobalTrajectoryParameters::magneticField(), LocalTrajectoryError::matrix(), HLTObjectMonitor_cfi::mr, LocalTrajectoryParameters::signedInverseMomentum(), TrajectoryStateOnSurface::surface(), and TrajectoryStateOnSurface::surfaceSide().

Referenced by findCompatibleMeasurements().

253  {
257 
258  // we assume that the error on q/p is equal to 20% of q/p * rescale
259  mr(0, 0) = (ltp.signedInverseMomentum() * 0.2 * rescale) * (ltp.signedInverseMomentum() * 0.2 * rescale);
260 
261  // the error on dx/z and dy/dz is fixed to 10% (* rescale)
262  mr(1, 1) = 1E-2 * rescale * rescale;
263  mr(2, 2) = 1E-2 * rescale * rescale;
264 
265  // the error on the local x and y positions are not modified.
266  mr(3, 3) = m(3, 3);
267  mr(4, 4) = m(4, 4);
268 
269  return TSOS(ltp, mr, state.surface(), &(state.globalParameters().magneticField()), state.surfaceSide());
270 }
const LocalTrajectoryParameters & localParameters() const
float signedInverseMomentum() const
Signed inverse momentum q/p (zero for neutrals).
const SurfaceType & surface() const
SurfaceSide surfaceSide() const
Position relative to material, defined relative to momentum vector.
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
const GlobalTrajectoryParameters & globalParameters() const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
TrajectoryStateOnSurface TSOS
const MagneticField & magneticField() const
bool NuclearInteractionFinder::run ( const Trajectory traj,
const MeasurementTrackerEvent event 
)

Run the Finder.

Definition at line 68 of file NuclearInteractionFinder.cc.

References allSeeds, alongMomentum, NuclearTester::back(), checkCompletedTrack, NuclearTester::compatibleHits(), definePrimaryHelix(), Trajectory::direction(), Trajectory::empty(), fillSeeds(), findCompatibleMeasurements(), Trajectory::foundHits(), NuclearTester::fwdEstimate(), NuclearTester::goodTMPair(), NuclearTester::isNuclearInteraction(), Trajectory::isValid(), LogDebug, maxHits, NuclearTester::meanHitDistance(), Trajectory::measurements(), NuclearTester::nHitsChecked(), NuclearTester::nuclearIndex(), nuclTester, NuclearTester::push_back(), rescaleErrorFactor, NuclearTester::reset(), findQualityFiles::size, and theMeasurementTracker.

68  {
69  if (traj.empty() || !traj.isValid())
70  return false;
71 
72  LogDebug("NuclearSeedGenerator") << "Analyzis of a new trajectory with a number of valid hits = " << traj.foundHits();
73 
74  std::vector<TrajectoryMeasurement> measurements = traj.measurements();
75 
76  // initialization
77  nuclTester->reset(measurements.size());
78  allSeeds.clear();
79 
80  LayerMeasurements layerMeasurements(*theMeasurementTracker, event);
81 
82  if (traj.direction() == alongMomentum) {
83  std::reverse(measurements.begin(), measurements.end());
84  }
85 
86  std::vector<TrajectoryMeasurement>::const_iterator it_meas = measurements.begin();
87 
88  std::vector<double> ncompatibleHits;
89  bool NIfound = false;
90 
91  // Loop on all the RecHits.
92  while (!NIfound) {
93  if (it_meas == measurements.end())
94  break;
95 
96  // check only the maxHits outermost hits of the primary track
98  break;
99 
100  nuclTester->push_back(*it_meas, findCompatibleMeasurements(*it_meas, rescaleErrorFactor, layerMeasurements));
101 
102  LogDebug("NuclearSeedGenerator") << "Number of compatible meas:" << (nuclTester->back()).size() << "\n"
103  << "Mean distance between hits :" << nuclTester->meanHitDistance() << "\n"
104  << "Forward estimate :" << nuclTester->fwdEstimate() << "\n";
105 
106  // don't check tracks which reach the end of the tracker if checkCompletedTrack==false
107  if (checkCompletedTrack == false && (nuclTester->compatibleHits()).front() == 0)
108  break;
109 
111  NIfound = true;
112 
113  ++it_meas;
114  }
115 
116  if (NIfound) {
117  LogDebug("NuclearSeedGenerator") << "NUCLEAR INTERACTION FOUND at index : " << nuclTester->nuclearIndex() << "\n";
118 
119  // Get correct parametrization of the helix of the primary track at the interaction point (to be used by improveCurrentSeed)
120  definePrimaryHelix(measurements.begin() + nuclTester->nuclearIndex() - 1);
121 
122  this->fillSeeds(nuclTester->goodTMPair());
123 
124  return true;
125  }
126 
127  return false;
128 }
bool empty() const
True if trajectory has no measurements.
Definition: Trajectory.h:233
int foundHits() const
Definition: Trajectory.h:206
std::vector< int > compatibleHits() const
Definition: NuclearTester.h:60
const TMContainer & back() const
Definition: NuclearTester.h:42
double fwdEstimate(const std::vector< TrajectoryMeasurement > &vecTM) const
int nuclearIndex() const
Definition: NuclearTester.h:54
PropagationDirection const & direction() const
Definition: Trajectory.cc:133
bool isNuclearInteraction()
DataContainer const & measurements() const
Definition: Trajectory.h:178
void push_back(const TM &init_tm, const TMContainer &vecTM)
Definition: NuclearTester.h:37
std::vector< TrajectoryMeasurement > findCompatibleMeasurements(const TM &lastMeas, double rescaleFactor, const LayerMeasurements &layerMeasurements) const
Find compatible TM of a TM with error rescaled by rescaleFactor.
double meanHitDistance(const std::vector< TrajectoryMeasurement > &vecTM) const
void reset(unsigned int nMeasurements)
Definition: NuclearTester.h:48
const MeasurementTracker * theMeasurementTracker
std::vector< SeedFromNuclearInteraction > allSeeds
bool isValid() const
Definition: Trajectory.h:257
void fillSeeds(const std::pair< TrajectoryMeasurement, std::vector< TrajectoryMeasurement > > &tmPairs)
get the seeds at the interaction point
unsigned int nHitsChecked() const
Definition: NuclearTester.h:58
void definePrimaryHelix(std::vector< TrajectoryMeasurement >::const_iterator it_meas)
Calculate the parameters of the circle representing the primary track at the interaction point...
const TMPair & goodTMPair() const
Definition: NuclearTester.h:56
tuple size
Write out results.
#define LogDebug(id)

Member Data Documentation

std::vector<SeedFromNuclearInteraction> NuclearInteractionFinder::allSeeds
private

Definition at line 94 of file NuclearInteractionFinder.h.

Referenced by fillSeeds(), getPersistentSeeds(), improveSeeds(), and run().

bool NuclearInteractionFinder::checkCompletedTrack
private

If set to true check all the tracks, even those reaching the edge of the tracker

Definition at line 101 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder(), and run().

SeedFromNuclearInteraction* NuclearInteractionFinder::currentSeed
private
unsigned int NuclearInteractionFinder::maxHits
private

Definition at line 99 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder(), and run().

std::string NuclearInteractionFinder::navigationSchoolName
private

Definition at line 102 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder().

NuclearTester* NuclearInteractionFinder::nuclTester
private
double NuclearInteractionFinder::ptMin
private

Definition at line 98 of file NuclearInteractionFinder.h.

double NuclearInteractionFinder::rescaleErrorFactor
private

Definition at line 100 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder(), and run().

const MeasurementEstimator* NuclearInteractionFinder::theEstimator
private
const GeometricSearchTracker* NuclearInteractionFinder::theGeomSearchTracker
private
edm::ESHandle<MagneticField> NuclearInteractionFinder::theMagField
private

Definition at line 90 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder().

const MeasurementTracker* NuclearInteractionFinder::theMeasurementTracker
private

Definition at line 87 of file NuclearInteractionFinder.h.

Referenced by improveSeeds(), NuclearInteractionFinder(), and run().

const NavigationSchool* NuclearInteractionFinder::theNavigationSchool
private
TangentHelix* NuclearInteractionFinder::thePrimaryHelix
private
const Propagator* NuclearInteractionFinder::thePropagator
private