Class used to obtain vector of all compatible TMs associated to a trajectory to be used by the NuclearTester. More...
#include <NuclearInteractionFinder.h>
Classes | |
struct | Config |
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 NavigationSchool * | nav () const |
NuclearInteractionFinder (const Config &iConfig, const TrackerGeometry *theTrckerGeom, const Propagator *thePropagator, const MeasurementEstimator *theEstimator, const MeasurementTracker *theMeasurementTracker, const GeometricSearchTracker *theGeomSearchTracker, const NavigationSchool *theNavigationSchool) | |
TrajectoryStateOnSurface | rescaleError (float rescale, const TSOS &state) const |
bool | run (const Trajectory &traj, const MeasurementTrackerEvent &event) |
Run the Finder. More... | |
Private Types | |
typedef TrajectoryMeasurement::ConstRecHitPointer | ConstRecHitPointer |
typedef FreeTrajectoryState | FTS |
typedef TrajectoryMeasurement | TM |
typedef std::vector< Trajectory > | TrajectoryContainer |
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 ¤tState, DetId detid, const LayerMeasurements &layerMeasurements) const |
Private Attributes | |
std::vector< SeedFromNuclearInteraction > | allSeeds |
bool | checkCompletedTrack |
std::unique_ptr< SeedFromNuclearInteraction > | currentSeed |
unsigned int | maxHits |
std::unique_ptr< NuclearTester > | nuclTester |
double | rescaleErrorFactor |
const MeasurementEstimator * | theEstimator |
const GeometricSearchTracker * | theGeomSearchTracker |
const MeasurementTracker * | theMeasurementTracker |
const NavigationSchool * | theNavigationSchool |
std::unique_ptr< TangentHelix > | thePrimaryHelix |
const Propagator * | thePropagator |
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 36 of file NuclearInteractionFinder.h.
|
private |
Definition at line 42 of file NuclearInteractionFinder.h.
|
private |
Definition at line 39 of file NuclearInteractionFinder.h.
|
private |
Definition at line 40 of file NuclearInteractionFinder.h.
|
private |
Definition at line 41 of file NuclearInteractionFinder.h.
|
private |
Definition at line 38 of file NuclearInteractionFinder.h.
NuclearInteractionFinder::NuclearInteractionFinder | ( | const Config & | iConfig, |
const TrackerGeometry * | theTrckerGeom, | ||
const Propagator * | thePropagator, | ||
const MeasurementEstimator * | theEstimator, | ||
const MeasurementTracker * | theMeasurementTracker, | ||
const GeometricSearchTracker * | theGeomSearchTracker, | ||
const NavigationSchool * | theNavigationSchool | ||
) |
Definition at line 13 of file NuclearInteractionFinder.cc.
References checkCompletedTrack, currentSeed, LogDebug, maxHits, nuclTester, NuclearInteractionFinder::Config::ptMin, rescaleErrorFactor, theEstimator, theGeomSearchTracker, theMeasurementTracker, theNavigationSchool, thePrimaryHelix, and thePropagator.
|
private |
Calculate the parameters of the circle representing the primary track at the interaction point.
Definition at line 104 of file NuclearInteractionFinder.cc.
References mps_fire::i, DiDispStaMuonMonitor_cfi::pt, and thePrimaryHelix.
Referenced by run().
|
private |
get the seeds at the interaction point
Definition at line 165 of file NuclearInteractionFinder.cc.
References allSeeds, currentSeed, sistrip::SpyUtilities::isValid(), LogDebug, TrajectoryMeasurement::recHit(), and TrajectoryMeasurement::updatedState().
Referenced by run().
|
private |
Find compatible TM of a TM with error rescaled by rescaleFactor.
Definition at line 115 of file NuclearInteractionFinder.cc.
References findMeasurementsFromTSOS(), LogDebug, TrajectoryMeasurement::recHit(), rescaleError(), and TrajectoryMeasurement::updatedState().
Referenced by run().
|
private |
Definition at line 124 of file NuclearInteractionFinder.cc.
References alongMomentum, GeometricSearchTracker::detLayer(), TrajectoryStateOnSurface::freeState(), LogDebug, LayerMeasurements::measurements(), NavigationSchool::nextLayers(), mps_fire::result, jetUpdater_cfi::sort, theEstimator, theGeomSearchTracker, theNavigationSchool, thePropagator, and createJobs::tmp.
Referenced by findCompatibleMeasurements(), and improveSeeds().
std::unique_ptr< TrajectorySeedCollection > NuclearInteractionFinder::getPersistentSeeds | ( | ) |
Fill 'output' with persistent nuclear seeds.
Definition at line 184 of file NuclearInteractionFinder.cc.
References allSeeds, LogDebug, and convertSQLitetoXML_cfg::output.
void NuclearInteractionFinder::improveSeeds | ( | const MeasurementTrackerEvent & | event | ) |
Improve the seeds with a third RecHit.
Definition at line 197 of file NuclearInteractionFinder.cc.
References allSeeds, currentSeed, findMeasurementsFromTSOS(), theMeasurementTracker, and thePrimaryHelix.
|
inline |
Definition at line 86 of file NuclearInteractionFinder.h.
References theNavigationSchool.
TrajectoryStateOnSurface NuclearInteractionFinder::rescaleError | ( | float | rescale, |
const TSOS & | state | ||
) | const |
Definition at line 226 of file NuclearInteractionFinder.cc.
References visualization-live-secondInstance_cfg::m, HLTObjectMonitor_cfi::mr, and LocalTrajectoryParameters::signedInverseMomentum().
Referenced by findCompatibleMeasurements().
bool NuclearInteractionFinder::run | ( | const Trajectory & | traj, |
const MeasurementTrackerEvent & | event | ||
) |
Run the Finder.
Definition at line 42 of file NuclearInteractionFinder.cc.
References allSeeds, alongMomentum, checkCompletedTrack, definePrimaryHelix(), Trajectory::direction(), Trajectory::empty(), fillSeeds(), findCompatibleMeasurements(), Trajectory::foundHits(), Trajectory::isValid(), LogDebug, maxHits, Trajectory::measurements(), nuclTester, rescaleErrorFactor, groupFilesInBlocks::reverse, findQualityFiles::size, and theMeasurementTracker.
|
private |
Definition at line 97 of file NuclearInteractionFinder.h.
Referenced by fillSeeds(), getPersistentSeeds(), improveSeeds(), and run().
|
private |
If set to true check all the tracks, even those reaching the edge of the tracker
Definition at line 103 of file NuclearInteractionFinder.h.
Referenced by NuclearInteractionFinder(), and run().
|
private |
Definition at line 96 of file NuclearInteractionFinder.h.
Referenced by fillSeeds(), improveSeeds(), and NuclearInteractionFinder().
|
private |
Definition at line 101 of file NuclearInteractionFinder.h.
Referenced by NuclearInteractionFinder(), and run().
|
private |
Definition at line 95 of file NuclearInteractionFinder.h.
Referenced by NuclearInteractionFinder(), and run().
|
private |
Definition at line 102 of file NuclearInteractionFinder.h.
Referenced by NuclearInteractionFinder(), and run().
|
private |
Definition at line 90 of file NuclearInteractionFinder.h.
Referenced by findMeasurementsFromTSOS(), and NuclearInteractionFinder().
|
private |
Definition at line 92 of file NuclearInteractionFinder.h.
Referenced by findMeasurementsFromTSOS(), and NuclearInteractionFinder().
|
private |
Definition at line 91 of file NuclearInteractionFinder.h.
Referenced by improveSeeds(), NuclearInteractionFinder(), and run().
|
private |
Definition at line 93 of file NuclearInteractionFinder.h.
Referenced by findMeasurementsFromTSOS(), nav(), and NuclearInteractionFinder().
|
private |
Definition at line 98 of file NuclearInteractionFinder.h.
Referenced by definePrimaryHelix(), improveSeeds(), and NuclearInteractionFinder().
|
private |
Definition at line 89 of file NuclearInteractionFinder.h.
Referenced by findMeasurementsFromTSOS(), and NuclearInteractionFinder().