CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros 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::auto_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 46 of file NuclearInteractionFinder.h.

Member Typedef Documentation

Definition at line 53 of file NuclearInteractionFinder.h.

Definition at line 50 of file NuclearInteractionFinder.h.

Definition at line 51 of file NuclearInteractionFinder.h.

Definition at line 52 of file NuclearInteractionFinder.h.

Definition at line 49 of file NuclearInteractionFinder.h.

Constructor & Destructor Documentation

NuclearInteractionFinder::NuclearInteractionFinder ( )
inline

Definition at line 70 of file NuclearInteractionFinder.h.

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

Definition at line 20 of file NuclearInteractionFinder.cc.

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

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

Definition at line 64 of file NuclearInteractionFinder.cc.

References currentSeed, nuclTester, and thePrimaryHelix.

64  {
65  delete nuclTester;
66  delete currentSeed;
67  delete thePrimaryHelix;
68 }
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 i, RecoTauCleanerPlugins::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 }
int i
Definition: DBlmapReader.cc:9
void NuclearInteractionFinder::fillSeeds ( const std::pair< TrajectoryMeasurement, std::vector< TrajectoryMeasurement > > &  tmPairs)
private

get the seeds at the interaction point

Definition at line 196 of file NuclearInteractionFinder.cc.

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

Referenced by run().

196  {
197  // This method returns the seeds calculated by the class SeedsFromNuclearInteraction
198 
199  const TM& innerTM = tmPairs.first;
200  const std::vector<TM>& outerTMs = tmPairs.second;
201 
202  // Loop on all outer TM
203  for(std::vector<TM>::const_iterator outtm = outerTMs.begin(); outtm!=outerTMs.end(); outtm++) {
204  if((innerTM.recHit())->isValid() && (outtm->recHit())->isValid()) {
205  currentSeed->setMeasurements(innerTM.updatedState(), innerTM.recHit(), outtm->recHit());
206  allSeeds.push_back(*currentSeed);
207  }
208  else LogDebug("NuclearSeedGenerator") << "The initial hits for seeding are invalid" << "\n";
209  }
210  return;
211 }
#define LogDebug(id)
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
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 143 of file NuclearInteractionFinder.cc.

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

Referenced by run().

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

Definition at line 153 of file NuclearInteractionFinder.cc.

References alongMomentum, GeometricSearchTracker::detLayer(), TrajectoryStateOnSurface::freeState(), LogDebug, LayerMeasurements::measurements(), DetLayer::nextLayers(), query::result, python.multivaluedict::sort(), theEstimator, theGeomSearchTracker, thePropagator, and tmp.

Referenced by findCompatibleMeasurements(), and improveSeeds().

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

Fill 'output' with persistent nuclear seeds.

Definition at line 213 of file NuclearInteractionFinder.cc.

References allSeeds, LogDebug, and convertSQLitetoXML_cfg::output.

213  {
214  std::auto_ptr<TrajectorySeedCollection> output(new TrajectorySeedCollection);
215  for(std::vector<SeedFromNuclearInteraction>::const_iterator it_seed = allSeeds.begin(); it_seed != allSeeds.end(); it_seed++) {
216  if(it_seed->isValid()) {
217  output->push_back( it_seed->TrajSeed() );
218  }
219  else LogDebug("NuclearSeedGenerator") << "The seed is invalid" << "\n";
220  }
221  return output;
222 }
#define LogDebug(id)
std::vector< TrajectorySeed > TrajectorySeedCollection
std::vector< SeedFromNuclearInteraction > allSeeds
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(); it_seed++) {
231 
232  if( !it_seed->isValid() ) continue;
233 
234  // find compatible TM in an outer layer
235  std::vector<TM> thirdTMs = findMeasurementsFromTSOS( it_seed->updatedTSOS() , it_seed->outerHitDetId(), layerMeasurements );
236 
237  // loop on those new TMs
238  for(std::vector<TM>::const_iterator tm = thirdTMs.begin(); tm!= thirdTMs.end(); tm++) {
239 
240  if( ! tm->recHit()->isValid() ) continue;
241 
242  // create new seeds collection using the circle equation
243  currentSeed->setMeasurements(*thePrimaryHelix, it_seed->initialTSOS(), it_seed->outerHit(), tm->recHit() );
244  newSeedCollection.push_back( *currentSeed );
245  }
246  }
247  allSeeds.clear();
248  allSeeds = newSeedCollection;
249 }
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...
std::vector< SeedFromNuclearInteraction > allSeeds
const MeasurementTracker * theMeasurementTracker
SeedFromNuclearInteraction * currentSeed
const NavigationSchool* NuclearInteractionFinder::nav ( ) const
inline

Definition at line 87 of file NuclearInteractionFinder.h.

References theNavigationSchool.

Referenced by NuclearInteractionFinder().

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

