-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EXO regional tracking iteration #32806
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
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() | ||
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -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' ) | ||
|
||
|
||
|
@@ -63,6 +63,9 @@ | |
'displacedGeneralStepSeeds_iter7', | ||
'displacedGeneralStepTrackCandidates_iter7', | ||
'displacedGeneralStepTracks_iter7', | ||
'displacedRegionalStepSeeds_iter8', | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. vs Is it consistent? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think I was thrown off by |
||
'displacedRegionalStepTrackCandidates_iter8', | ||
'displacedRegionalStepTracks_iter8', | ||
'photonConvTrajSeedFromSingleLeg', | ||
'convTrackCandidates', | ||
'convStepTracks', | ||
|
@@ -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', | ||
|
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> |
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 ¢erOfMass() 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 |
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"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Notably, the
displacedGeneralStep
is enabled in Configuration/ProcessModifiers/python/displacedTracking_cff.py with a more generically nameddisplacedTracking
modifier.@mtosi @vmariani shouldn't we have a more coherent and less confusing naming?
To disambiguate, the
displacedTracking
is better to be renamed todisplacedGeneralTracking
@doujadarej are you available to do the renaming?