Skip to content

Commit

Permalink
Added a new EXO regional tracking iteration.
Browse files Browse the repository at this point in the history
  • Loading branch information
aehart committed May 10, 2021
1 parent 4252a8a commit 69445fe
Show file tree
Hide file tree
Showing 30 changed files with 863 additions and 29 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import FWCore.ParameterSet.Config as cms

# This modifier is for activating displacedRegionalStep step for phase1 tracking

displacedRegionalTracking = cms.Modifier()
16 changes: 11 additions & 5 deletions DQM/TrackingMonitorSource/python/EDModules2monitor_cfi.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,23 +16,23 @@

# apparentely there are not LogError in RecoLocalTracker/SubCollectionProducers/src/TrackClusterRemover.cc
pluginsMonName['Clusterizer'] = cms.string ( 'TrackClusterRemover' )
modulesLabel ['Clusterizer'] = cms.vstring( 'lowPtTripletStepClusters', 'pixelPairStepClusters', 'detachedTripletStepClusters', 'mixedTripletStepClusters', 'pixelLessStepClusters', 'tobTecStepClusters', 'displacedGeneralStepClusters' ) # TrackClusterRemover
modulesLabel ['Clusterizer'] = cms.vstring( 'lowPtTripletStepClusters', 'pixelPairStepClusters', 'detachedTripletStepClusters', 'mixedTripletStepClusters', 'pixelLessStepClusters', 'tobTecStepClusters', 'displacedGeneralStepClusters', 'displacedRegionalStepClusters' ) # TrackClusterRemover
categories ['Clusterizer'] = cms.vstring( )

# initialStepSeeds,lowPtTripletStepSeeds, pixelPairStepSeeds, detachedTripletStepSeeds, : TooManyClusters (SeedGeneratorFromRegionHitsEDProducer),
# photonConvTrajSeedFromSingleLeg : (PhotonConversionTrajectorySeedProducerFromSingleLeg)
pluginsMonName['Seeding'] = cms.string ( 'Seeding' )
modulesLabel ['Seeding'] = cms.vstring( 'initialStepSeeds', 'lowPtTripletStepSeeds', 'pixelPairStepSeeds', 'detachedTripletStepSeeds', 'mixedTripletStepSeedsA', 'mixedTripletStepSeedsB', 'mixedTripletStepSeeds', 'pixelLessStepSeeds', 'tobTecStepSeeds', 'displacedGeneralStepSeeds','photonConvTrajSeedFromSingleLeg')
modulesLabel ['Seeding'] = cms.vstring( 'initialStepSeeds', 'lowPtTripletStepSeeds', 'pixelPairStepSeeds', 'detachedTripletStepSeeds', 'mixedTripletStepSeedsA', 'mixedTripletStepSeedsB', 'mixedTripletStepSeeds', 'pixelLessStepSeeds', 'tobTecStepSeeds', 'displacedGeneralStepSeeds', 'displacedRegionalStepSeeds' ,'photonConvTrajSeedFromSingleLeg')
categories ['Seeding'] = cms.vstring( 'TooManyClusters', 'TooManyPairs', 'TooManyTriplets', 'TooManySeeds' )

# RecoTracker/CkfPattern/src/CkfTrackCandidateMakerBase.cc
pluginsMonName['TrackCandidate'] = cms.string ( 'TrackCandidate' )
modulesLabel ['TrackCandidate'] = cms.vstring( 'initialStepTrackCandidates', 'lowPtTripletStepTrackCandidates', 'pixelPairStepTrackCandidates', 'detachedTripletStepTrackCandidates', 'mixedTripletStepTrackCandidates', 'pixelLessStepTrackCandidates', 'tobTecStepTrackCandidates', 'displacedGeneralStepTrackCandidates', 'convTrackCandidates' )
modulesLabel ['TrackCandidate'] = cms.vstring( 'initialStepTrackCandidates', 'lowPtTripletStepTrackCandidates', 'pixelPairStepTrackCandidates', 'detachedTripletStepTrackCandidates', 'mixedTripletStepTrackCandidates', 'pixelLessStepTrackCandidates', 'tobTecStepTrackCandidates', 'displacedGeneralStepTrackCandidates', 'displacedRegionalStepTrackCandidates', 'convTrackCandidates' )
categories ['TrackCandidate'] = cms.vstring( 'TooManySeeds', 'CkfPattern', 'BaseCkfTrajectoryBuilder_InfiniteLoop' )