Definition at line 251 of file NuclearInteractionFinder.cc.

References TrajectoryStateOnSurface::globalParameters(), TrajectoryStateOnSurface::localError(), TrajectoryStateOnSurface::localParameters(), m, GlobalTrajectoryParameters::magneticField(), LocalTrajectoryError::matrix(), LocalTrajectoryParameters::signedInverseMomentum(), TrajectoryStateOnSurface::surface(), and TrajectoryStateOnSurface::surfaceSide().

Referenced by findCompatibleMeasurements().

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

Run the Finder.

Definition at line 71 of file NuclearInteractionFinder.cc.

References allSeeds, alongMomentum, NuclearTester::back(), checkCompletedTrack, NuclearTester::compatibleHits(), definePrimaryHelix(), Trajectory::direction(), Trajectory::empty(), fillSeeds(), findCompatibleMeasurements(), Trajectory::foundHits(), prof2calltree::front, 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.

71  {
72 
73  if(traj.empty() || !traj.isValid()) return false;
74 
75  LogDebug("NuclearSeedGenerator") << "Analyzis of a new trajectory with a number of valid hits = " << traj.foundHits();
76 
77  std::vector<TrajectoryMeasurement> measurements = traj.measurements();
78 
79  // initialization
80  nuclTester->reset( measurements.size() );
81  allSeeds.clear();
82 
83  LayerMeasurements layerMeasurements(*theMeasurementTracker, event);
84 
85  if(traj.direction()==alongMomentum) {
86  std::reverse(measurements.begin(), measurements.end());
87  }
88 
89  std::vector<TrajectoryMeasurement>::const_iterator it_meas = measurements.begin();
90 
91  std::vector<double> ncompatibleHits;
92  bool NIfound = false;
93 
94  // Loop on all the RecHits.
95  while(!NIfound)
96  {
97  if(it_meas == measurements.end()) break;
98 
99  // check only the maxHits outermost hits of the primary track
100  if(nuclTester->nHitsChecked() > maxHits) break;
101 
102  nuclTester->push_back(*it_meas, findCompatibleMeasurements(*it_meas, rescaleErrorFactor, layerMeasurements));
103 
104  LogDebug("NuclearSeedGenerator") << "Number of compatible meas:" << (nuclTester->back()).size() << "\n"
105  << "Mean distance between hits :" << nuclTester->meanHitDistance() << "\n"
106  << "Forward estimate :" << nuclTester->fwdEstimate() << "\n";
107 
108  // don't check tracks which reach the end of the tracker if checkCompletedTrack==false
109  if( checkCompletedTrack==false && (nuclTester->compatibleHits()).front()==0 ) break;
110 
111  if(nuclTester->isNuclearInteraction()) 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 }
#define LogDebug(id)
bool empty() const
True if trajectory has no measurements.
Definition: Trajectory.h:246
int foundHits() const
Definition: Trajectory.h:236
std::vector< int > compatibleHits() const
Definition: NuclearTester.h:61
const TMContainer & back() const
Definition: NuclearTester.h:43
double fwdEstimate(const std::vector< TrajectoryMeasurement > &vecTM) const
int nuclearIndex() const
Definition: NuclearTester.h:55
PropagationDirection const & direction() const
Definition: Trajectory.cc:196
bool isNuclearInteraction()
DataContainer const & measurements() const
Definition: Trajectory.h:215
void push_back(const TM &init_tm, const TMContainer &vecTM)
Definition: NuclearTester.h:38
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
std::vector< SeedFromNuclearInteraction > allSeeds
void reset(unsigned int nMeasurements)
Definition: NuclearTester.h:49
const MeasurementTracker * theMeasurementTracker
bool isValid() const
Definition: Trajectory.h:271
void fillSeeds(const std::pair< TrajectoryMeasurement, std::vector< TrajectoryMeasurement > > &tmPairs)
get the seeds at the interaction point
unsigned int nHitsChecked() const
Definition: NuclearTester.h:59
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:57
tuple size
Write out results.

Member Data Documentation

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

Definition at line 100 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 107 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder(), and run().

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

Definition at line 105 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder(), and run().

std::string NuclearInteractionFinder::navigationSchoolName
private

Definition at line 108 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder().

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

Definition at line 104 of file NuclearInteractionFinder.h.

double NuclearInteractionFinder::rescaleErrorFactor
private

Definition at line 106 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 96 of file NuclearInteractionFinder.h.

Referenced by NuclearInteractionFinder().

const MeasurementTracker* NuclearInteractionFinder::theMeasurementTracker
private

Definition at line 93 of file NuclearInteractionFinder.h.

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

const NavigationSchool* NuclearInteractionFinder::theNavigationSchool
private

Definition at line 95 of file NuclearInteractionFinder.h.

Referenced by nav(), and NuclearInteractionFinder().

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