# TrackProducer:FailedPropagation
pluginsMonName['TrackFinder'] = cms.string ( 'TrackFinder' )
modulesLabel ['TrackFinder'] = cms.vstring( 'pixelTracks', 'initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks', 'displacedGeneralStepTracks', 'generalTracks' )
modulesLabel ['TrackFinder'] = cms.vstring( 'pixelTracks', 'initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks', 'displacedGeneralStepTracks', 'displacedRegionalStepTracks', 'generalTracks' )
categories ['TrackFinder'] = cms.vstring( 'FailedPropagation' )


Expand Down Expand Up @@ -63,6 +63,9 @@
'displacedGeneralStepSeeds_iter7',
'displacedGeneralStepTrackCandidates_iter7',
'displacedGeneralStepTracks_iter7',
'displacedRegionalStepSeeds_iter8',
'displacedRegionalStepTrackCandidates_iter8',
'displacedRegionalStepTracks_iter8',
'photonConvTrajSeedFromSingleLeg',
'convTrackCandidates',
'convStepTracks',
Expand Down Expand Up @@ -101,7 +104,10 @@
'tobTecStepTracks_iter6',
'displacedGeneralStepSeeds_iter7',
'displacedGeneralStepTrackCandidates_iter7',
'displacedGeneralStepTracks_iter7'
'displacedGeneralStepTracks_iter7',
'displacedRegionalStepSeeds_iter8',
'displacedRegionalStepTrackCandidates_iter8',
'displacedRegionalStepTracks_iter8'
)
categories['IterTracking'] = cms.vstring(
'TooManyClusters',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,18 @@
clusterMax = cms.double(100000),
)

seedMonitoring['displacedRegionalStep'] = cms.PSet(
seedInputTag = cms.InputTag("displacedRegionalStepSeeds"),
trackCandInputTag= cms.InputTag("displacedRegionalStepTrackCandidates"),
trackSeedSizeBin = cms.int32(400),
trackSeedSizeMin = cms.double(0),
trackSeedSizeMax = cms.double(100000),
TCSizeMax = cms.double(199.5),
clusterLabel = cms.vstring('Strip'),
clusterBin = cms.int32(100),
clusterMax = cms.double(100000),
)

seedMonitoring['muonSeededStepOutInDisplaced'] = cms.PSet(
seedInputTag = cms.InputTag("muonSeededSeedsOutInDisplaced"),
trackCandInputTag = cms.InputTag("muonSeededTrackCandidatesOutInDisplacedg"),
Expand Down
2 changes: 1 addition & 1 deletion DataFormats/TrackReco/interface/TrackBase.h
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ namespace reco {
lowPtQuadStep = 23,
detachedQuadStep = 24,
displacedGeneralStep = 25,
reservedForUpgrades2 = 26,
displacedRegionalStep = 26,
bTagGhostTracks = 27,
beamhalo = 28,
gsf = 29,
Expand Down
2 changes: 1 addition & 1 deletion DataFormats/TrackReco/src/TrackBase.cc
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ std::string const TrackBase::algoNames[] = {"undefAlgorithm",
"lowPtQuadStep",
"detachedQuadStep",
"displacedGeneralStep",
"reservedForUpgrades2",
"displacedRegionalStep",
"bTagGhostTracks",
"beamhalo",
"gsf",
Expand Down
11 changes: 11 additions & 0 deletions RecoTracker/DisplacedRegionalTracking/BuildFile.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<use name="DataFormats/Candidate"/>
<use name="DataFormats/Common"/>
<use name="DataFormats/GeometrySurface"/>
<use name="DataFormats/GeometryVector"/>
<use name="DataFormats/Math"/>
<use name="TrackingTools/GeomPropagators"/>
<use name="TrackingTools/TrajectoryState"/>
<use name="TrackingTools/TransientTrack"/>
<export>
<lib name="1"/>
</export>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#ifndef RecoTracker_DisplacedRegionalTracking_DisplacedVertexCluster_h
#define RecoTracker_DisplacedRegionalTracking_DisplacedVertexCluster_h

#include <cmath>
#include <limits>
#include <list>
#include <utility>

#include "DataFormats/Common/interface/View.h"
#include "DataFormats/Candidate/interface/VertexCompositeCandidate.h"
#include "DataFormats/Math/interface/Vector3D.h"

class DisplacedVertexCluster;
typedef std::list<DisplacedVertexCluster>::iterator DisplacedVertexClusterItr;

class DisplacedVertexCluster {
public:
static constexpr double kInvalidDouble = std::numeric_limits<double>::quiet_NaN();

DisplacedVertexCluster()
: valid_(false), rParam2_(kInvalidDouble), sumOfCenters_(0.0, 0.0, 0.0), centerOfMass_(0.0, 0.0, 0.0) {}

DisplacedVertexCluster(const edm::View<reco::VertexCompositeCandidate> &, const unsigned, const double);

~DisplacedVertexCluster() { constituents_.clear(); }

bool valid() const { return valid_; }
double rParam2() const { return rParam2_; }
double rParam() const { return sqrt(rParam2()); }
const std::vector<const reco::VertexCompositeCandidate *> &constituents() const { return constituents_; }
const reco::VertexCompositeCandidate *constituent(const unsigned i) const { return constituents_.at(i); }
unsigned nConstituents() const { return constituents_.size(); }
const math::XYZVector &sumOfCenters() const { return sumOfCenters_; }
const math::XYZVector &centerOfMass() const { return centerOfMass_; }

double vx() const { return centerOfMass().x(); }
double vy() const { return centerOfMass().y(); }
double vz() const { return centerOfMass().z(); }

void merge(const DisplacedVertexCluster &other);
void setInvalid() { valid_ = false; }

// struct representing the distance between two DisplacedVertexCluster objects
struct Distance {
public:
Distance(DisplacedVertexClusterItr entity0, DisplacedVertexClusterItr entity1) : entities_(entity0, entity1) {}
double distance2() const;
double distance() const { return sqrt(distance2()); }
std::pair<DisplacedVertexClusterItr, DisplacedVertexClusterItr> &entities() { return entities_; }
const std::pair<DisplacedVertexClusterItr, DisplacedVertexClusterItr> &entities() const { return entities_; }

private:
std::pair<DisplacedVertexClusterItr, DisplacedVertexClusterItr> entities_;
};

typedef std::list<Distance>::iterator DistanceItr;

private:
bool valid_;
double rParam2_;
std::vector<const reco::VertexCompositeCandidate *> constituents_;
math::XYZVector sumOfCenters_;
math::XYZVector centerOfMass_;
};

#endif
11 changes: 11 additions & 0 deletions RecoTracker/DisplacedRegionalTracking/plugins/BuildFile.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<use name="DataFormats/BeamSpot"/>
<use name="DataFormats/Candidate"/>
<use name="DataFormats/Common"/>
<use name="DataFormats/Math"/>
<use name="DataFormats/VertexReco"/>
<use name="FWCore/Framework"/>
<use name="FWCore/ParameterSet"/>
<use name="FWCore/Utilities"/>
<use name="PhysicsTools/TensorFlow"/>
<use name="RecoTracker/DisplacedRegionalTracking"/>
<flags EDM_PLUGIN="1"/>
Loading

0 comments on commit 69445fe

Please sign in to comment.