CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
L1TrackObjectNtupleMaker Class Reference
Inheritance diagram for L1TrackObjectNtupleMaker:
edm::stream::EDAnalyzer<> edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

void analyze (const edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
void beginJob ()
 
void endJob ()
 
 L1TrackObjectNtupleMaker (const edm::ParameterSet &iConfig)
 
 ~L1TrackObjectNtupleMaker () override
 
- Public Member Functions inherited from edm::stream::EDAnalyzer<>
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
 EDAnalyzerBase (const EDAnalyzerBase &)=delete
 
ModuleDescription const & moduleDescription () const
 
const EDAnalyzerBaseoperator= (const EDAnalyzerBase &)=delete
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Attributes

bool available_
 
edm::ParameterSet config
 
bool DebugMode
 
string Displaced
 
TTree * eventTree
 
edm::InputTag GenJetInputTag
 
edm::EDGetTokenT< std::vector< reco::GenJet > > GenJetToken_
 
edm::InputTag GenParticleInputTag
 
edm::EDGetTokenT< std::vector< reco::GenParticle > > GenParticleToken_
 
edm::InputTag L1StubInputTag
 
int L1Tk_minNStub
 
edm::InputTag L1TrackExtendedInputTag
 
edm::InputTag L1TrackInputTag
 
edm::EDGetTokenT< l1t::TkPrimaryVertexCollectionL1VertexToken_
 
std::vector< float > * m_2ltrkjet_eta
 
std::vector< int > * m_2ltrkjet_nDisplaced
 
std::vector< int > * m_2ltrkjet_ntdtrk
 
std::vector< int > * m_2ltrkjet_nTight
 
std::vector< int > * m_2ltrkjet_nTightDisplaced
 
std::vector< int > * m_2ltrkjet_ntracks
 
std::vector< float > * m_2ltrkjet_p
 
std::vector< float > * m_2ltrkjet_phi
 
std::vector< float > * m_2ltrkjet_pt
 
std::vector< float > * m_2ltrkjet_vz
 
std::vector< float > * m_2ltrkjetExt_eta
 
std::vector< int > * m_2ltrkjetExt_nDisplaced
 
std::vector< int > * m_2ltrkjetExt_ntdtrk
 
std::vector< int > * m_2ltrkjetExt_nTight
 
std::vector< int > * m_2ltrkjetExt_nTightDisplaced
 
std::vector< int > * m_2ltrkjetExt_ntracks
 
std::vector< float > * m_2ltrkjetExt_p
 
std::vector< float > * m_2ltrkjetExt_phi
 
std::vector< float > * m_2ltrkjetExt_pt
 
std::vector< float > * m_2ltrkjetExt_vz
 
std::vector< int > * m_allstub_genuine
 
std::vector< int > * m_allstub_isBarrel
 
std::vector< int > * m_allstub_isPSmodule
 
std::vector< int > * m_allstub_layer
 
std::vector< float > * m_allstub_matchTP_eta
 
std::vector< int > * m_allstub_matchTP_pdgid
 
std::vector< float > * m_allstub_matchTP_phi
 
std::vector< float > * m_allstub_matchTP_pt
 
std::vector< float > * m_allstub_trigBend
 
std::vector< float > * m_allstub_trigDisplace
 
std::vector< float > * m_allstub_trigOffset
 
std::vector< float > * m_allstub_trigPos
 
std::vector< float > * m_allstub_x
 
std::vector< float > * m_allstub_y
 
std::vector< float > * m_allstub_z
 
std::vector< float > * m_matchtrk_bendchi2
 
std::vector< float > * m_matchtrk_chi2
 
std::vector< float > * m_matchtrk_chi2dof
 
std::vector< float > * m_matchtrk_chi2rphi
 
std::vector< float > * m_matchtrk_chi2rz
 
std::vector< float > * m_matchtrk_d0
 
std::vector< int > * m_matchtrk_dhits
 
std::vector< float > * m_matchtrk_eta
 
std::vector< int > * m_matchtrk_hitpattern
 
std::vector< int > * m_matchtrk_lhits
 
std::vector< int > * m_matchtrk_nstub
 
std::vector< float > * m_matchtrk_phi
 
std::vector< float > * m_matchtrk_pt
 
std::vector< int > * m_matchtrk_seed
 
std::vector< float > * m_matchtrk_z0
 
std::vector< float > * m_matchtrkExt_bendchi2
 
std::vector< float > * m_matchtrkExt_chi2
 
std::vector< float > * m_matchtrkExt_chi2dof
 
std::vector< float > * m_matchtrkExt_chi2rphi
 
std::vector< float > * m_matchtrkExt_chi2rz
 
std::vector< float > * m_matchtrkExt_d0
 
std::vector< int > * m_matchtrkExt_dhits
 
std::vector< float > * m_matchtrkExt_eta
 
std::vector< int > * m_matchtrkExt_hitpattern
 
std::vector< int > * m_matchtrkExt_lhits
 
std::vector< int > * m_matchtrkExt_nstub
 
std::vector< float > * m_matchtrkExt_phi
 
std::vector< float > * m_matchtrkExt_pt
 
std::vector< int > * m_matchtrkExt_seed
 
std::vector< float > * m_matchtrkExt_z0
 
std::vector< int > * m_MC_lep
 
std::vector< float > * m_pv_L1reco
 
std::vector< float > * m_pv_MC
 
std::vector< int > * m_tp_charge
 
std::vector< float > * m_tp_d0
 
std::vector< float > * m_tp_d0_prod
 
std::vector< float > * m_tp_dxy
 
std::vector< float > * m_tp_eta
 
std::vector< int > * m_tp_eventid
 
std::vector< int > * m_tp_nmatch
 
std::vector< int > * m_tp_nstub
 
std::vector< int > * m_tp_pdgid
 
std::vector< float > * m_tp_phi
 
std::vector< float > * m_tp_pt
 
std::vector< float > * m_tp_z0
 
std::vector< float > * m_tp_z0_prod
 
std::vector< float > * m_trk_bendchi2
 
std::vector< float > * m_trk_chi2
 
std::vector< float > * m_trk_chi2dof
 
std::vector< float > * m_trk_chi2rphi
 
std::vector< float > * m_trk_chi2rz
 
std::vector< int > * m_trk_combinatoric
 
std::vector< float > * m_trk_d0
 
std::vector< int > * m_trk_dhits
 
std::vector< float > * m_trk_eta
 
std::vector< int > * m_trk_fake
 
std::vector< int > * m_trk_genuine
 
std::vector< int > * m_trk_hitpattern
 
std::vector< int > * m_trk_lhits
 
std::vector< int > * m_trk_loose
 
std::vector< float > * m_trk_matchtp_dxy
 
std::vector< float > * m_trk_matchtp_eta
 
std::vector< int > * m_trk_matchtp_pdgid
 
std::vector< float > * m_trk_matchtp_phi
 
std::vector< float > * m_trk_matchtp_pt
 
std::vector< float > * m_trk_matchtp_z0
 
std::vector< int > * m_trk_nstub
 
std::vector< float > * m_trk_phi
 
std::vector< unsigned int > * m_trk_phiSector
 
std::vector< float > * m_trk_pt
 
std::vector< int > * m_trk_seed
 
std::vector< int > * m_trk_unknown
 
std::vector< float > * m_trk_z0
 
std::vector< float > * m_trkExt_bendchi2
 
std::vector< float > * m_trkExt_chi2
 
std::vector< float > * m_trkExt_chi2dof
 
std::vector< float > * m_trkExt_chi2rphi
 
std::vector< float > * m_trkExt_chi2rz
 
std::vector< int > * m_trkExt_combinatoric
 
std::vector< float > * m_trkExt_d0
 
std::vector< int > * m_trkExt_dhits
 
std::vector< float > * m_trkExt_eta
 
std::vector< int > * m_trkExt_fake
 
std::vector< int > * m_trkExt_genuine
 
std::vector< int > * m_trkExt_hitpattern
 
std::vector< int > * m_trkExt_lhits
 
std::vector< int > * m_trkExt_loose
 
std::vector< float > * m_trkExt_matchtp_dxy
 
std::vector< float > * m_trkExt_matchtp_eta
 
std::vector< int > * m_trkExt_matchtp_pdgid
 
std::vector< float > * m_trkExt_matchtp_phi
 
std::vector< float > * m_trkExt_matchtp_pt
 
std::vector< float > * m_trkExt_matchtp_z0
 
std::vector< int > * m_trkExt_nstub
 
std::vector< float > * m_trkExt_phi
 
std::vector< unsigned int > * m_trkExt_phiSector
 
std::vector< float > * m_trkExt_pt
 
std::vector< int > * m_trkExt_seed
 
std::vector< int > * m_trkExt_unknown
 
std::vector< float > * m_trkExt_z0
 
std::vector< float > * m_trkjet_eta
 
std::vector< int > * m_trkjet_ntracks
 
std::vector< float > * m_trkjet_p
 
std::vector< float > * m_trkjet_phi
 
std::vector< float > * m_trkjet_pt
 
std::vector< float > * m_trkjet_tp_sumpt
 
std::vector< float > * m_trkjet_truetp_sumpt
 
std::vector< float > * m_trkjet_vz
 
std::vector< float > * m_trkjetExt_eta
 
std::vector< int > * m_trkjetExt_ntracks
 
std::vector< float > * m_trkjetExt_p
 
std::vector< float > * m_trkjetExt_phi
 
std::vector< float > * m_trkjetExt_pt
 
std::vector< float > * m_trkjetExt_tp_sumpt
 
std::vector< float > * m_trkjetExt_truetp_sumpt
 
std::vector< float > * m_trkjetExt_vz
 
edm::InputTag MCTruthClusterInputTag
 
edm::InputTag MCTruthStubInputTag
 
edm::InputTag MCTruthTrackExtendedInputTag
 
edm::InputTag MCTruthTrackInputTag
 
int MyProcess
 
edm::InputTag RecoVertexInputTag
 
bool SaveAllTracks
 
bool SaveStubs
 
bool SaveTrackJets
 
bool SaveTrackMET
 
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordtGeomToken_
 
double TP_maxEta
 
double TP_maxZ0
 
int TP_minNStub
 
int TP_minNStubLayer
 
double TP_minPt
 
edm::InputTag TrackFastJetsExtendedInputTag
 
edm::EDGetTokenT< std::vector< l1t::TkJet > > TrackFastJetsExtendedToken_
 
edm::InputTag TrackFastJetsInputTag
 
edm::EDGetTokenT< std::vector< l1t::TkJet > > TrackFastJetsToken_
 
bool TrackingInJets
 
edm::InputTag TrackingParticleInputTag
 
edm::EDGetTokenT< std::vector< TrackingParticle > > TrackingParticleToken_
 
edm::InputTag TrackingVertexInputTag
 
edm::EDGetTokenT< std::vector< TrackingVertex > > TrackingVertexToken_
 
edm::InputTag TrackJetsExtendedInputTag
 
edm::EDGetTokenT< l1t::TkJetCollectionTrackJetsExtendedToken_
 
edm::InputTag TrackJetsInputTag
 
edm::EDGetTokenT< l1t::TkJetCollectionTrackJetsToken_
 
edm::InputTag TrackMETExtendedInputTag
 
edm::EDGetTokenT< std::vector< l1t::TkEtMiss > > TrackMETExtendedToken_
 
edm::InputTag TrackMETInputTag
 
edm::EDGetTokenT< std::vector< l1t::TkEtMiss > > TrackMETToken_
 
edm::InputTag TrackMHTExtendedInputTag
 
edm::EDGetTokenT< l1t::TkHTMissCollectionTrackMHTExtendedToken_
 
edm::InputTag TrackMHTInputTag
 
edm::EDGetTokenT< l1t::TkHTMissCollectionTrackMHTToken_
 
float trkHT = 0
 
float trkHTExt = 0
 
float trkMET = 0
 
float trkMETExt = 0
 
float trkMHT = 0
 
float trkMHTExt = 0
 
float trueMET = 0
 
edm::EDGetTokenT< TTClusterAssociationMap< Ref_Phase2TrackerDigi_ > > ttClusterMCTruthToken_
 
edm::EDGetTokenT< edmNew::DetSetVector< TTCluster< Ref_Phase2TrackerDigi_ > > > ttClusterToken_
 
edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtTopoToken_
 
edm::EDGetTokenT< TTStubAssociationMap< Ref_Phase2TrackerDigi_ > > ttStubMCTruthToken_
 
edm::EDGetTokenT< edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > > > ttStubToken_
 
edm::EDGetTokenT< std::vector< TTTrack< Ref_Phase2TrackerDigi_ > > > ttTrackExtendedToken_
 
edm::EDGetTokenT< TTTrackAssociationMap< Ref_Phase2TrackerDigi_ > > ttTrackMCTruthExtendedToken_
 
edm::EDGetTokenT< TTTrackAssociationMap< Ref_Phase2TrackerDigi_ > > ttTrackMCTruthToken_
 
edm::EDGetTokenT< std::vector< TTTrack< Ref_Phase2TrackerDigi_ > > > ttTrackToken_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer<>
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 98 of file L1TrackObjectNtupleMaker.cc.

Constructor & Destructor Documentation

◆ L1TrackObjectNtupleMaker()

L1TrackObjectNtupleMaker::L1TrackObjectNtupleMaker ( const edm::ParameterSet iConfig)
explicit

Definition at line 391 of file L1TrackObjectNtupleMaker.cc.

391  : config(iConfig) {
392  MyProcess = iConfig.getParameter<int>("MyProcess");
393  DebugMode = iConfig.getParameter<bool>("DebugMode");
394  SaveAllTracks = iConfig.getParameter<bool>("SaveAllTracks");
395  SaveStubs = iConfig.getParameter<bool>("SaveStubs");
396  Displaced = iConfig.getParameter<string>("Displaced");
397  TP_minNStub = iConfig.getParameter<int>("TP_minNStub");
398  TP_minNStubLayer = iConfig.getParameter<int>("TP_minNStubLayer");
399  TP_minPt = iConfig.getParameter<double>("TP_minPt");
400  TP_maxEta = iConfig.getParameter<double>("TP_maxEta");
401  TP_maxZ0 = iConfig.getParameter<double>("TP_maxZ0");
402  L1Tk_minNStub = iConfig.getParameter<int>("L1Tk_minNStub");
403 
404  TrackingInJets = iConfig.getParameter<bool>("TrackingInJets");
405  SaveTrackJets = iConfig.getParameter<bool>("SaveTrackJets");
406  SaveTrackMET = iConfig.getParameter<bool>("SaveTrackMET");
407 
408  L1StubInputTag = iConfig.getParameter<edm::InputTag>("L1StubInputTag");
409  MCTruthClusterInputTag = iConfig.getParameter<edm::InputTag>("MCTruthClusterInputTag");
410  MCTruthStubInputTag = iConfig.getParameter<edm::InputTag>("MCTruthStubInputTag");
411  TrackingParticleInputTag = iConfig.getParameter<edm::InputTag>("TrackingParticleInputTag");
412  TrackingVertexInputTag = iConfig.getParameter<edm::InputTag>("TrackingVertexInputTag");
413  GenJetInputTag = iConfig.getParameter<edm::InputTag>("GenJetInputTag");
414  RecoVertexInputTag = iConfig.getParameter<InputTag>("RecoVertexInputTag");
415  GenParticleInputTag = iConfig.getParameter<InputTag>("GenParticleInputTag");
416 
417  if (Displaced == "Prompt" || Displaced == "Both") {
418  L1TrackInputTag = iConfig.getParameter<edm::InputTag>("L1TrackInputTag");
419  MCTruthTrackInputTag = iConfig.getParameter<edm::InputTag>("MCTruthTrackInputTag");
420  TrackFastJetsInputTag = iConfig.getParameter<InputTag>("TrackFastJetsInputTag");
421  TrackJetsInputTag = iConfig.getParameter<InputTag>("TrackJetsInputTag");
422  TrackMETInputTag = iConfig.getParameter<InputTag>("TrackMETInputTag");
423  TrackMHTInputTag = iConfig.getParameter<InputTag>("TrackMHTInputTag");
424 
425  ttTrackToken_ = consumes<std::vector<TTTrack<Ref_Phase2TrackerDigi_> > >(L1TrackInputTag);
426  ttTrackMCTruthToken_ = consumes<TTTrackAssociationMap<Ref_Phase2TrackerDigi_> >(MCTruthTrackInputTag);
427  TrackFastJetsToken_ = consumes<std::vector<l1t::TkJet> >(TrackFastJetsInputTag);
428  TrackJetsToken_ = consumes<l1t::TkJetCollection>(TrackJetsInputTag);
429  TrackMETToken_ = consumes<std::vector<l1t::TkEtMiss> >(TrackMETInputTag);
430  TrackMHTToken_ = consumes<l1t::TkHTMissCollection>(TrackMHTInputTag);
431  }
432 
433  if (Displaced == "Displaced" || Displaced == "Both") {
434  L1TrackExtendedInputTag = iConfig.getParameter<edm::InputTag>("L1TrackExtendedInputTag");
435  MCTruthTrackExtendedInputTag = iConfig.getParameter<edm::InputTag>("MCTruthTrackExtendedInputTag");
436  TrackFastJetsExtendedInputTag = iConfig.getParameter<InputTag>("TrackFastJetsExtendedInputTag");
437  TrackJetsExtendedInputTag = iConfig.getParameter<InputTag>("TrackJetsExtendedInputTag");
438  TrackMETExtendedInputTag = iConfig.getParameter<InputTag>("TrackMETExtendedInputTag");
439  TrackMHTExtendedInputTag = iConfig.getParameter<InputTag>("TrackMHTExtendedInputTag");
440 
441  ttTrackExtendedToken_ = consumes<std::vector<TTTrack<Ref_Phase2TrackerDigi_> > >(L1TrackExtendedInputTag);
443  consumes<TTTrackAssociationMap<Ref_Phase2TrackerDigi_> >(MCTruthTrackExtendedInputTag);
444  TrackFastJetsExtendedToken_ = consumes<std::vector<l1t::TkJet> >(TrackFastJetsExtendedInputTag);
445  TrackJetsExtendedToken_ = consumes<l1t::TkJetCollection>(TrackJetsExtendedInputTag);
446  TrackMETExtendedToken_ = consumes<std::vector<l1t::TkEtMiss> >(TrackMETExtendedInputTag);
447  TrackMHTExtendedToken_ = consumes<l1t::TkHTMissCollection>(TrackMHTExtendedInputTag);
448  }
449 
450  ttStubToken_ = consumes<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> > >(L1StubInputTag);
451  ttClusterMCTruthToken_ = consumes<TTClusterAssociationMap<Ref_Phase2TrackerDigi_> >(MCTruthClusterInputTag);
452  ttStubMCTruthToken_ = consumes<TTStubAssociationMap<Ref_Phase2TrackerDigi_> >(MCTruthStubInputTag);
453  TrackingParticleToken_ = consumes<std::vector<TrackingParticle> >(TrackingParticleInputTag);
454  TrackingVertexToken_ = consumes<std::vector<TrackingVertex> >(TrackingVertexInputTag);
455  GenJetToken_ = consumes<std::vector<reco::GenJet> >(GenJetInputTag);
456  GenParticleToken_ = consumes<std::vector<reco::GenParticle> >(GenParticleInputTag);
457  L1VertexToken_ = consumes<l1t::TkPrimaryVertexCollection>(RecoVertexInputTag);
458 
459  tTopoToken_ = esConsumes<TrackerTopology, TrackerTopologyRcd>(edm::ESInputTag("", ""));
460  tGeomToken_ = esConsumes<TrackerGeometry, TrackerDigiGeometryRecord>(edm::ESInputTag("", ""));
461 }

References DebugMode, Displaced, GenJetInputTag, GenJetToken_, GenParticleInputTag, GenParticleToken_, edm::ParameterSet::getParameter(), L1StubInputTag, L1Tk_minNStub, L1TrackExtendedInputTag, L1TrackInputTag, L1VertexToken_, MCTruthClusterInputTag, MCTruthStubInputTag, MCTruthTrackExtendedInputTag, MCTruthTrackInputTag, MyProcess, RecoVertexInputTag, SaveAllTracks, SaveStubs, SaveTrackJets, SaveTrackMET, tGeomToken_, TP_maxEta, TP_maxZ0, TP_minNStub, TP_minNStubLayer, TP_minPt, TrackFastJetsExtendedInputTag, TrackFastJetsExtendedToken_, TrackFastJetsInputTag, TrackFastJetsToken_, TrackingInJets, TrackingParticleInputTag, TrackingParticleToken_, TrackingVertexInputTag, TrackingVertexToken_, TrackJetsExtendedInputTag, TrackJetsExtendedToken_, TrackJetsInputTag, TrackJetsToken_, TrackMETExtendedInputTag, TrackMETExtendedToken_, TrackMETInputTag, TrackMETToken_, TrackMHTExtendedInputTag, TrackMHTExtendedToken_, TrackMHTInputTag, TrackMHTToken_, ttClusterMCTruthToken_, tTopoToken_, ttStubMCTruthToken_, ttStubToken_, ttTrackExtendedToken_, ttTrackMCTruthExtendedToken_, ttTrackMCTruthToken_, and ttTrackToken_.

◆ ~L1TrackObjectNtupleMaker()

L1TrackObjectNtupleMaker::~L1TrackObjectNtupleMaker ( )
override

Definition at line 465 of file L1TrackObjectNtupleMaker.cc.

465 {}

Member Function Documentation

◆ analyze()

void L1TrackObjectNtupleMaker::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

Implements edm::stream::EDAnalyzerBase.

Definition at line 883 of file L1TrackObjectNtupleMaker.cc.

883  {
884  if (not available_)
885  return; // No ROOT file open.
886 
887  if (!(MyProcess == 13 || MyProcess == 11 || MyProcess == 211 || MyProcess == 6 || MyProcess == 15 ||
888  MyProcess == 1)) {
889  edm::LogVerbatim("Tracklet") << "The specified MyProcess is invalid! Exiting...";
890  return;
891  }
892 
893  // clear variables
894  if (SaveAllTracks && (Displaced == "Prompt" || Displaced == "Both")) {
895  m_trk_pt->clear();
896  m_trk_eta->clear();
897  m_trk_phi->clear();
898  m_trk_d0->clear();
899  m_trk_z0->clear();
900  m_trk_chi2->clear();
901  m_trk_chi2dof->clear();
902  m_trk_chi2rphi->clear();
903  m_trk_chi2rz->clear();
904  m_trk_bendchi2->clear();
905  m_trk_nstub->clear();
906  m_trk_lhits->clear();
907  m_trk_dhits->clear();
908  m_trk_seed->clear();
909  m_trk_hitpattern->clear();
910  m_trk_phiSector->clear();
911  m_trk_genuine->clear();
912  m_trk_loose->clear();
913  m_trk_unknown->clear();
914  m_trk_combinatoric->clear();
915  m_trk_fake->clear();
916  m_trk_matchtp_pdgid->clear();
917  m_trk_matchtp_pt->clear();
918  m_trk_matchtp_eta->clear();
919  m_trk_matchtp_phi->clear();
920  m_trk_matchtp_z0->clear();
921  m_trk_matchtp_dxy->clear();
922  }
923  if (SaveAllTracks && (Displaced == "Displaced" || Displaced == "Both")) {
924  m_trkExt_pt->clear();
925  m_trkExt_eta->clear();
926  m_trkExt_phi->clear();
927  m_trkExt_d0->clear();
928  m_trkExt_z0->clear();
929  m_trkExt_chi2->clear();
930  m_trkExt_chi2dof->clear();
931  m_trkExt_chi2rphi->clear();
932  m_trkExt_chi2rz->clear();
933  m_trkExt_bendchi2->clear();
934  m_trkExt_nstub->clear();
935  m_trkExt_lhits->clear();
936  m_trkExt_dhits->clear();
937  m_trkExt_seed->clear();
938  m_trkExt_hitpattern->clear();
939  m_trkExt_phiSector->clear();
940  m_trkExt_genuine->clear();
941  m_trkExt_loose->clear();
942  m_trkExt_unknown->clear();
943  m_trkExt_combinatoric->clear();
944  m_trkExt_fake->clear();
945  m_trkExt_matchtp_pdgid->clear();
946  m_trkExt_matchtp_pt->clear();
947  m_trkExt_matchtp_eta->clear();
948  m_trkExt_matchtp_phi->clear();
949  m_trkExt_matchtp_z0->clear();
950  m_trkExt_matchtp_dxy->clear();
951  }
952  m_tp_pt->clear();
953  m_tp_eta->clear();
954  m_tp_phi->clear();
955  m_tp_dxy->clear();
956  m_tp_d0->clear();
957  m_tp_z0->clear();
958  m_tp_d0_prod->clear();
959  m_tp_z0_prod->clear();
960  m_tp_pdgid->clear();
961  m_tp_nmatch->clear();
962  m_tp_nstub->clear();
963  m_tp_eventid->clear();
964  m_tp_charge->clear();
965 
966  if (Displaced == "Prompt" || Displaced == "Both") {
967  m_matchtrk_pt->clear();
968  m_matchtrk_eta->clear();
969  m_matchtrk_phi->clear();
970  m_matchtrk_z0->clear();
971  m_matchtrk_d0->clear();
972  m_matchtrk_chi2->clear();
973  m_matchtrk_chi2dof->clear();
974  m_matchtrk_chi2rphi->clear();
975  m_matchtrk_chi2rz->clear();
976  m_matchtrk_bendchi2->clear();
977  m_matchtrk_nstub->clear();
978  m_matchtrk_lhits->clear();
979  m_matchtrk_dhits->clear();
980  m_matchtrk_seed->clear();
981  m_matchtrk_hitpattern->clear();
982  }
983 
984  if (Displaced == "Displaced" || Displaced == "Both") {
985  m_matchtrkExt_pt->clear();
986  m_matchtrkExt_eta->clear();
987  m_matchtrkExt_phi->clear();
988  m_matchtrkExt_z0->clear();
989  m_matchtrkExt_d0->clear();
990  m_matchtrkExt_chi2->clear();
991  m_matchtrkExt_chi2dof->clear();
992  m_matchtrkExt_chi2rphi->clear();
993  m_matchtrkExt_chi2rz->clear();
994  m_matchtrkExt_bendchi2->clear();
995  m_matchtrkExt_nstub->clear();
996  m_matchtrkExt_lhits->clear();
997  m_matchtrkExt_dhits->clear();
998  m_matchtrkExt_seed->clear();
999  m_matchtrkExt_hitpattern->clear();
1000  }
1001 
1002  if (SaveStubs) {
1003  m_allstub_x->clear();
1004  m_allstub_y->clear();
1005  m_allstub_z->clear();
1006  m_allstub_isBarrel->clear();
1007  m_allstub_layer->clear();
1008  m_allstub_isPSmodule->clear();
1009  m_allstub_trigDisplace->clear();
1010  m_allstub_trigOffset->clear();
1011  m_allstub_trigPos->clear();
1012  m_allstub_trigBend->clear();
1013  m_allstub_matchTP_pdgid->clear();
1014  m_allstub_matchTP_pt->clear();
1015  m_allstub_matchTP_eta->clear();
1016  m_allstub_matchTP_phi->clear();
1017  m_allstub_genuine->clear();
1018  }
1019 
1020  // m_jet_eta->clear();
1021  // m_jet_phi->clear();
1022  // m_jet_pt->clear();
1023  // m_jet_tp_sumpt->clear();
1024  // m_jet_trk_sumpt->clear();
1025  // m_jet_matchtrk_sumpt->clear();
1026 
1027  if (SaveTrackJets) {
1028  if (Displaced == "Prompt" || Displaced == "Both") {
1029  m_2ltrkjet_eta->clear();
1030  m_2ltrkjet_pt->clear();
1031  m_2ltrkjet_vz->clear();
1032  m_2ltrkjet_phi->clear();
1033  m_2ltrkjet_p->clear();
1034  m_2ltrkjet_ntracks->clear();
1035  m_2ltrkjet_nDisplaced->clear();
1036  m_2ltrkjet_nTight->clear();
1037  m_2ltrkjet_nTightDisplaced->clear();
1038  m_2ltrkjet_ntdtrk->clear();
1039  m_trkjet_eta->clear();
1040  m_trkjet_pt->clear();
1041  m_trkjet_vz->clear();
1042  m_trkjet_phi->clear();
1043  m_trkjet_p->clear();
1044  m_trkjet_ntracks->clear();
1045  m_trkjet_truetp_sumpt->clear();
1046  m_trkjet_tp_sumpt->clear();
1047  }
1048  if (Displaced == "Displaced" || Displaced == "Both") {
1049  m_2ltrkjetExt_eta->clear();
1050  m_2ltrkjetExt_pt->clear();
1051  m_2ltrkjetExt_vz->clear();
1052  m_2ltrkjetExt_phi->clear();
1053  m_2ltrkjetExt_p->clear();
1054  m_2ltrkjetExt_ntracks->clear();
1055  m_2ltrkjetExt_nDisplaced->clear();
1056  m_2ltrkjetExt_nTight->clear();
1058  m_2ltrkjetExt_ntdtrk->clear();
1059  m_trkjetExt_eta->clear();
1060  m_trkjetExt_pt->clear();
1061  m_trkjetExt_vz->clear();
1062  m_trkjetExt_phi->clear();
1063  m_trkjetExt_p->clear();
1064  m_trkjetExt_ntracks->clear();
1065  m_trkjetExt_truetp_sumpt->clear();
1066  m_trkjetExt_tp_sumpt->clear();
1067  }
1068 
1069  // m_pv_L1recotruesumpt->clear();
1070  // m_pv_L1recosumpt->clear();
1071  m_pv_L1reco->clear();
1072  // m_pv_L1TPsumpt->clear();
1073  // m_pv_L1TP->clear();
1074  m_pv_MC->clear();
1075  m_MC_lep->clear();
1076  // m_pv_MCChgSumpT->clear();
1077  }
1078 
1079  // -----------------------------------------------------------------------------------------------
1080  // retrieve various containers
1081  // -----------------------------------------------------------------------------------------------
1082 
1083  // L1 stubs
1085  if (SaveStubs)
1086  iEvent.getByToken(ttStubToken_, TTStubHandle);
1087 
1088  // MC truth association maps
1090  iEvent.getByToken(ttClusterMCTruthToken_, MCTruthTTClusterHandle);
1092  iEvent.getByToken(ttStubMCTruthToken_, MCTruthTTStubHandle);
1093 
1094  // tracking particles
1095  edm::Handle<std::vector<TrackingParticle> > TrackingParticleHandle;
1096  edm::Handle<std::vector<TrackingVertex> > TrackingVertexHandle;
1097  iEvent.getByToken(TrackingParticleToken_, TrackingParticleHandle);
1098  iEvent.getByToken(TrackingVertexToken_, TrackingVertexHandle);
1099 
1100  // -----------------------------------------------------------------------------------------------
1101  // more for TTStubs
1102  const TrackerTopology& tTopo = iSetup.getData(tTopoToken_);
1103  const TrackerGeometry& tGeom = iSetup.getData(tGeomToken_);
1104 
1105  /*edm::ESHandle<TrackerGeometry> geometryHandle;
1106  iSetup.get<TrackerDigiGeometryRecord>().get(geometryHandle);
1107 
1108  edm::ESHandle<TrackerTopology> tTopoHandle;
1109  iSetup.get<TrackerTopologyRcd>().get(tTopoHandle);
1110 
1111  edm::ESHandle<TrackerGeometry> tGeomHandle;
1112  iSetup.get<TrackerDigiGeometryRecord>().get(tGeomHandle);
1113 
1114  const TrackerTopology* const tTopo = tTopoHandle.product();
1115  const TrackerGeometry* const theTrackerGeom = tGeomHandle.product();*/
1116 
1117  //Gen particles
1118  edm::Handle<std::vector<reco::GenParticle> > GenParticleHandle;
1119  iEvent.getByToken(GenParticleToken_, GenParticleHandle);
1120 
1121  //Vertex
1122  edm::Handle<l1t::TkPrimaryVertexCollection> L1TkPrimaryVertexHandle;
1123  iEvent.getByToken(L1VertexToken_, L1TkPrimaryVertexHandle);
1124 
1125  // Track jets
1126  edm::Handle<std::vector<l1t::TkJet> > TrackFastJetsHandle;
1127  edm::Handle<std::vector<l1t::TkJet> > TrackFastJetsExtendedHandle;
1128  edm::Handle<l1t::TkJetCollection> TrackJetsHandle;
1129  edm::Handle<l1t::TkJetCollection> TrackJetsExtendedHandle;
1130  std::vector<l1t::TkJet>::const_iterator jetIter;
1131 
1132  // Track MET
1134  edm::Handle<std::vector<l1t::TkEtMiss> > L1TkMETExtendedHandle;
1136  edm::Handle<std::vector<l1t::TkHTMiss> > L1TkMHTExtendedHandle;
1137 
1138  // L1 tracks
1142  edm::Handle<TTTrackAssociationMap<Ref_Phase2TrackerDigi_> > MCTruthTTTrackExtendedHandle;
1143  std::vector<TTTrack<Ref_Phase2TrackerDigi_> >::const_iterator iterL1Track;
1144 
1145  if (Displaced == "Prompt" || Displaced == "Both") {
1146  iEvent.getByToken(TrackFastJetsToken_, TrackFastJetsHandle);
1147  iEvent.getByToken(TrackJetsToken_, TrackJetsHandle);
1148  iEvent.getByToken(TrackMETToken_, L1TkMETHandle);
1149  iEvent.getByToken(TrackMHTToken_, L1TkMHTHandle);
1150  iEvent.getByToken(ttTrackToken_, TTTrackHandle);
1151  iEvent.getByToken(ttTrackMCTruthToken_, MCTruthTTTrackHandle);
1152  }
1153  if (Displaced == "Displaced" || Displaced == "Both") {
1154  iEvent.getByToken(TrackFastJetsExtendedToken_, TrackFastJetsExtendedHandle);
1155  iEvent.getByToken(TrackJetsExtendedToken_, TrackJetsExtendedHandle);
1156  iEvent.getByToken(TrackMETExtendedToken_, L1TkMETExtendedHandle);
1157  iEvent.getByToken(TrackMHTExtendedToken_, L1TkMHTExtendedHandle);
1158  iEvent.getByToken(ttTrackExtendedToken_, TTTrackExtendedHandle);
1159  iEvent.getByToken(ttTrackMCTruthExtendedToken_, MCTruthTTTrackExtendedHandle);
1160  }
1161 
1162  //Loop over gen particles
1163  if (GenParticleHandle.isValid()) {
1164  vector<reco::GenParticle>::const_iterator genpartIter;
1165 
1166  float zvtx_gen = -999;
1167  for (genpartIter = GenParticleHandle->begin(); genpartIter != GenParticleHandle->end(); ++genpartIter) {
1168  int status = genpartIter->status();
1169  if (status != 1)
1170  continue;
1171  zvtx_gen = genpartIter->vz();
1172  }
1173  m_pv_MC->push_back(zvtx_gen);
1174 
1175  float trueMETx = 0;
1176  float trueMETy = 0;
1177  trueMET = 0;
1178  for (size_t i = 0; i < GenParticleHandle->size(); ++i) {
1179  const reco::GenParticle& p = (*GenParticleHandle)[i];
1180  int id = p.pdgId();
1181  bool isNeutrino = false;
1182  if ((fabs(id) == 12 || fabs(id) == 14 || fabs(id) == 16))
1183  isNeutrino = true;
1184  if ((isNeutrino || id == 1000022) && p.status() == 1) {
1185  trueMETx += p.pt() * cos(p.phi());
1186  trueMETy += p.pt() * sin(p.phi());
1187  }
1188  }
1189  trueMET = sqrt(trueMETx * trueMETx + trueMETy * trueMETy);
1190  } else {
1191  edm::LogWarning("DataNotFound") << "\nWarning: GenParticleHandle not found in the event" << std::endl;
1192  }
1193 
1194  // ----------------------------------------------------------------------------------------------
1195  // loop over L1 stubs
1196  // ----------------------------------------------------------------------------------------------
1197  if (SaveStubs) {
1198  for (auto gd = tGeom.dets().begin(); gd != tGeom.dets().end(); gd++) {
1199  DetId detid = (*gd)->geographicalId();
1200  if (detid.subdetId() != StripSubdetector::TOB && detid.subdetId() != StripSubdetector::TID)
1201  continue;
1202  if (!tTopo.isLower(detid))
1203  continue; // loop on the stacks: choose the lower arbitrarily
1204  DetId stackDetid = tTopo.stack(detid); // Stub module detid
1205 
1206  if (TTStubHandle->find(stackDetid) == TTStubHandle->end())
1207  continue;
1208 
1209  // Get the DetSets of the Clusters
1210  edmNew::DetSet<TTStub<Ref_Phase2TrackerDigi_> > stubs = (*TTStubHandle)[stackDetid];
1211  const GeomDetUnit* det0 = tGeom.idToDetUnit(detid);
1212  const auto* theGeomDet = dynamic_cast<const PixelGeomDetUnit*>(det0);
1213  const PixelTopology* topol = dynamic_cast<const PixelTopology*>(&(theGeomDet->specificTopology()));
1214 
1215  // loop over stubs
1216  for (auto stubIter = stubs.begin(); stubIter != stubs.end(); ++stubIter) {
1218  edmNew::makeRefTo(TTStubHandle, stubIter);
1219 
1220  int isBarrel = 0;
1221  int layer = -999999;
1222  if (detid.subdetId() == StripSubdetector::TOB) {
1223  isBarrel = 1;
1224  layer = static_cast<int>(tTopo.layer(detid));
1225  } else if (detid.subdetId() == StripSubdetector::TID) {
1226  isBarrel = 0;
1227  layer = static_cast<int>(tTopo.layer(detid));
1228  } else {
1229  edm::LogVerbatim("Tracklet") << "WARNING -- neither TOB or TID stub, shouldn't happen...";
1230  layer = -1;
1231  }
1232 
1233  int isPSmodule = 0;
1234  if (topol->nrows() == 960)
1235  isPSmodule = 1;
1236 
1237  MeasurementPoint coords = tempStubPtr->clusterRef(0)->findAverageLocalCoordinatesCentered();
1238  LocalPoint clustlp = topol->localPosition(coords);
1239  GlobalPoint posStub = theGeomDet->surface().toGlobal(clustlp);
1240 
1241  double tmp_stub_x = posStub.x();
1242  double tmp_stub_y = posStub.y();
1243  double tmp_stub_z = posStub.z();
1244 
1245  float trigDisplace = tempStubPtr->rawBend();
1246  float trigOffset = tempStubPtr->bendOffset();
1247  float trigPos = tempStubPtr->innerClusterPosition();
1248  float trigBend = tempStubPtr->bendFE();
1249 
1250  m_allstub_x->push_back(tmp_stub_x);
1251  m_allstub_y->push_back(tmp_stub_y);
1252  m_allstub_z->push_back(tmp_stub_z);
1253  m_allstub_isBarrel->push_back(isBarrel);
1254  m_allstub_layer->push_back(layer);
1255  m_allstub_isPSmodule->push_back(isPSmodule);
1256  m_allstub_trigDisplace->push_back(trigDisplace);
1257  m_allstub_trigOffset->push_back(trigOffset);
1258  m_allstub_trigPos->push_back(trigPos);
1259  m_allstub_trigBend->push_back(trigBend);
1260 
1261  // matched to tracking particle?
1262  edm::Ptr<TrackingParticle> my_tp = MCTruthTTStubHandle->findTrackingParticlePtr(tempStubPtr);
1263 
1264  int myTP_pdgid = -999;
1265  float myTP_pt = -999;
1266  float myTP_eta = -999;
1267  float myTP_phi = -999;
1268 
1269  if (my_tp.isNull() == false) {
1270  int tmp_eventid = my_tp->eventId().event();
1271  if (tmp_eventid > 0)
1272  continue; // this means stub from pileup track
1273  myTP_pdgid = my_tp->pdgId();
1274  myTP_pt = my_tp->p4().pt();
1275  myTP_eta = my_tp->p4().eta();
1276  myTP_phi = my_tp->p4().phi();
1277  }
1278  int tmp_stub_genuine = 0;
1279  if (MCTruthTTStubHandle->isGenuine(tempStubPtr))
1280  tmp_stub_genuine = 1;
1281 
1282  m_allstub_matchTP_pdgid->push_back(myTP_pdgid);
1283  m_allstub_matchTP_pt->push_back(myTP_pt);
1284  m_allstub_matchTP_eta->push_back(myTP_eta);
1285  m_allstub_matchTP_phi->push_back(myTP_phi);
1286  m_allstub_genuine->push_back(tmp_stub_genuine);
1287  }
1288  }
1289  }
1290 
1291  // ----------------------------------------------------------------------------------------------
1292  // loop over (prompt) L1 tracks
1293  // ----------------------------------------------------------------------------------------------
1294  if (SaveAllTracks && (Displaced == "Prompt" || Displaced == "Both")) {
1295  if (DebugMode) {
1296  edm::LogVerbatim("Tracklet") << "\n Loop over L1 tracks!";
1297  edm::LogVerbatim("Tracklet") << "\n Looking at " << Displaced << " tracks!";
1298  }
1299 
1300  int this_l1track = 0;
1301  for (iterL1Track = TTTrackHandle->begin(); iterL1Track != TTTrackHandle->end(); iterL1Track++) {
1302  edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_> > l1track_ptr(TTTrackHandle, this_l1track);
1303  this_l1track++;
1304 
1305  float tmp_trk_pt = iterL1Track->momentum().perp();
1306  float tmp_trk_eta = iterL1Track->momentum().eta();
1307  float tmp_trk_phi = iterL1Track->momentum().phi();
1308  float tmp_trk_z0 = iterL1Track->z0(); //cm
1309  int tmp_trk_nFitPars = iterL1Track->nFitPars(); //4 or 5
1310 
1311  float tmp_trk_d0 = -999;
1312  if (tmp_trk_nFitPars == 5) {
1313  float tmp_trk_x0 = iterL1Track->POCA().x();
1314  float tmp_trk_y0 = iterL1Track->POCA().y();
1315  tmp_trk_d0 = -tmp_trk_x0 * sin(tmp_trk_phi) + tmp_trk_y0 * cos(tmp_trk_phi);
1316  // tmp_trk_d0 = iterL1Track->d0();
1317  }
1318 
1319  float tmp_trk_chi2 = iterL1Track->chi2();
1320  float tmp_trk_chi2dof = iterL1Track->chi2Red();
1321  float tmp_trk_chi2rphi = iterL1Track->chi2XY();
1322  float tmp_trk_chi2rz = iterL1Track->chi2Z();
1323  float tmp_trk_bendchi2 = iterL1Track->stubPtConsistency();
1324 
1325  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
1326  stubRefs = iterL1Track->getStubRefs();
1327  int tmp_trk_nstub = (int)stubRefs.size();
1328  int tmp_trk_seed = 0;
1329  tmp_trk_seed = (int)iterL1Track->trackSeedType();
1330  int tmp_trk_hitpattern = 0;
1331  tmp_trk_hitpattern = (int)iterL1Track->hitPattern();
1332  unsigned int tmp_trk_phiSector = iterL1Track->phiSector();
1333 
1334  // ----------------------------------------------------------------------------------------------
1335  // loop over stubs on tracks
1336  int tmp_trk_dhits = 0;
1337  int tmp_trk_lhits = 0;
1338  if (true) {
1339  // loop over stubs
1340  for (int is = 0; is < tmp_trk_nstub; is++) {
1341  //detID of stub
1342  DetId detIdStub = tGeom.idToDet((stubRefs.at(is)->clusterRef(0))->getDetId())->geographicalId();
1343  MeasurementPoint coords = stubRefs.at(is)->clusterRef(0)->findAverageLocalCoordinatesCentered();
1344  const GeomDet* theGeomDet = tGeom.idToDet(detIdStub);
1345  Global3DPoint posStub = theGeomDet->surface().toGlobal(theGeomDet->topology().localPosition(coords));
1346 
1347  double x = posStub.x();
1348  double y = posStub.y();
1349  double z = posStub.z();
1350 
1351  int layer = -999999;
1352  if (detIdStub.subdetId() == StripSubdetector::TOB) {
1353  layer = static_cast<int>(tTopo.layer(detIdStub));
1354  if (DebugMode)
1355  edm::LogVerbatim("Tracklet")
1356  << " stub in layer " << layer << " at position x y z = " << x << " " << y << " " << z;
1357  tmp_trk_lhits += pow(10, layer - 1);
1358  } else if (detIdStub.subdetId() == StripSubdetector::TID) {
1359  layer = static_cast<int>(tTopo.layer(detIdStub));
1360  if (DebugMode)
1361  edm::LogVerbatim("Tracklet")
1362  << " stub in disk " << layer << " at position x y z = " << x << " " << y << " " << z;
1363  tmp_trk_dhits += pow(10, layer - 1);
1364  }
1365  } //end loop over stubs
1366  }
1367  // ----------------------------------------------------------------------------------------------
1368 
1369  int tmp_trk_genuine = 0;
1370  int tmp_trk_loose = 0;
1371  int tmp_trk_unknown = 0;
1372  int tmp_trk_combinatoric = 0;
1373  if (MCTruthTTTrackHandle->isLooselyGenuine(l1track_ptr))
1374  tmp_trk_loose = 1;
1375  if (MCTruthTTTrackHandle->isGenuine(l1track_ptr))
1376  tmp_trk_genuine = 1;
1377  if (MCTruthTTTrackHandle->isUnknown(l1track_ptr))
1378  tmp_trk_unknown = 1;
1379  if (MCTruthTTTrackHandle->isCombinatoric(l1track_ptr))
1380  tmp_trk_combinatoric = 1;
1381 
1382  if (DebugMode) {
1383  edm::LogVerbatim("Tracklet") << "L1 track,"
1384  << " pt: " << tmp_trk_pt << " eta: " << tmp_trk_eta << " phi: " << tmp_trk_phi
1385  << " z0: " << tmp_trk_z0 << " chi2: " << tmp_trk_chi2
1386  << " chi2rphi: " << tmp_trk_chi2rphi << " chi2rz: " << tmp_trk_chi2rz
1387  << " nstub: " << tmp_trk_nstub;
1388  if (tmp_trk_genuine)
1389  edm::LogVerbatim("Tracklet") << " (is genuine)";
1390  if (tmp_trk_unknown)
1391  edm::LogVerbatim("Tracklet") << " (is unknown)";
1392  if (tmp_trk_combinatoric)
1393  edm::LogVerbatim("Tracklet") << " (is combinatoric)";
1394  }
1395 
1396  m_trk_pt->push_back(tmp_trk_pt);
1397  m_trk_eta->push_back(tmp_trk_eta);
1398  m_trk_phi->push_back(tmp_trk_phi);
1399  m_trk_z0->push_back(tmp_trk_z0);
1400  if (tmp_trk_nFitPars == 5)
1401  m_trk_d0->push_back(tmp_trk_d0);
1402  else
1403  m_trk_d0->push_back(999.);
1404  m_trk_chi2->push_back(tmp_trk_chi2);
1405  m_trk_chi2dof->push_back(tmp_trk_chi2dof);
1406  m_trk_chi2rphi->push_back(tmp_trk_chi2rphi);
1407  m_trk_chi2rz->push_back(tmp_trk_chi2rz);
1408  m_trk_bendchi2->push_back(tmp_trk_bendchi2);
1409  m_trk_nstub->push_back(tmp_trk_nstub);
1410  m_trk_dhits->push_back(tmp_trk_dhits);
1411  m_trk_lhits->push_back(tmp_trk_lhits);
1412  m_trk_seed->push_back(tmp_trk_seed);
1413  m_trk_hitpattern->push_back(tmp_trk_hitpattern);
1414  m_trk_phiSector->push_back(tmp_trk_phiSector);
1415  m_trk_genuine->push_back(tmp_trk_genuine);
1416  m_trk_loose->push_back(tmp_trk_loose);
1417  m_trk_unknown->push_back(tmp_trk_unknown);
1418  m_trk_combinatoric->push_back(tmp_trk_combinatoric);
1419 
1420  // ----------------------------------------------------------------------------------------------
1421  // for studying the fake rate
1422  // ----------------------------------------------------------------------------------------------
1423  edm::Ptr<TrackingParticle> my_tp = MCTruthTTTrackHandle->findTrackingParticlePtr(l1track_ptr);
1424 
1425  int myFake = 0;
1426  int myTP_pdgid = -999;
1427  float myTP_pt = -999;
1428  float myTP_eta = -999;
1429  float myTP_phi = -999;
1430  float myTP_z0 = -999;
1431  float myTP_dxy = -999;
1432 
1433  if (my_tp.isNull())
1434  myFake = 0;
1435  else {
1436  int tmp_eventid = my_tp->eventId().event();
1437  if (tmp_eventid > 0)
1438  myFake = 2;
1439  else
1440  myFake = 1;
1441 
1442  myTP_pdgid = my_tp->pdgId();
1443  myTP_pt = my_tp->p4().pt();
1444  myTP_eta = my_tp->p4().eta();
1445  myTP_phi = my_tp->p4().phi();
1446  myTP_z0 = my_tp->vertex().z();
1447 
1448  float myTP_x0 = my_tp->vertex().x();
1449  float myTP_y0 = my_tp->vertex().y();
1450  myTP_dxy = sqrt(myTP_x0 * myTP_x0 + myTP_y0 * myTP_y0);
1451 
1452  if (DebugMode) {
1453  edm::LogVerbatim("Tracklet") << "TP matched to track has pt = " << my_tp->p4().pt()
1454  << " eta = " << my_tp->momentum().eta() << " phi = " << my_tp->momentum().phi()
1455  << " z0 = " << my_tp->vertex().z() << " pdgid = " << my_tp->pdgId()
1456  << " dxy = " << myTP_dxy;
1457  }
1458  }
1459 
1460  m_trk_fake->push_back(myFake);
1461  m_trk_matchtp_pdgid->push_back(myTP_pdgid);
1462  m_trk_matchtp_pt->push_back(myTP_pt);
1463  m_trk_matchtp_eta->push_back(myTP_eta);
1464  m_trk_matchtp_phi->push_back(myTP_phi);
1465  m_trk_matchtp_z0->push_back(myTP_z0);
1466  m_trk_matchtp_dxy->push_back(myTP_dxy);
1467  } //end track loop
1468  } //end if SaveAllTracks
1469 
1470  // ----------------------------------------------------------------------------------------------
1471  // loop over (extended) L1 tracks
1472  // ----------------------------------------------------------------------------------------------
1473  if (SaveAllTracks && (Displaced == "Displaced" || Displaced == "Both")) {
1474  if (DebugMode) {
1475  edm::LogVerbatim("Tracklet") << "\n Loop over L1 tracks!";
1476  edm::LogVerbatim("Tracklet") << "\n Looking at " << Displaced << " tracks!";
1477  }
1478 
1479  int this_l1track = 0;
1480  for (iterL1Track = TTTrackExtendedHandle->begin(); iterL1Track != TTTrackExtendedHandle->end(); iterL1Track++) {
1481  edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_> > l1track_ptr(TTTrackExtendedHandle, this_l1track);
1482  this_l1track++;
1483 
1484  float tmp_trk_pt = iterL1Track->momentum().perp();
1485  float tmp_trk_eta = iterL1Track->momentum().eta();
1486  float tmp_trk_phi = iterL1Track->momentum().phi();
1487  float tmp_trk_z0 = iterL1Track->z0(); //cm
1488  int tmp_trk_nFitPars = iterL1Track->nFitPars(); //4 or 5
1489 
1490  float tmp_trk_d0 = -999;
1491  if (tmp_trk_nFitPars == 5) {
1492  float tmp_trk_x0 = iterL1Track->POCA().x();
1493  float tmp_trk_y0 = iterL1Track->POCA().y();
1494  tmp_trk_d0 = -tmp_trk_x0 * sin(tmp_trk_phi) + tmp_trk_y0 * cos(tmp_trk_phi);
1495  // tmp_trk_d0 = iterL1Track->d0();
1496  }
1497 
1498  float tmp_trk_chi2 = iterL1Track->chi2();
1499  float tmp_trk_chi2dof = iterL1Track->chi2Red();
1500  float tmp_trk_chi2rphi = iterL1Track->chi2XY();
1501  float tmp_trk_chi2rz = iterL1Track->chi2Z();
1502  float tmp_trk_bendchi2 = iterL1Track->stubPtConsistency();
1503 
1504  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
1505  stubRefs = iterL1Track->getStubRefs();
1506  int tmp_trk_nstub = (int)stubRefs.size();
1507  int tmp_trk_seed = 0;
1508  tmp_trk_seed = (int)iterL1Track->trackSeedType();
1509  int tmp_trk_hitpattern = 0;
1510  tmp_trk_hitpattern = (int)iterL1Track->hitPattern();
1511  unsigned int tmp_trk_phiSector = iterL1Track->phiSector();
1512 
1513  // ----------------------------------------------------------------------------------------------
1514  // loop over stubs on tracks
1515  int tmp_trk_dhits = 0;
1516  int tmp_trk_lhits = 0;
1517  if (true) {
1518  // loop over stubs
1519  for (int is = 0; is < tmp_trk_nstub; is++) {
1520  //detID of stub
1521  DetId detIdStub = tGeom.idToDet((stubRefs.at(is)->clusterRef(0))->getDetId())->geographicalId();
1522  MeasurementPoint coords = stubRefs.at(is)->clusterRef(0)->findAverageLocalCoordinatesCentered();
1523  const GeomDet* theGeomDet = tGeom.idToDet(detIdStub);
1524  Global3DPoint posStub = theGeomDet->surface().toGlobal(theGeomDet->topology().localPosition(coords));
1525 
1526  double x = posStub.x();
1527  double y = posStub.y();
1528  double z = posStub.z();
1529 
1530  int layer = -999999;
1531  if (detIdStub.subdetId() == StripSubdetector::TOB) {
1532  layer = static_cast<int>(tTopo.layer(detIdStub));
1533  if (DebugMode)
1534  edm::LogVerbatim("Tracklet")
1535  << " stub in layer " << layer << " at position x y z = " << x << " " << y << " " << z;
1536  tmp_trk_lhits += pow(10, layer - 1);
1537  } else if (detIdStub.subdetId() == StripSubdetector::TID) {
1538  layer = static_cast<int>(tTopo.layer(detIdStub));
1539  if (DebugMode)
1540  edm::LogVerbatim("Tracklet")
1541  << " stub in disk " << layer << " at position x y z = " << x << " " << y << " " << z;
1542  tmp_trk_dhits += pow(10, layer - 1);
1543  }
1544  } //end loop over stubs
1545  }
1546  // ----------------------------------------------------------------------------------------------
1547 
1548  int tmp_trk_genuine = 0;
1549  int tmp_trk_loose = 0;
1550  int tmp_trk_unknown = 0;
1551  int tmp_trk_combinatoric = 0;
1552  if (MCTruthTTTrackExtendedHandle->isLooselyGenuine(l1track_ptr))
1553  tmp_trk_loose = 1;
1554  if (MCTruthTTTrackExtendedHandle->isGenuine(l1track_ptr))
1555  tmp_trk_genuine = 1;
1556  if (MCTruthTTTrackExtendedHandle->isUnknown(l1track_ptr))
1557  tmp_trk_unknown = 1;
1558  if (MCTruthTTTrackExtendedHandle->isCombinatoric(l1track_ptr))
1559  tmp_trk_combinatoric = 1;
1560 
1561  if (DebugMode) {
1562  edm::LogVerbatim("Tracklet") << "L1 track,"
1563  << " pt: " << tmp_trk_pt << " eta: " << tmp_trk_eta << " phi: " << tmp_trk_phi
1564  << " z0: " << tmp_trk_z0 << " chi2: " << tmp_trk_chi2
1565  << " chi2rphi: " << tmp_trk_chi2rphi << " chi2rz: " << tmp_trk_chi2rz
1566  << " nstub: " << tmp_trk_nstub;
1567  if (tmp_trk_genuine)
1568  edm::LogVerbatim("Tracklet") << " (is genuine)";
1569  if (tmp_trk_unknown)
1570  edm::LogVerbatim("Tracklet") << " (is unknown)";
1571  if (tmp_trk_combinatoric)
1572  edm::LogVerbatim("Tracklet") << " (is combinatoric)";
1573  }
1574 
1575  m_trkExt_pt->push_back(tmp_trk_pt);
1576  m_trkExt_eta->push_back(tmp_trk_eta);
1577  m_trkExt_phi->push_back(tmp_trk_phi);
1578  m_trkExt_z0->push_back(tmp_trk_z0);
1579  if (tmp_trk_nFitPars == 5)
1580  m_trkExt_d0->push_back(tmp_trk_d0);
1581  else
1582  m_trkExt_d0->push_back(999.);
1583  m_trkExt_chi2->push_back(tmp_trk_chi2);
1584  m_trkExt_chi2dof->push_back(tmp_trk_chi2dof);
1585  m_trkExt_chi2rphi->push_back(tmp_trk_chi2rphi);
1586  m_trkExt_chi2rz->push_back(tmp_trk_chi2rz);
1587  m_trkExt_bendchi2->push_back(tmp_trk_bendchi2);
1588  m_trkExt_nstub->push_back(tmp_trk_nstub);
1589  m_trkExt_dhits->push_back(tmp_trk_dhits);
1590  m_trkExt_lhits->push_back(tmp_trk_lhits);
1591  m_trkExt_seed->push_back(tmp_trk_seed);
1592  m_trkExt_hitpattern->push_back(tmp_trk_hitpattern);
1593  m_trkExt_phiSector->push_back(tmp_trk_phiSector);
1594  m_trkExt_genuine->push_back(tmp_trk_genuine);
1595  m_trkExt_loose->push_back(tmp_trk_loose);
1596  m_trkExt_unknown->push_back(tmp_trk_unknown);
1597  m_trkExt_combinatoric->push_back(tmp_trk_combinatoric);
1598 
1599  // ----------------------------------------------------------------------------------------------
1600  // for studying the fake rate
1601  // ----------------------------------------------------------------------------------------------
1602  edm::Ptr<TrackingParticle> my_tp = MCTruthTTTrackExtendedHandle->findTrackingParticlePtr(l1track_ptr);
1603 
1604  int myFake = 0;
1605  int myTP_pdgid = -999;
1606  float myTP_pt = -999;
1607  float myTP_eta = -999;
1608  float myTP_phi = -999;
1609  float myTP_z0 = -999;
1610  float myTP_dxy = -999;
1611 
1612  if (my_tp.isNull())
1613  myFake = 0;
1614  else {
1615  int tmp_eventid = my_tp->eventId().event();
1616  if (tmp_eventid > 0)
1617  myFake = 2;
1618  else
1619  myFake = 1;
1620 
1621  myTP_pdgid = my_tp->pdgId();
1622  myTP_pt = my_tp->p4().pt();
1623  myTP_eta = my_tp->p4().eta();
1624  myTP_phi = my_tp->p4().phi();
1625  myTP_z0 = my_tp->vertex().z();
1626 
1627  float myTP_x0 = my_tp->vertex().x();
1628  float myTP_y0 = my_tp->vertex().y();
1629  myTP_dxy = sqrt(myTP_x0 * myTP_x0 + myTP_y0 * myTP_y0);
1630 
1631  if (DebugMode) {
1632  edm::LogVerbatim("Tracklet") << "TP matched to track has pt = " << my_tp->p4().pt()
1633  << " eta = " << my_tp->momentum().eta() << " phi = " << my_tp->momentum().phi()
1634  << " z0 = " << my_tp->vertex().z() << " pdgid = " << my_tp->pdgId()
1635  << " dxy = " << myTP_dxy;
1636  }
1637  }
1638 
1639  m_trkExt_fake->push_back(myFake);
1640  m_trkExt_matchtp_pdgid->push_back(myTP_pdgid);
1641  m_trkExt_matchtp_pt->push_back(myTP_pt);
1642  m_trkExt_matchtp_eta->push_back(myTP_eta);
1643  m_trkExt_matchtp_phi->push_back(myTP_phi);
1644  m_trkExt_matchtp_z0->push_back(myTP_z0);
1645  m_trkExt_matchtp_dxy->push_back(myTP_dxy);
1646  } //end track loop
1647  } //end if SaveAllTracks (displaced)
1648 
1649  // ----------------------------------------------------------------------------------------------
1650  // loop over tracking particles
1651  // ----------------------------------------------------------------------------------------------
1652  if (DebugMode)
1653  edm::LogVerbatim("Tracklet") << "\n Loop over tracking particles!";
1654 
1655  int this_tp = 0;
1656  std::vector<TrackingParticle>::const_iterator iterTP;
1657  for (iterTP = TrackingParticleHandle->begin(); iterTP != TrackingParticleHandle->end(); ++iterTP) {
1658  edm::Ptr<TrackingParticle> tp_ptr(TrackingParticleHandle, this_tp);
1659  this_tp++;
1660 
1661  int tmp_eventid = iterTP->eventId().event();
1662  if (MyProcess != 1 && tmp_eventid > 0)
1663  continue; //only care about tracking particles from the primary interaction (except for MyProcess==1, i.e. looking at all TPs)
1664 
1665  float tmp_tp_pt = iterTP->pt();
1666  float tmp_tp_eta = iterTP->eta();
1667  float tmp_tp_phi = iterTP->phi();
1668  float tmp_tp_vz = iterTP->vz();
1669  float tmp_tp_vx = iterTP->vx();
1670  float tmp_tp_vy = iterTP->vy();
1671  int tmp_tp_pdgid = iterTP->pdgId();
1672  float tmp_tp_z0_prod = tmp_tp_vz;
1673  float tmp_tp_d0_prod = tmp_tp_vx * sin(tmp_tp_phi) - tmp_tp_vy * cos(tmp_tp_phi);
1674 
1675  if (MyProcess == 13 && abs(tmp_tp_pdgid) != 13)
1676  continue;
1677  if (MyProcess == 11 && abs(tmp_tp_pdgid) != 11)
1678  continue;
1679  if ((MyProcess == 6 || MyProcess == 15 || MyProcess == 211) && abs(tmp_tp_pdgid) != 211)
1680  continue;
1681 
1682  if (tmp_tp_pt < TP_minPt)
1683  continue;
1684  if (std::abs(tmp_tp_eta) > TP_maxEta)
1685  continue;
1686 
1687  // ----------------------------------------------------------------------------------------------
1688  // get d0/z0 propagated back to the IP
1689 
1690  float tmp_tp_t = tan(2.0 * atan(1.0) - 2.0 * atan(exp(-tmp_tp_eta)));
1691  float delx = -tmp_tp_vx;
1692  float dely = -tmp_tp_vy;
1693 
1694  float A = 0.01 * 0.5696;
1695  float Kmagnitude = A / tmp_tp_pt;
1696  float tmp_tp_charge = tp_ptr->charge();
1697  float K = Kmagnitude * tmp_tp_charge;
1698  float d = 0;
1699  float tmp_tp_x0p = delx - (d + 1. / (2. * K) * sin(tmp_tp_phi));
1700  float tmp_tp_y0p = dely + (d + 1. / (2. * K) * cos(tmp_tp_phi));
1701  float tmp_tp_rp = sqrt(tmp_tp_x0p * tmp_tp_x0p + tmp_tp_y0p * tmp_tp_y0p);
1702  float tmp_tp_d0 = tmp_tp_charge * tmp_tp_rp - (1. / (2. * K));
1703  tmp_tp_d0 = tmp_tp_d0 * (-1); //fix d0 sign
1704  const double pi = 4.0 * atan(1.0);
1705  float delphi = tmp_tp_phi - atan2(-K * tmp_tp_x0p, K * tmp_tp_y0p);
1706  if (delphi < -pi)
1707  delphi += 2.0 * pi;
1708  if (delphi > pi)
1709  delphi -= 2.0 * pi;
1710  float tmp_tp_z0 = tmp_tp_vz + tmp_tp_t * delphi / (2.0 * K);
1711  // ----------------------------------------------------------------------------------------------
1712 
1713  if (std::abs(tmp_tp_z0) > TP_maxZ0)
1714  continue;
1715 
1716  // for pions in ttbar, only consider TPs coming from near the IP!
1717  float dxy = sqrt(tmp_tp_vx * tmp_tp_vx + tmp_tp_vy * tmp_tp_vy);
1718  float tmp_tp_dxy = dxy;
1719  if (MyProcess == 6 && (dxy > 1.0))
1720  continue;
1721 
1722  if (DebugMode && (Displaced == "Prompt" || Displaced == "Both"))
1723  edm::LogVerbatim("Tracklet") << "Tracking particle, pt: " << tmp_tp_pt << " eta: " << tmp_tp_eta
1724  << " phi: " << tmp_tp_phi << " z0: " << tmp_tp_z0 << " d0: " << tmp_tp_d0
1725  << " z_prod: " << tmp_tp_z0_prod << " d_prod: " << tmp_tp_d0_prod
1726  << " pdgid: " << tmp_tp_pdgid << " eventID: " << iterTP->eventId().event()
1727  << " ttclusters " << MCTruthTTClusterHandle->findTTClusterRefs(tp_ptr).size()
1728  << " ttstubs " << MCTruthTTStubHandle->findTTStubRefs(tp_ptr).size() << " tttracks "
1729  << MCTruthTTTrackHandle->findTTTrackPtrs(tp_ptr).size();
1730 
1731  // ----------------------------------------------------------------------------------------------
1732  // only consider TPs associated with >= 1 cluster, or >= X stubs, or have stubs in >= X layers (configurable options)
1733  if (MCTruthTTClusterHandle->findTTClusterRefs(tp_ptr).empty()) {
1734  if (DebugMode)
1735  edm::LogVerbatim("Tracklet") << "No matching TTClusters for TP, continuing...";
1736  continue;
1737  }
1738 
1739  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
1740  theStubRefs = MCTruthTTStubHandle->findTTStubRefs(tp_ptr);
1741  int nStubTP = (int)theStubRefs.size();
1742 
1743  // how many layers/disks have stubs?
1744  int hasStubInLayer[11] = {0};
1745  for (auto& theStubRef : theStubRefs) {
1746  DetId detid(theStubRef->getDetId());
1747 
1748  int layer = -1;
1749  if (detid.subdetId() == StripSubdetector::TOB) {
1750  layer = static_cast<int>(tTopo.layer(detid)) - 1; //fill in array as entries 0-5
1751  } else if (detid.subdetId() == StripSubdetector::TID) {
1752  layer = static_cast<int>(tTopo.layer(detid)) + 5; //fill in array as entries 6-10
1753  }
1754 
1755  //treat genuine stubs separately (==2 is genuine, ==1 is not)
1756  if (MCTruthTTStubHandle->findTrackingParticlePtr(theStubRef).isNull() && hasStubInLayer[layer] < 2)
1757  hasStubInLayer[layer] = 1;
1758  else
1759  hasStubInLayer[layer] = 2;
1760  }
1761 
1762  int nStubLayerTP = 0;
1763  int nStubLayerTP_g = 0;
1764  for (int isum : hasStubInLayer) {
1765  if (isum >= 1)
1766  nStubLayerTP += 1;
1767  if (isum == 2)
1768  nStubLayerTP_g += 1;
1769  }
1770 
1771  if (DebugMode)
1772  edm::LogVerbatim("Tracklet") << "TP is associated with " << nStubTP << " stubs, and has stubs in " << nStubLayerTP
1773  << " different layers/disks, and has GENUINE stubs in " << nStubLayerTP_g
1774  << " layers ";
1775 
1776  if (TP_minNStub > 0) {
1777  if (DebugMode)
1778  edm::LogVerbatim("Tracklet") << "Only consider TPs with >= " << TP_minNStub << " stubs";
1779  if (nStubTP < TP_minNStub) {
1780  if (DebugMode)
1781  edm::LogVerbatim("Tracklet") << "TP fails minimum nbr stubs requirement! Continuing...";
1782  continue;
1783  }
1784  }
1785  if (TP_minNStubLayer > 0) {
1786  if (DebugMode)
1787  edm::LogVerbatim("Tracklet") << "Only consider TPs with stubs in >= " << TP_minNStubLayer << " layers/disks";
1788  if (nStubLayerTP < TP_minNStubLayer) {
1789  if (DebugMode)
1790  edm::LogVerbatim("Tracklet") << "TP fails stubs in minimum nbr of layers/disks requirement! Continuing...";
1791  continue;
1792  }
1793  }
1794 
1795  m_tp_pt->push_back(tmp_tp_pt);
1796  m_tp_eta->push_back(tmp_tp_eta);
1797  m_tp_phi->push_back(tmp_tp_phi);
1798  m_tp_dxy->push_back(tmp_tp_dxy);
1799  m_tp_z0->push_back(tmp_tp_z0);
1800  m_tp_d0->push_back(tmp_tp_d0);
1801  m_tp_z0_prod->push_back(tmp_tp_z0_prod);
1802  m_tp_d0_prod->push_back(tmp_tp_d0_prod);
1803  m_tp_pdgid->push_back(tmp_tp_pdgid);
1804  m_tp_nstub->push_back(nStubTP);
1805  m_tp_eventid->push_back(tmp_eventid);
1806  m_tp_charge->push_back(tmp_tp_charge);
1807 
1808  // ----------------------------------------------------------------------------------------------
1809  // look for L1 tracks (prompt) matched to the tracking particle
1810  if (Displaced == "Prompt" || Displaced == "Both") {
1811  std::vector<edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_> > > matchedTracks =
1812  MCTruthTTTrackHandle->findTTTrackPtrs(tp_ptr);
1813 
1814  int nMatch = 0;
1815  int i_track = -1;
1816  float i_chi2dof = 99999;
1817 
1818  if (!matchedTracks.empty()) {
1819  if (DebugMode && (matchedTracks.size() > 1))
1820  edm::LogVerbatim("Tracklet") << "TrackingParticle has more than one matched L1 track!";
1821 
1822  // ----------------------------------------------------------------------------------------------
1823  // loop over matched L1 tracks
1824  // here, "match" means tracks that can be associated to a TrackingParticle with at least one hit of at least one of its clusters
1825  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/SLHCTrackerTriggerSWTools#MC_truth_for_TTTrack
1826 
1827  for (int it = 0; it < (int)matchedTracks.size(); it++) {
1828  bool tmp_trk_genuine = false;
1829  bool tmp_trk_loosegenuine = false;
1830  if (MCTruthTTTrackHandle->isGenuine(matchedTracks.at(it)))
1831  tmp_trk_genuine = true;
1832  if (MCTruthTTTrackHandle->isLooselyGenuine(matchedTracks.at(it)))
1833  tmp_trk_loosegenuine = true;
1834  if (!tmp_trk_loosegenuine)
1835  continue;
1836 
1837  if (DebugMode) {
1838  if (MCTruthTTTrackHandle->findTrackingParticlePtr(matchedTracks.at(it)).isNull()) {
1839  edm::LogVerbatim("Tracklet") << "track matched to TP is NOT uniquely matched to a TP";
1840  } else {
1841  edm::Ptr<TrackingParticle> my_tp = MCTruthTTTrackHandle->findTrackingParticlePtr(matchedTracks.at(it));
1842  edm::LogVerbatim("Tracklet") << "TP matched to track matched to TP ... tp pt = " << my_tp->p4().pt()
1843  << " eta = " << my_tp->momentum().eta()
1844  << " phi = " << my_tp->momentum().phi() << " z0 = " << my_tp->vertex().z();
1845  }
1846  edm::LogVerbatim("Tracklet") << " ... matched L1 track has pt = "
1847  << matchedTracks.at(it)->momentum().perp()
1848  << " eta = " << matchedTracks.at(it)->momentum().eta()
1849  << " phi = " << matchedTracks.at(it)->momentum().phi()
1850  << " chi2 = " << matchedTracks.at(it)->chi2()
1851  << " consistency = " << matchedTracks.at(it)->stubPtConsistency()
1852  << " z0 = " << matchedTracks.at(it)->z0()
1853  << " nstub = " << matchedTracks.at(it)->getStubRefs().size();
1854  if (tmp_trk_genuine)
1855  edm::LogVerbatim("Tracklet") << " (genuine!) ";
1856  if (tmp_trk_loosegenuine)
1857  edm::LogVerbatim("Tracklet") << " (loose genuine!) ";
1858  }
1859 
1860  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
1861  stubRefs = matchedTracks.at(it)->getStubRefs();
1862  int tmp_trk_nstub = stubRefs.size();
1863 
1864  if (tmp_trk_nstub < L1Tk_minNStub)
1865  continue;
1866 
1867  float dmatch_pt = 999;
1868  float dmatch_eta = 999;
1869  float dmatch_phi = 999;
1870  int match_id = 999;
1871 
1872  edm::Ptr<TrackingParticle> my_tp = MCTruthTTTrackHandle->findTrackingParticlePtr(matchedTracks.at(it));
1873  dmatch_pt = std::abs(my_tp->p4().pt() - tmp_tp_pt);
1874  dmatch_eta = std::abs(my_tp->p4().eta() - tmp_tp_eta);
1875  dmatch_phi = std::abs(my_tp->p4().phi() - tmp_tp_phi);
1876  match_id = my_tp->pdgId();
1877  float tmp_trk_chi2dof = matchedTracks.at(it)->chi2Red();
1878 
1879  // ensure that track is uniquely matched to the TP we are looking at!
1880  if (dmatch_pt < 0.1 && dmatch_eta < 0.1 && dmatch_phi < 0.1 && tmp_tp_pdgid == match_id && tmp_trk_genuine) {
1881  nMatch++;
1882  if (i_track < 0 || tmp_trk_chi2dof < i_chi2dof) {
1883  i_track = it;
1884  i_chi2dof = tmp_trk_chi2dof;
1885  }
1886  }
1887 
1888  } // end loop over matched L1 tracks
1889  } // end has at least 1 matched L1 track
1890  // ----------------------------------------------------------------------------------------------
1891 
1892  float tmp_matchtrk_pt = -999;
1893  float tmp_matchtrk_eta = -999;
1894  float tmp_matchtrk_phi = -999;
1895  float tmp_matchtrk_z0 = -999;
1896  float tmp_matchtrk_d0 = -999;
1897  float tmp_matchtrk_chi2 = -999;
1898  float tmp_matchtrk_chi2dof = -999;
1899  float tmp_matchtrk_chi2rphi = -999;
1900  float tmp_matchtrk_chi2rz = -999;
1901  float tmp_matchtrk_bendchi2 = -999;
1902  int tmp_matchtrk_nstub = -999;
1903  int tmp_matchtrk_dhits = -999;
1904  int tmp_matchtrk_lhits = -999;
1905  int tmp_matchtrk_seed = -999;
1906  int tmp_matchtrk_hitpattern = -999;
1907  int tmp_matchtrk_nFitPars = -999;
1908 
1909  if (nMatch > 1 && DebugMode)
1910  edm::LogVerbatim("Tracklet") << "WARNING *** 2 or more matches to genuine L1 tracks ***";
1911 
1912  if (nMatch > 0) {
1913  tmp_matchtrk_pt = matchedTracks.at(i_track)->momentum().perp();
1914  tmp_matchtrk_eta = matchedTracks.at(i_track)->momentum().eta();
1915  tmp_matchtrk_phi = matchedTracks.at(i_track)->momentum().phi();
1916  tmp_matchtrk_z0 = matchedTracks.at(i_track)->z0();
1917  tmp_matchtrk_nFitPars = matchedTracks.at(i_track)->nFitPars();
1918 
1919  if (tmp_matchtrk_nFitPars == 5) {
1920  float tmp_matchtrk_x0 = matchedTracks.at(i_track)->POCA().x();
1921  float tmp_matchtrk_y0 = matchedTracks.at(i_track)->POCA().y();
1922  tmp_matchtrk_d0 = -tmp_matchtrk_x0 * sin(tmp_matchtrk_phi) + tmp_matchtrk_y0 * cos(tmp_matchtrk_phi);
1923  // tmp_matchtrk_d0 = matchedTracks.at(i_track)->d0();
1924  }
1925 
1926  tmp_matchtrk_chi2 = matchedTracks.at(i_track)->chi2();
1927  tmp_matchtrk_chi2dof = matchedTracks.at(i_track)->chi2Red();
1928  tmp_matchtrk_chi2rphi = matchedTracks.at(i_track)->chi2XY();
1929  tmp_matchtrk_chi2rz = matchedTracks.at(i_track)->chi2Z();
1930  tmp_matchtrk_bendchi2 = matchedTracks.at(i_track)->stubPtConsistency();
1931  tmp_matchtrk_nstub = (int)matchedTracks.at(i_track)->getStubRefs().size();
1932  tmp_matchtrk_seed = (int)matchedTracks.at(i_track)->trackSeedType();
1933  tmp_matchtrk_hitpattern = (int)matchedTracks.at(i_track)->hitPattern();
1934 
1935  // ------------------------------------------------------------------------------------------
1936  tmp_matchtrk_dhits = 0;
1937  tmp_matchtrk_lhits = 0;
1938 
1939  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
1940  stubRefs = matchedTracks.at(i_track)->getStubRefs();
1941  int tmp_nstub = stubRefs.size();
1942 
1943  for (int is = 0; is < tmp_nstub; is++) {
1944  DetId detIdStub = tGeom.idToDet((stubRefs.at(is)->clusterRef(0))->getDetId())->geographicalId();
1945  int layer = -999999;
1946  if (detIdStub.subdetId() == StripSubdetector::TOB) {
1947  layer = static_cast<int>(tTopo.layer(detIdStub));
1948  tmp_matchtrk_lhits += pow(10, layer - 1);
1949  } else if (detIdStub.subdetId() == StripSubdetector::TID) {
1950  layer = static_cast<int>(tTopo.layer(detIdStub));
1951  tmp_matchtrk_dhits += pow(10, layer - 1);
1952  }
1953  }
1954  }
1955 
1956  m_tp_nmatch->push_back(nMatch);
1957 
1958  m_matchtrk_pt->push_back(tmp_matchtrk_pt);
1959  m_matchtrk_eta->push_back(tmp_matchtrk_eta);
1960  m_matchtrk_phi->push_back(tmp_matchtrk_phi);
1961  m_matchtrk_z0->push_back(tmp_matchtrk_z0);
1962  m_matchtrk_d0->push_back(tmp_matchtrk_d0);
1963  m_matchtrk_chi2->push_back(tmp_matchtrk_chi2);
1964  m_matchtrk_chi2dof->push_back(tmp_matchtrk_chi2dof);
1965  m_matchtrk_chi2rphi->push_back(tmp_matchtrk_chi2rphi);
1966  m_matchtrk_chi2rz->push_back(tmp_matchtrk_chi2rz);
1967  m_matchtrk_bendchi2->push_back(tmp_matchtrk_bendchi2);
1968  m_matchtrk_nstub->push_back(tmp_matchtrk_nstub);
1969  m_matchtrk_dhits->push_back(tmp_matchtrk_dhits);
1970  m_matchtrk_lhits->push_back(tmp_matchtrk_lhits);
1971  m_matchtrk_seed->push_back(tmp_matchtrk_seed);
1972  m_matchtrk_hitpattern->push_back(tmp_matchtrk_hitpattern);
1973  }
1974 
1975  // ----------------------------------------------------------------------------------------------
1976  // look for L1 tracks (extended) matched to the tracking particle
1977  if (Displaced == "Displaced" || Displaced == "Both") {
1978  std::vector<edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_> > > matchedTracks =
1979  MCTruthTTTrackExtendedHandle->findTTTrackPtrs(tp_ptr);
1980 
1981  int nMatch = 0;
1982  int i_track = -1;
1983  float i_chi2dof = 99999;
1984 
1985  if (!matchedTracks.empty()) {
1986  if (DebugMode && (matchedTracks.size() > 1))
1987  edm::LogVerbatim("Tracklet") << "TrackingParticle has more than one matched L1 track!";
1988 
1989  // ----------------------------------------------------------------------------------------------
1990  // loop over matched L1 tracks
1991  // here, "match" means tracks that can be associated to a TrackingParticle with at least one hit of at least one of its clusters
1992  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/SLHCTrackerTriggerSWTools#MC_truth_for_TTTrack
1993 
1994  for (int it = 0; it < (int)matchedTracks.size(); it++) {
1995  bool tmp_trk_genuine = false;
1996  bool tmp_trk_loosegenuine = false;
1997  if (MCTruthTTTrackExtendedHandle->isGenuine(matchedTracks.at(it)))
1998  tmp_trk_genuine = true;
1999  if (MCTruthTTTrackExtendedHandle->isLooselyGenuine(matchedTracks.at(it)))
2000  tmp_trk_loosegenuine = true;
2001  if (!tmp_trk_loosegenuine)
2002  continue;
2003 
2004  if (DebugMode) {
2005  if (MCTruthTTTrackExtendedHandle->findTrackingParticlePtr(matchedTracks.at(it)).isNull()) {
2006  edm::LogVerbatim("Tracklet") << "track matched to TP is NOT uniquely matched to a TP";
2007  } else {
2009  MCTruthTTTrackExtendedHandle->findTrackingParticlePtr(matchedTracks.at(it));
2010  edm::LogVerbatim("Tracklet") << "TP matched to track matched to TP ... tp pt = " << my_tp->p4().pt()
2011  << " eta = " << my_tp->momentum().eta()
2012  << " phi = " << my_tp->momentum().phi() << " z0 = " << my_tp->vertex().z();
2013  }
2014  edm::LogVerbatim("Tracklet") << " ... matched L1 track has pt = "
2015  << matchedTracks.at(it)->momentum().perp()
2016  << " eta = " << matchedTracks.at(it)->momentum().eta()
2017  << " phi = " << matchedTracks.at(it)->momentum().phi()
2018  << " chi2 = " << matchedTracks.at(it)->chi2()
2019  << " consistency = " << matchedTracks.at(it)->stubPtConsistency()
2020  << " z0 = " << matchedTracks.at(it)->z0()
2021  << " nstub = " << matchedTracks.at(it)->getStubRefs().size();
2022  if (tmp_trk_genuine)
2023  edm::LogVerbatim("Tracklet") << " (genuine!) ";
2024  if (tmp_trk_loosegenuine)
2025  edm::LogVerbatim("Tracklet") << " (loose genuine!) ";
2026  }
2027 
2028  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
2029  stubRefs = matchedTracks.at(it)->getStubRefs();
2030  int tmp_trk_nstub = stubRefs.size();
2031 
2032  if (tmp_trk_nstub < L1Tk_minNStub)
2033  continue;
2034 
2035  float dmatch_pt = 999;
2036  float dmatch_eta = 999;
2037  float dmatch_phi = 999;
2038  int match_id = 999;
2039 
2041  MCTruthTTTrackExtendedHandle->findTrackingParticlePtr(matchedTracks.at(it));
2042  dmatch_pt = std::abs(my_tp->p4().pt() - tmp_tp_pt);
2043  dmatch_eta = std::abs(my_tp->p4().eta() - tmp_tp_eta);
2044  dmatch_phi = std::abs(my_tp->p4().phi() - tmp_tp_phi);
2045  match_id = my_tp->pdgId();
2046  float tmp_trk_chi2dof = matchedTracks.at(it)->chi2Red();
2047 
2048  // ensure that track is uniquely matched to the TP we are looking at!
2049  if (dmatch_pt < 0.1 && dmatch_eta < 0.1 && dmatch_phi < 0.1 && tmp_tp_pdgid == match_id && tmp_trk_genuine) {
2050  nMatch++;
2051  if (i_track < 0 || tmp_trk_chi2dof < i_chi2dof) {
2052  i_track = it;
2053  i_chi2dof = tmp_trk_chi2dof;
2054  }
2055  }
2056 
2057  } // end loop over matched L1 tracks
2058  } // end has at least 1 matched L1 track
2059  // ----------------------------------------------------------------------------------------------
2060 
2061  float tmp_matchtrkExt_pt = -999;
2062  float tmp_matchtrkExt_eta = -999;
2063  float tmp_matchtrkExt_phi = -999;
2064  float tmp_matchtrkExt_z0 = -999;
2065  float tmp_matchtrkExt_d0 = -999;
2066  float tmp_matchtrkExt_chi2 = -999;
2067  float tmp_matchtrkExt_chi2dof = -999;
2068  float tmp_matchtrkExt_chi2rphi = -999;
2069  float tmp_matchtrkExt_chi2rz = -999;
2070  float tmp_matchtrkExt_bendchi2 = -999;
2071  int tmp_matchtrkExt_nstub = -999;
2072  int tmp_matchtrkExt_dhits = -999;
2073  int tmp_matchtrkExt_lhits = -999;
2074  int tmp_matchtrkExt_seed = -999;
2075  int tmp_matchtrkExt_hitpattern = -999;
2076  int tmp_matchtrkExt_nFitPars = -999;
2077 
2078  if (nMatch > 1 && DebugMode)
2079  edm::LogVerbatim("Tracklet") << "WARNING *** 2 or more matches to genuine L1 tracks ***";
2080 
2081  if (nMatch > 0) {
2082  tmp_matchtrkExt_pt = matchedTracks.at(i_track)->momentum().perp();
2083  tmp_matchtrkExt_eta = matchedTracks.at(i_track)->momentum().eta();
2084  tmp_matchtrkExt_phi = matchedTracks.at(i_track)->momentum().phi();
2085  tmp_matchtrkExt_z0 = matchedTracks.at(i_track)->z0();
2086  tmp_matchtrkExt_nFitPars = matchedTracks.at(i_track)->nFitPars();
2087 
2088  if (tmp_matchtrkExt_nFitPars == 5) {
2089  float tmp_matchtrkExt_x0 = matchedTracks.at(i_track)->POCA().x();
2090  float tmp_matchtrkExt_y0 = matchedTracks.at(i_track)->POCA().y();
2091  tmp_matchtrkExt_d0 =
2092  -tmp_matchtrkExt_x0 * sin(tmp_matchtrkExt_phi) + tmp_matchtrkExt_y0 * cos(tmp_matchtrkExt_phi);
2093  // tmp_matchtrkExt_d0 = matchedTracks.at(i_track)->d0();
2094  }
2095 
2096  tmp_matchtrkExt_chi2 = matchedTracks.at(i_track)->chi2();
2097  tmp_matchtrkExt_chi2dof = matchedTracks.at(i_track)->chi2Red();
2098  tmp_matchtrkExt_chi2rphi = matchedTracks.at(i_track)->chi2XY();
2099  tmp_matchtrkExt_chi2rz = matchedTracks.at(i_track)->chi2Z();
2100  tmp_matchtrkExt_bendchi2 = matchedTracks.at(i_track)->stubPtConsistency();
2101  tmp_matchtrkExt_nstub = (int)matchedTracks.at(i_track)->getStubRefs().size();
2102  tmp_matchtrkExt_seed = (int)matchedTracks.at(i_track)->trackSeedType();
2103  tmp_matchtrkExt_hitpattern = (int)matchedTracks.at(i_track)->hitPattern();
2104 
2105  // ------------------------------------------------------------------------------------------
2106  tmp_matchtrkExt_dhits = 0;
2107  tmp_matchtrkExt_lhits = 0;
2108 
2109  std::vector<edm::Ref<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> >, TTStub<Ref_Phase2TrackerDigi_> > >
2110  stubRefs = matchedTracks.at(i_track)->getStubRefs();
2111  int tmp_nstub = stubRefs.size();
2112 
2113  for (int is = 0; is < tmp_nstub; is++) {
2114  DetId detIdStub = tGeom.idToDet((stubRefs.at(is)->clusterRef(0))->getDetId())->geographicalId();
2115  int layer = -999999;
2116  if (detIdStub.subdetId() == StripSubdetector::TOB) {
2117  layer = static_cast<int>(tTopo.layer(detIdStub));
2118  tmp_matchtrkExt_lhits += pow(10, layer - 1);
2119  } else if (detIdStub.subdetId() == StripSubdetector::TID) {
2120  layer = static_cast<int>(tTopo.layer(detIdStub));
2121  tmp_matchtrkExt_dhits += pow(10, layer - 1);
2122  }
2123  }
2124  }
2125 
2126  // m_tp_nmatch->push_back(nMatch); //modify to be matches for ext
2127  m_matchtrkExt_pt->push_back(tmp_matchtrkExt_pt);
2128  m_matchtrkExt_eta->push_back(tmp_matchtrkExt_eta);
2129  m_matchtrkExt_phi->push_back(tmp_matchtrkExt_phi);
2130  m_matchtrkExt_z0->push_back(tmp_matchtrkExt_z0);
2131  m_matchtrkExt_d0->push_back(tmp_matchtrkExt_d0);
2132  m_matchtrkExt_chi2->push_back(tmp_matchtrkExt_chi2);
2133  m_matchtrkExt_chi2dof->push_back(tmp_matchtrkExt_chi2dof);
2134  m_matchtrkExt_chi2rphi->push_back(tmp_matchtrkExt_chi2rphi);
2135  m_matchtrkExt_chi2rz->push_back(tmp_matchtrkExt_chi2rz);
2136  m_matchtrkExt_bendchi2->push_back(tmp_matchtrkExt_bendchi2);
2137  m_matchtrkExt_nstub->push_back(tmp_matchtrkExt_nstub);
2138  m_matchtrkExt_dhits->push_back(tmp_matchtrkExt_dhits);
2139  m_matchtrkExt_lhits->push_back(tmp_matchtrkExt_lhits);
2140  m_matchtrkExt_seed->push_back(tmp_matchtrkExt_seed);
2141  m_matchtrkExt_hitpattern->push_back(tmp_matchtrkExt_hitpattern);
2142  }
2143 
2144  } //end loop tracking particles
2145 
2146  if (SaveTrackMET) {
2147  if (Displaced == "Prompt" || Displaced == "Both") {
2148  if (L1TkMETHandle.isValid()) {
2149  trkMET = L1TkMETHandle->begin()->etMiss();
2150  } else {
2151  edm::LogWarning("DataNotFound") << "\nWarning: tkMET handle not found in the event" << std::endl;
2152  }
2153 
2154  if (L1TkMHTHandle.isValid()) {
2155  trkMHT = L1TkMHTHandle->begin()->EtMiss();
2156  trkHT = L1TkMHTHandle->begin()->etTotal();
2157  } else {
2158  edm::LogWarning("DataNotFound") << "\nWarning: tkMHT handle not found in the event" << std::endl;
2159  }
2160  } //end prompt-track quantities
2161 
2162  if (Displaced == "Displaced" || Displaced == "Both") {
2163  if (L1TkMETExtendedHandle.isValid()) {
2164  trkMETExt = L1TkMETExtendedHandle->begin()->etMiss();
2165  } else {
2166  edm::LogWarning("DataNotFound") << "\nWarning: tkMETExtended handle not found in the event" << std::endl;
2167  }
2168 
2169  if (L1TkMHTExtendedHandle.isValid()) {
2170  trkMHTExt = L1TkMHTExtendedHandle->begin()->EtMiss();
2171  trkHTExt = L1TkMHTExtendedHandle->begin()->etTotal();
2172  } else {
2173  edm::LogWarning("DataNotFound") << "\nWarning: tkMHTExtended handle not found in the event" << std::endl;
2174  }
2175  } //end displaced-track quantities
2176  }
2177 
2178  if (SaveTrackJets) {
2179  if (TrackFastJetsHandle.isValid() && (Displaced == "Prompt" || Displaced == "Both")) {
2180  for (jetIter = TrackFastJetsHandle->begin(); jetIter != TrackFastJetsHandle->end(); ++jetIter) {
2181  m_trkjet_vz->push_back(jetIter->jetVtx());
2182  m_trkjet_ntracks->push_back(jetIter->trkPtrs().size());
2183  m_trkjet_phi->push_back(jetIter->phi());
2184  m_trkjet_eta->push_back(jetIter->eta());
2185  m_trkjet_pt->push_back(jetIter->pt());
2186  m_trkjet_p->push_back(jetIter->p());
2187  }
2188  }
2189  if (TrackFastJetsExtendedHandle.isValid() && (Displaced == "Displaced" || Displaced == "Both")) {
2190  for (jetIter = TrackFastJetsExtendedHandle->begin(); jetIter != TrackFastJetsExtendedHandle->end(); ++jetIter) {
2191  m_trkjetExt_vz->push_back(jetIter->jetVtx());
2192  m_trkjetExt_ntracks->push_back(jetIter->trkPtrs().size());
2193  m_trkjetExt_phi->push_back(jetIter->phi());
2194  m_trkjetExt_eta->push_back(jetIter->eta());
2195  m_trkjetExt_pt->push_back(jetIter->pt());
2196  m_trkjetExt_p->push_back(jetIter->p());
2197  }
2198  }
2199  if (!TrackJetsHandle.isValid() && (Displaced == "Prompt" || Displaced == "Both")) {
2200  edm::LogWarning("DataNotFound") << "\nWarning: TrackJetsHandle not found in the event" << std::endl;
2201  }
2202  if (!TrackJetsExtendedHandle.isValid() && (Displaced == "Displaced" || Displaced == "Both")) {
2203  edm::LogWarning("DataNotFound") << "\nWarning: TrackJetsExtendedHandle not found in the event" << std::endl;
2204  }
2205  if (TrackJetsHandle.isValid() && (Displaced == "Prompt" || Displaced == "Both")) {
2206  for (jetIter = TrackJetsHandle->begin(); jetIter != TrackJetsHandle->end(); ++jetIter) {
2207  m_2ltrkjet_vz->push_back(jetIter->jetVtx());
2208  m_2ltrkjet_ntracks->push_back(jetIter->ntracks());
2209  m_2ltrkjet_phi->push_back(jetIter->phi());
2210  m_2ltrkjet_eta->push_back(jetIter->eta());
2211  m_2ltrkjet_pt->push_back(jetIter->pt());
2212  m_2ltrkjet_p->push_back(jetIter->p());
2213  m_2ltrkjet_nDisplaced->push_back(jetIter->nDisptracks());
2214  m_2ltrkjet_nTight->push_back(jetIter->nTighttracks());
2215  m_2ltrkjet_nTightDisplaced->push_back(jetIter->nTightDisptracks());
2216  }
2217  }
2218 
2219  if (TrackJetsExtendedHandle.isValid() && (Displaced == "Displaced" || Displaced == "Both")) {
2220  for (jetIter = TrackJetsExtendedHandle->begin(); jetIter != TrackJetsExtendedHandle->end(); ++jetIter) {
2221  m_2ltrkjetExt_vz->push_back(jetIter->jetVtx());
2222  m_2ltrkjetExt_ntracks->push_back(jetIter->ntracks());
2223  m_2ltrkjetExt_phi->push_back(jetIter->phi());
2224  m_2ltrkjetExt_eta->push_back(jetIter->eta());
2225  m_2ltrkjetExt_pt->push_back(jetIter->pt());
2226  m_2ltrkjetExt_p->push_back(jetIter->p());
2227  m_2ltrkjetExt_nDisplaced->push_back(jetIter->nDisptracks());
2228  m_2ltrkjetExt_nTight->push_back(jetIter->nTighttracks());
2229  m_2ltrkjetExt_nTightDisplaced->push_back(jetIter->nTightDisptracks());
2230  }
2231  }
2232 
2233  if (L1TkPrimaryVertexHandle.isValid()) {
2234  m_pv_L1reco->push_back(L1TkPrimaryVertexHandle->begin()->zvertex());
2235  } else {
2236  edm::LogWarning("DataNotFound") << "\nWarning: L1TkPrimaryVertexHandle not found in the event" << std::endl;
2237  }
2238  } // end track jets
2239 
2240  eventTree->Fill();
2241 } // end of analyze()

References funct::abs(), available_, edmNew::DetSet< T >::begin(), TrackingParticle::charge(), funct::cos(), ztail::d, DebugMode, TrackerGeometry::dets(), Displaced, PVValHelper::dxy, edmNew::DetSet< T >::end(), EncodedEventId::event(), TrackingParticle::eventId(), eventTree, JetChargeProducer_cfi::exp, GenParticleToken_, edm::EventSetup::getData(), mps_fire::i, TrackerGeometry::idToDet(), TrackerGeometry::idToDetUnit(), iEvent, createfilelist::int, PixelPluginsPhase0_cfi::isBarrel, TrackerTopology::isLower(), reco::isNeutrino(), edm::Ptr< T >::isNull(), isum, edm::HandleBase::isValid(), L1Tk_minNStub, L1VertexToken_, phase1PixelTopology::layer, TrackerTopology::layer(), Topology::localPosition(), m_2ltrkjet_eta, m_2ltrkjet_nDisplaced, m_2ltrkjet_ntdtrk, m_2ltrkjet_nTight, m_2ltrkjet_nTightDisplaced, m_2ltrkjet_ntracks, m_2ltrkjet_p, m_2ltrkjet_phi, m_2ltrkjet_pt, m_2ltrkjet_vz, m_2ltrkjetExt_eta, m_2ltrkjetExt_nDisplaced, m_2ltrkjetExt_ntdtrk, m_2ltrkjetExt_nTight, m_2ltrkjetExt_nTightDisplaced, m_2ltrkjetExt_ntracks, m_2ltrkjetExt_p, m_2ltrkjetExt_phi, m_2ltrkjetExt_pt, m_2ltrkjetExt_vz, m_allstub_genuine, m_allstub_isBarrel, m_allstub_isPSmodule, m_allstub_layer, m_allstub_matchTP_eta, m_allstub_matchTP_pdgid, m_allstub_matchTP_phi, m_allstub_matchTP_pt, m_allstub_trigBend, m_allstub_trigDisplace, m_allstub_trigOffset, m_allstub_trigPos, m_allstub_x, m_allstub_y, m_allstub_z, m_matchtrk_bendchi2, m_matchtrk_chi2, m_matchtrk_chi2dof, m_matchtrk_chi2rphi, m_matchtrk_chi2rz, m_matchtrk_d0, m_matchtrk_dhits, m_matchtrk_eta, m_matchtrk_hitpattern, m_matchtrk_lhits, m_matchtrk_nstub, m_matchtrk_phi, m_matchtrk_pt, m_matchtrk_seed, m_matchtrk_z0, m_matchtrkExt_bendchi2, m_matchtrkExt_chi2, m_matchtrkExt_chi2dof, m_matchtrkExt_chi2rphi, m_matchtrkExt_chi2rz, m_matchtrkExt_d0, m_matchtrkExt_dhits, m_matchtrkExt_eta, m_matchtrkExt_hitpattern, m_matchtrkExt_lhits, m_matchtrkExt_nstub, m_matchtrkExt_phi, m_matchtrkExt_pt, m_matchtrkExt_seed, m_matchtrkExt_z0, m_MC_lep, m_pv_L1reco, m_pv_MC, m_tp_charge, m_tp_d0, m_tp_d0_prod, m_tp_dxy, m_tp_eta, m_tp_eventid, m_tp_nmatch, m_tp_nstub, m_tp_pdgid, m_tp_phi, m_tp_pt, m_tp_z0, m_tp_z0_prod, m_trk_bendchi2, m_trk_chi2, m_trk_chi2dof, m_trk_chi2rphi, m_trk_chi2rz, m_trk_combinatoric, m_trk_d0, m_trk_dhits, m_trk_eta, m_trk_fake, m_trk_genuine, m_trk_hitpattern, m_trk_lhits, m_trk_loose, m_trk_matchtp_dxy, m_trk_matchtp_eta, m_trk_matchtp_pdgid, m_trk_matchtp_phi, m_trk_matchtp_pt, m_trk_matchtp_z0, m_trk_nstub, m_trk_phi, m_trk_phiSector, m_trk_pt, m_trk_seed, m_trk_unknown, m_trk_z0, m_trkExt_bendchi2, m_trkExt_chi2, m_trkExt_chi2dof, m_trkExt_chi2rphi, m_trkExt_chi2rz, m_trkExt_combinatoric, m_trkExt_d0, m_trkExt_dhits, m_trkExt_eta, m_trkExt_fake, m_trkExt_genuine, m_trkExt_hitpattern, m_trkExt_lhits, m_trkExt_loose, m_trkExt_matchtp_dxy, m_trkExt_matchtp_eta, m_trkExt_matchtp_pdgid, m_trkExt_matchtp_phi, m_trkExt_matchtp_pt, m_trkExt_matchtp_z0, m_trkExt_nstub, m_trkExt_phi, m_trkExt_phiSector, m_trkExt_pt, m_trkExt_seed, m_trkExt_unknown, m_trkExt_z0, m_trkjet_eta, m_trkjet_ntracks, m_trkjet_p, m_trkjet_phi, m_trkjet_pt, m_trkjet_tp_sumpt, m_trkjet_truetp_sumpt, m_trkjet_vz, m_trkjetExt_eta, m_trkjetExt_ntracks, m_trkjetExt_p, m_trkjetExt_phi, m_trkjetExt_pt, m_trkjetExt_tp_sumpt, m_trkjetExt_truetp_sumpt, m_trkjetExt_vz, edmNew::makeRefTo(), TrackingParticle::momentum(), MyProcess, PixelTopology::nrows(), AlCaHLTBitMon_ParallelJobs::p, TrackingParticle::p4(), TrackingParticle::pdgId(), pi, funct::pow(), SaveAllTracks, SaveStubs, SaveTrackJets, SaveTrackMET, funct::sin(), mathSSE::sqrt(), TrackerTopology::stack(), mps_update::status, DetId::subdetId(), GeomDet::surface(), funct::tan(), tGeomToken_, StripSubdetector::TID, StripSubdetector::TOB, Surface::toGlobal(), GeomDet::topology(), TP_maxEta, TP_maxZ0, TP_minNStub, TP_minNStubLayer, TP_minPt, TrackFastJetsExtendedToken_, TrackFastJetsToken_, TrackingParticleToken_, TrackingVertexToken_, TrackJetsExtendedToken_, TrackJetsToken_, TrackMETExtendedToken_, TrackMETToken_, TrackMHTExtendedToken_, TrackMHTToken_, trkHT, trkHTExt, trkMET, trkMETExt, trkMHT, trkMHTExt, trueMET, ttClusterMCTruthToken_, tTopoToken_, ttStubMCTruthToken_, ttStubToken_, ttTrackExtendedToken_, ttTrackMCTruthExtendedToken_, ttTrackMCTruthToken_, ttTrackToken_, TrackingParticle::vertex(), x, PV3DBase< T, PVType, FrameType >::x(), y, PV3DBase< T, PVType, FrameType >::y(), z, and PV3DBase< T, PVType, FrameType >::z().

◆ beginJob()

void L1TrackObjectNtupleMaker::beginJob ( void  )

Definition at line 476 of file L1TrackObjectNtupleMaker.cc.

476  {
477  // things to be done before entering the event Loop
478  // edm::LogVerbatim("Tracklet") << "L1TrackObjectNtupleMaker::beginJob";
479 
480  //-----------------------------------------------------------------------------------------------
481  // book histograms / make ntuple
483  available_ = fs.isAvailable();
484  if (not available_)
485  return; // No ROOT file open.
486 
487  // initilize
488  m_trk_pt = new std::vector<float>;
489  m_trk_eta = new std::vector<float>;
490  m_trk_phi = new std::vector<float>;
491  m_trk_z0 = new std::vector<float>;
492  m_trk_d0 = new std::vector<float>;
493  m_trk_chi2 = new std::vector<float>;
494  m_trk_chi2dof = new std::vector<float>;
495  m_trk_chi2rphi = new std::vector<float>;
496  m_trk_chi2rz = new std::vector<float>;
497  m_trk_bendchi2 = new std::vector<float>;
498  m_trk_nstub = new std::vector<int>;
499  m_trk_lhits = new std::vector<int>;
500  m_trk_dhits = new std::vector<int>;
501  m_trk_seed = new std::vector<int>;
502  m_trk_hitpattern = new std::vector<int>;
503  m_trk_phiSector = new std::vector<unsigned int>;
504  m_trk_genuine = new std::vector<int>;
505  m_trk_loose = new std::vector<int>;
506  m_trk_unknown = new std::vector<int>;
507  m_trk_combinatoric = new std::vector<int>;
508  m_trk_fake = new std::vector<int>;
509  m_trk_matchtp_pdgid = new std::vector<int>;
510  m_trk_matchtp_pt = new std::vector<float>;
511  m_trk_matchtp_eta = new std::vector<float>;
512  m_trk_matchtp_phi = new std::vector<float>;
513  m_trk_matchtp_z0 = new std::vector<float>;
514  m_trk_matchtp_dxy = new std::vector<float>;
515 
516  m_trkExt_pt = new std::vector<float>;
517  m_trkExt_eta = new std::vector<float>;
518  m_trkExt_phi = new std::vector<float>;
519  m_trkExt_z0 = new std::vector<float>;
520  m_trkExt_d0 = new std::vector<float>;
521  m_trkExt_chi2 = new std::vector<float>;
522  m_trkExt_chi2dof = new std::vector<float>;
523  m_trkExt_chi2rphi = new std::vector<float>;
524  m_trkExt_chi2rz = new std::vector<float>;
525  m_trkExt_bendchi2 = new std::vector<float>;
526  m_trkExt_nstub = new std::vector<int>;
527  m_trkExt_lhits = new std::vector<int>;
528  m_trkExt_dhits = new std::vector<int>;
529  m_trkExt_seed = new std::vector<int>;
530  m_trkExt_hitpattern = new std::vector<int>;
531  m_trkExt_phiSector = new std::vector<unsigned int>;
532  m_trkExt_genuine = new std::vector<int>;
533  m_trkExt_loose = new std::vector<int>;
534  m_trkExt_unknown = new std::vector<int>;
535  m_trkExt_combinatoric = new std::vector<int>;
536  m_trkExt_fake = new std::vector<int>;
537  m_trkExt_matchtp_pdgid = new std::vector<int>;
538  m_trkExt_matchtp_pt = new std::vector<float>;
539  m_trkExt_matchtp_eta = new std::vector<float>;
540  m_trkExt_matchtp_phi = new std::vector<float>;
541  m_trkExt_matchtp_z0 = new std::vector<float>;
542  m_trkExt_matchtp_dxy = new std::vector<float>;
543 
544  m_tp_pt = new std::vector<float>;
545  m_tp_eta = new std::vector<float>;
546  m_tp_phi = new std::vector<float>;
547  m_tp_dxy = new std::vector<float>;
548  m_tp_d0 = new std::vector<float>;
549  m_tp_z0 = new std::vector<float>;
550  m_tp_d0_prod = new std::vector<float>;
551  m_tp_z0_prod = new std::vector<float>;
552  m_tp_pdgid = new std::vector<int>;
553  m_tp_nmatch = new std::vector<int>;
554  m_tp_nstub = new std::vector<int>;
555  m_tp_eventid = new std::vector<int>;
556  m_tp_charge = new std::vector<int>;
557 
558  m_matchtrk_pt = new std::vector<float>;
559  m_matchtrk_eta = new std::vector<float>;
560  m_matchtrk_phi = new std::vector<float>;
561  m_matchtrk_z0 = new std::vector<float>;
562  m_matchtrk_d0 = new std::vector<float>;
563  m_matchtrk_chi2 = new std::vector<float>;
564  m_matchtrk_chi2dof = new std::vector<float>;
565  m_matchtrk_chi2rphi = new std::vector<float>;
566  m_matchtrk_chi2rz = new std::vector<float>;
567  m_matchtrk_bendchi2 = new std::vector<float>;
568  m_matchtrk_nstub = new std::vector<int>;
569  m_matchtrk_dhits = new std::vector<int>;
570  m_matchtrk_lhits = new std::vector<int>;
571  m_matchtrk_seed = new std::vector<int>;
572  m_matchtrk_hitpattern = new std::vector<int>;
573 
574  m_matchtrkExt_pt = new std::vector<float>;
575  m_matchtrkExt_eta = new std::vector<float>;
576  m_matchtrkExt_phi = new std::vector<float>;
577  m_matchtrkExt_z0 = new std::vector<float>;
578  m_matchtrkExt_d0 = new std::vector<float>;
579  m_matchtrkExt_chi2 = new std::vector<float>;
580  m_matchtrkExt_chi2dof = new std::vector<float>;
581  m_matchtrkExt_chi2rphi = new std::vector<float>;
582  m_matchtrkExt_chi2rz = new std::vector<float>;
583  m_matchtrkExt_bendchi2 = new std::vector<float>;
584  m_matchtrkExt_nstub = new std::vector<int>;
585  m_matchtrkExt_dhits = new std::vector<int>;
586  m_matchtrkExt_lhits = new std::vector<int>;
587  m_matchtrkExt_seed = new std::vector<int>;
588  m_matchtrkExt_hitpattern = new std::vector<int>;
589 
590  m_allstub_x = new std::vector<float>;
591  m_allstub_y = new std::vector<float>;
592  m_allstub_z = new std::vector<float>;
593  m_allstub_isBarrel = new std::vector<int>;
594  m_allstub_layer = new std::vector<int>;
595  m_allstub_isPSmodule = new std::vector<int>;
596  m_allstub_trigDisplace = new std::vector<float>;
597  m_allstub_trigOffset = new std::vector<float>;
598  m_allstub_trigPos = new std::vector<float>;
599  m_allstub_trigBend = new std::vector<float>;
600  m_allstub_matchTP_pdgid = new std::vector<int>;
601  m_allstub_matchTP_pt = new std::vector<float>;
602  m_allstub_matchTP_eta = new std::vector<float>;
603  m_allstub_matchTP_phi = new std::vector<float>;
604  m_allstub_genuine = new std::vector<int>;
605 
606  // m_jet_eta = new std::vector<float>;
607  // m_jet_phi = new std::vector<float>;
608  // m_jet_pt = new std::vector<float>;
609  // m_jet_tp_sumpt = new std::vector<float>;
610  // m_jet_trk_sumpt = new std::vector<float>;
611  // m_jet_matchtrk_sumpt = new std::vector<float>;
612 
613  // m_pv_L1recotruesumpt = new std::vector<float>;
614  // m_pv_L1recosumpt = new std::vector<float>;
615  m_pv_L1reco = new std::vector<float>;
616  // m_pv_L1TP = new std::vector<float>;
617  // m_pv_L1TPsumpt = new std::vector<float>;
618  m_pv_MC = new std::vector<float>;
619  // m_pv_MCChgSumpT = new std::vector<float>;
620  m_MC_lep = new std::vector<int>;
621 
622  m_2ltrkjet_eta = new std::vector<float>;
623  m_2ltrkjet_vz = new std::vector<float>;
624  m_2ltrkjet_phi = new std::vector<float>;
625  m_2ltrkjet_p = new std::vector<float>;
626  m_2ltrkjet_pt = new std::vector<float>;
627  m_2ltrkjet_ntracks = new std::vector<int>;
628  m_2ltrkjet_nDisplaced = new std::vector<int>;
629  m_2ltrkjet_nTight = new std::vector<int>;
630  m_2ltrkjet_nTightDisplaced = new std::vector<int>;
631  m_2ltrkjet_ntdtrk = new std::vector<int>;
632 
633  m_trkjet_eta = new std::vector<float>;
634  m_trkjet_vz = new std::vector<float>;
635  m_trkjet_phi = new std::vector<float>;
636  m_trkjet_p = new std::vector<float>;
637  m_trkjet_pt = new std::vector<float>;
638  m_trkjet_ntracks = new std::vector<int>;
639  m_trkjet_tp_sumpt = new std::vector<float>;
640  m_trkjet_truetp_sumpt = new std::vector<float>;
641 
642  m_2ltrkjetExt_eta = new std::vector<float>;
643  m_2ltrkjetExt_vz = new std::vector<float>;
644  m_2ltrkjetExt_phi = new std::vector<float>;
645  m_2ltrkjetExt_p = new std::vector<float>;
646  m_2ltrkjetExt_pt = new std::vector<float>;
647  m_2ltrkjetExt_ntracks = new std::vector<int>;
648  m_2ltrkjetExt_nDisplaced = new std::vector<int>;
649  m_2ltrkjetExt_nTight = new std::vector<int>;
650  m_2ltrkjetExt_nTightDisplaced = new std::vector<int>;
651  m_2ltrkjetExt_ntdtrk = new std::vector<int>;
652 
653  m_trkjetExt_eta = new std::vector<float>;
654  m_trkjetExt_vz = new std::vector<float>;
655  m_trkjetExt_phi = new std::vector<float>;
656  m_trkjetExt_p = new std::vector<float>;
657  m_trkjetExt_pt = new std::vector<float>;
658  m_trkjetExt_ntracks = new std::vector<int>;
659  m_trkjetExt_tp_sumpt = new std::vector<float>;
660  m_trkjetExt_truetp_sumpt = new std::vector<float>;
661 
662  // ntuple
663  eventTree = fs->make<TTree>("eventTree", "Event tree");
664 
665  if (SaveAllTracks && (Displaced == "Prompt" || Displaced == "Both")) {
666  eventTree->Branch("trk_pt", &m_trk_pt);
667  eventTree->Branch("trk_eta", &m_trk_eta);
668  eventTree->Branch("trk_phi", &m_trk_phi);
669  eventTree->Branch("trk_d0", &m_trk_d0);
670  eventTree->Branch("trk_z0", &m_trk_z0);
671  eventTree->Branch("trk_chi2", &m_trk_chi2);
672  eventTree->Branch("trk_chi2dof", &m_trk_chi2dof);
673  eventTree->Branch("trk_chi2rphi", &m_trk_chi2rphi);
674  eventTree->Branch("trk_chi2rz", &m_trk_chi2rz);
675  eventTree->Branch("trk_bendchi2", &m_trk_bendchi2);
676  eventTree->Branch("trk_nstub", &m_trk_nstub);
677  eventTree->Branch("trk_lhits", &m_trk_lhits);
678  eventTree->Branch("trk_dhits", &m_trk_dhits);
679  eventTree->Branch("trk_seed", &m_trk_seed);
680  eventTree->Branch("trk_hitpattern", &m_trk_hitpattern);
681  eventTree->Branch("trk_phiSector", &m_trk_phiSector);
682  eventTree->Branch("trk_genuine", &m_trk_genuine);
683  eventTree->Branch("trk_loose", &m_trk_loose);
684  eventTree->Branch("trk_unknown", &m_trk_unknown);
685  eventTree->Branch("trk_combinatoric", &m_trk_combinatoric);
686  eventTree->Branch("trk_fake", &m_trk_fake);
687  eventTree->Branch("trk_matchtp_pdgid", &m_trk_matchtp_pdgid);
688  eventTree->Branch("trk_matchtp_pt", &m_trk_matchtp_pt);
689  eventTree->Branch("trk_matchtp_eta", &m_trk_matchtp_eta);
690  eventTree->Branch("trk_matchtp_phi", &m_trk_matchtp_phi);
691  eventTree->Branch("trk_matchtp_z0", &m_trk_matchtp_z0);
692  eventTree->Branch("trk_matchtp_dxy", &m_trk_matchtp_dxy);
693  // if (TrackingInJets) {
694  // eventTree->Branch("trk_injet", &m_trk_injet);
695  // eventTree->Branch("trk_injet_highpt", &m_trk_injet_highpt);
696  // eventTree->Branch("trk_injet_vhighpt", &m_trk_injet_vhighpt);
697  // }
698  }
699 
700  if (SaveAllTracks && (Displaced == "Displaced" || Displaced == "Both")) {
701  eventTree->Branch("trkExt_pt", &m_trkExt_pt);
702  eventTree->Branch("trkExt_eta", &m_trkExt_eta);
703  eventTree->Branch("trkExt_phi", &m_trkExt_phi);
704  eventTree->Branch("trkExt_d0", &m_trkExt_d0);
705  eventTree->Branch("trkExt_z0", &m_trkExt_z0);
706  eventTree->Branch("trkExt_chi2", &m_trkExt_chi2);
707  eventTree->Branch("trkExt_chi2dof", &m_trkExt_chi2dof);
708  eventTree->Branch("trkExt_chi2rphi", &m_trkExt_chi2rphi);
709  eventTree->Branch("trkExt_chi2rz", &m_trkExt_chi2rz);
710  eventTree->Branch("trkExt_bendchi2", &m_trkExt_bendchi2);
711  eventTree->Branch("trkExt_nstub", &m_trkExt_nstub);
712  eventTree->Branch("trkExt_lhits", &m_trkExt_lhits);
713  eventTree->Branch("trkExt_dhits", &m_trkExt_dhits);
714  eventTree->Branch("trkExt_seed", &m_trkExt_seed);
715  eventTree->Branch("trkExt_hitpattern", &m_trkExt_hitpattern);
716  eventTree->Branch("trkExt_phiSector", &m_trkExt_phiSector);
717  eventTree->Branch("trkExt_genuine", &m_trkExt_genuine);
718  eventTree->Branch("trkExt_loose", &m_trkExt_loose);
719  eventTree->Branch("trkExt_unknown", &m_trkExt_unknown);
720  eventTree->Branch("trkExt_combinatoric", &m_trkExt_combinatoric);
721  eventTree->Branch("trkExt_fake", &m_trkExt_fake);
722  eventTree->Branch("trkExt_matchtp_pdgid", &m_trkExt_matchtp_pdgid);
723  eventTree->Branch("trkExt_matchtp_pt", &m_trkExt_matchtp_pt);
724  eventTree->Branch("trkExt_matchtp_eta", &m_trkExt_matchtp_eta);
725  eventTree->Branch("trkExt_matchtp_phi", &m_trkExt_matchtp_phi);
726  eventTree->Branch("trkExt_matchtp_z0", &m_trkExt_matchtp_z0);
727  eventTree->Branch("trkExt_matchtp_dxy", &m_trkExt_matchtp_dxy);
728  // if (TrackingInJets) {
729  // eventTree->Branch("trk_injet", &m_trk_injet);
730  // eventTree->Branch("trk_injet_highpt", &m_trk_injet_highpt);
731  // eventTree->Branch("trk_injet_vhighpt", &m_trk_injet_vhighpt);
732  // }
733  }
734  eventTree->Branch("tp_pt", &m_tp_pt);
735  eventTree->Branch("tp_eta", &m_tp_eta);
736  eventTree->Branch("tp_phi", &m_tp_phi);
737  eventTree->Branch("tp_dxy", &m_tp_dxy);
738  eventTree->Branch("tp_d0", &m_tp_d0);
739  eventTree->Branch("tp_z0", &m_tp_z0);
740  eventTree->Branch("tp_d0_prod", &m_tp_d0_prod);
741  eventTree->Branch("tp_z0_prod", &m_tp_z0_prod);
742  eventTree->Branch("tp_pdgid", &m_tp_pdgid);
743  eventTree->Branch("tp_nmatch", &m_tp_nmatch);
744  eventTree->Branch("tp_nstub", &m_tp_nstub);
745  eventTree->Branch("tp_eventid", &m_tp_eventid);
746  eventTree->Branch("tp_charge", &m_tp_charge);
747  // if (TrackingInJets) {
748  // eventTree->Branch("tp_injet", &m_tp_injet);
749  // eventTree->Branch("tp_injet_highpt", &m_tp_injet_highpt);
750  // eventTree->Branch("tp_injet_vhighpt", &m_tp_injet_vhighpt);
751  // }
752 
753  if (Displaced == "Prompt" || Displaced == "Both") {
754  eventTree->Branch("matchtrk_pt", &m_matchtrk_pt);
755  eventTree->Branch("matchtrk_eta", &m_matchtrk_eta);
756  eventTree->Branch("matchtrk_phi", &m_matchtrk_phi);
757  eventTree->Branch("matchtrk_z0", &m_matchtrk_z0);
758  eventTree->Branch("matchtrk_d0", &m_matchtrk_d0);
759  eventTree->Branch("matchtrk_chi2", &m_matchtrk_chi2);
760  eventTree->Branch("matchtrk_chi2dof", &m_matchtrk_chi2dof);
761  eventTree->Branch("matchtrk_chi2rphi", &m_matchtrk_chi2rphi);
762  eventTree->Branch("matchtrk_chi2rz", &m_matchtrk_chi2rz);
763  eventTree->Branch("matchtrk_bendchi2", &m_matchtrk_bendchi2);
764  eventTree->Branch("matchtrk_nstub", &m_matchtrk_nstub);
765  eventTree->Branch("matchtrk_lhits", &m_matchtrk_lhits);
766  eventTree->Branch("matchtrk_dhits", &m_matchtrk_dhits);
767  eventTree->Branch("matchtrk_seed", &m_matchtrk_seed);
768  eventTree->Branch("matchtrk_hitpattern", &m_matchtrk_hitpattern);
769  // if (TrackingInJets) {
770  // eventTree->Branch("matchtrk_injet", &m_matchtrk_injet);
771  // eventTree->Branch("matchtrk_injet_highpt", &m_matchtrk_injet_highpt);
772  // eventTree->Branch("matchtrk_injet_vhighpt", &m_matchtrk_injet_vhighpt);
773  // }
774  }
775 
776  if (Displaced == "Displaced" || Displaced == "Both") {
777  eventTree->Branch("matchtrkExt_pt", &m_matchtrkExt_pt);
778  eventTree->Branch("matchtrkExt_eta", &m_matchtrkExt_eta);
779  eventTree->Branch("matchtrkExt_phi", &m_matchtrkExt_phi);
780  eventTree->Branch("matchtrkExt_z0", &m_matchtrkExt_z0);
781  eventTree->Branch("matchtrkExt_d0", &m_matchtrkExt_d0);
782  eventTree->Branch("matchtrkExt_chi2", &m_matchtrkExt_chi2);
783  eventTree->Branch("matchtrkExt_chi2dof", &m_matchtrkExt_chi2dof);
784  eventTree->Branch("matchtrkExt_chi2rphi", &m_matchtrkExt_chi2rphi);
785  eventTree->Branch("matchtrkExt_chi2rz", &m_matchtrkExt_chi2rz);
786  eventTree->Branch("matchtrkExt_bendchi2", &m_matchtrkExt_bendchi2);
787  eventTree->Branch("matchtrkExt_nstub", &m_matchtrkExt_nstub);
788  eventTree->Branch("matchtrkExt_lhits", &m_matchtrkExt_lhits);
789  eventTree->Branch("matchtrkExt_dhits", &m_matchtrkExt_dhits);
790  eventTree->Branch("matchtrkExt_seed", &m_matchtrkExt_seed);
791  eventTree->Branch("matchtrkExt_hitpattern", &m_matchtrkExt_hitpattern);
792  // if (TrackingInJets) {
793  // eventTree->Branch("matchtrk_injet", &m_matchtrk_injet);
794  // eventTree->Branch("matchtrk_injet_highpt", &m_matchtrk_injet_highpt);
795  // eventTree->Branch("matchtrk_injet_vhighpt", &m_matchtrk_injet_vhighpt);
796  // }
797  }
798 
799  if (SaveStubs) {
800  eventTree->Branch("allstub_x", &m_allstub_x);
801  eventTree->Branch("allstub_y", &m_allstub_y);
802  eventTree->Branch("allstub_z", &m_allstub_z);
803  eventTree->Branch("allstub_isBarrel", &m_allstub_isBarrel);
804  eventTree->Branch("allstub_layer", &m_allstub_layer);
805  eventTree->Branch("allstub_isPSmodule", &m_allstub_isPSmodule);
806  eventTree->Branch("allstub_trigDisplace", &m_allstub_trigDisplace);
807  eventTree->Branch("allstub_trigOffset", &m_allstub_trigOffset);
808  eventTree->Branch("allstub_trigPos", &m_allstub_trigPos);
809  eventTree->Branch("allstub_trigBend", &m_allstub_trigBend);
810  eventTree->Branch("allstub_matchTP_pdgid", &m_allstub_matchTP_pdgid);
811  eventTree->Branch("allstub_matchTP_pt", &m_allstub_matchTP_pt);
812  eventTree->Branch("allstub_matchTP_eta", &m_allstub_matchTP_eta);
813  eventTree->Branch("allstub_matchTP_phi", &m_allstub_matchTP_phi);
814  eventTree->Branch("allstub_genuine", &m_allstub_genuine);
815  }
816 
817  if (SaveTrackJets) {
818  // eventTree->Branch("pv_L1recotruesumpt", &m_pv_L1recotruesumpt);
819  // eventTree->Branch("pv_L1recosumpt", &m_pv_L1recosumpt);
820  eventTree->Branch("pv_L1reco", &m_pv_L1reco);
821  // eventTree->Branch("pv_L1TP", &m_pv_L1TP);
822  // eventTree->Branch("pv_L1TPsumpt", &m_pv_L1TPsumpt);
823  eventTree->Branch("MC_lep", &m_MC_lep);
824  // eventTree->Branch("pv_MCChgSumpT", &m_pv_MCChgSumpT);
825  eventTree->Branch("pv_MC", &m_pv_MC);
826 
827  if (Displaced == "Prompt" || Displaced == "Both") {
828  eventTree->Branch("2ltrkjet_eta", &m_2ltrkjet_eta);
829  eventTree->Branch("2ltrkjet_vz", &m_2ltrkjet_vz);
830  eventTree->Branch("2ltrkjet_p", &m_2ltrkjet_p);
831  eventTree->Branch("2ltrkjet_pt", &m_2ltrkjet_pt);
832  eventTree->Branch("2ltrkjet_phi", &m_2ltrkjet_phi);
833  eventTree->Branch("2ltrkjet_ntracks", &m_2ltrkjet_ntracks);
834  eventTree->Branch("2ltrkjet_nDisplaced", &m_2ltrkjet_nDisplaced);
835  eventTree->Branch("2ltrkjet_nTight", &m_2ltrkjet_nTight);
836  eventTree->Branch("2ltrkjet_nTightDisplaced", &m_2ltrkjet_nTightDisplaced);
837  eventTree->Branch("trkjet_eta", &m_trkjet_eta);
838  eventTree->Branch("trkjet_vz", &m_trkjet_vz);
839  eventTree->Branch("trkjet_p", &m_trkjet_p);
840  eventTree->Branch("trkjet_pt", &m_trkjet_pt);
841  eventTree->Branch("trkjet_phi", &m_trkjet_phi);
842  eventTree->Branch("trkjet_ntracks", &m_trkjet_ntracks);
843  eventTree->Branch("trkjet_truetp_sumpt", m_trkjet_truetp_sumpt);
844  }
845  if (Displaced == "Displaced" || Displaced == "Both") {
846  eventTree->Branch("2ltrkjetExt_eta", &m_2ltrkjetExt_eta);
847  eventTree->Branch("2ltrkjetExt_vz", &m_2ltrkjetExt_vz);
848  eventTree->Branch("2ltrkjetExt_p", &m_2ltrkjetExt_p);
849  eventTree->Branch("2ltrkjetExt_pt", &m_2ltrkjetExt_pt);
850  eventTree->Branch("2ltrkjetExt_phi", &m_2ltrkjetExt_phi);
851  eventTree->Branch("2ltrkjetExt_ntracks", &m_2ltrkjetExt_ntracks);
852  eventTree->Branch("2ltrkjetExt_nDisplaced", &m_2ltrkjetExt_nDisplaced);
853  eventTree->Branch("2ltrkjetExt_nTight", &m_2ltrkjetExt_nTight);
854  eventTree->Branch("2ltrkjetExt_nTightDisplaced", &m_2ltrkjetExt_nTightDisplaced);
855  eventTree->Branch("trkjetExt_eta", &m_trkjetExt_eta);
856  eventTree->Branch("trkjetExt_vz", &m_trkjetExt_vz);
857  eventTree->Branch("trkjetExt_p", &m_trkjetExt_p);
858  eventTree->Branch("trkjetExt_pt", &m_trkjetExt_pt);
859  eventTree->Branch("trkjetExt_phi", &m_trkjetExt_phi);
860  eventTree->Branch("trkjetExt_ntracks", &m_trkjetExt_ntracks);
861  eventTree->Branch("trkjetExt_truetp_sumpt", m_trkjetExt_truetp_sumpt);
862  }
863  }
864 
865  if (SaveTrackMET) {
866  eventTree->Branch("trueMET", &trueMET, "trueMET/F");
867 
868  if (Displaced == "Prompt" || Displaced == "Both") {
869  eventTree->Branch("trkMET", &trkMET, "trkMET/F");
870  eventTree->Branch("trkMHT", &trkMHT, "trkMHT/F");
871  eventTree->Branch("trkHT", &trkHT, "trkHT/F");
872  }
873  if (Displaced == "Displaced" || Displaced == "Both") {
874  eventTree->Branch("trkMETExt", &trkMETExt, "trkMETExt/F");
875  eventTree->Branch("trkMHTExt", &trkMHTExt, "trkMHTExt/F");
876  eventTree->Branch("trkHTExt", &trkHTExt, "trkHTExt/F");
877  }
878  }
879 }

References available_, Displaced, eventTree, edm::Service< T >::isAvailable(), m_2ltrkjet_eta, m_2ltrkjet_nDisplaced, m_2ltrkjet_ntdtrk, m_2ltrkjet_nTight, m_2ltrkjet_nTightDisplaced, m_2ltrkjet_ntracks, m_2ltrkjet_p, m_2ltrkjet_phi, m_2ltrkjet_pt, m_2ltrkjet_vz, m_2ltrkjetExt_eta, m_2ltrkjetExt_nDisplaced, m_2ltrkjetExt_ntdtrk, m_2ltrkjetExt_nTight, m_2ltrkjetExt_nTightDisplaced, m_2ltrkjetExt_ntracks, m_2ltrkjetExt_p, m_2ltrkjetExt_phi, m_2ltrkjetExt_pt, m_2ltrkjetExt_vz, m_allstub_genuine, m_allstub_isBarrel, m_allstub_isPSmodule, m_allstub_layer, m_allstub_matchTP_eta, m_allstub_matchTP_pdgid, m_allstub_matchTP_phi, m_allstub_matchTP_pt, m_allstub_trigBend, m_allstub_trigDisplace, m_allstub_trigOffset, m_allstub_trigPos, m_allstub_x, m_allstub_y, m_allstub_z, m_matchtrk_bendchi2, m_matchtrk_chi2, m_matchtrk_chi2dof, m_matchtrk_chi2rphi, m_matchtrk_chi2rz, m_matchtrk_d0, m_matchtrk_dhits, m_matchtrk_eta, m_matchtrk_hitpattern, m_matchtrk_lhits, m_matchtrk_nstub, m_matchtrk_phi, m_matchtrk_pt, m_matchtrk_seed, m_matchtrk_z0, m_matchtrkExt_bendchi2, m_matchtrkExt_chi2, m_matchtrkExt_chi2dof, m_matchtrkExt_chi2rphi, m_matchtrkExt_chi2rz, m_matchtrkExt_d0, m_matchtrkExt_dhits, m_matchtrkExt_eta, m_matchtrkExt_hitpattern, m_matchtrkExt_lhits, m_matchtrkExt_nstub, m_matchtrkExt_phi, m_matchtrkExt_pt, m_matchtrkExt_seed, m_matchtrkExt_z0, m_MC_lep, m_pv_L1reco, m_pv_MC, m_tp_charge, m_tp_d0, m_tp_d0_prod, m_tp_dxy, m_tp_eta, m_tp_eventid, m_tp_nmatch, m_tp_nstub, m_tp_pdgid, m_tp_phi, m_tp_pt, m_tp_z0, m_tp_z0_prod, m_trk_bendchi2, m_trk_chi2, m_trk_chi2dof, m_trk_chi2rphi, m_trk_chi2rz, m_trk_combinatoric, m_trk_d0, m_trk_dhits, m_trk_eta, m_trk_fake, m_trk_genuine, m_trk_hitpattern, m_trk_lhits, m_trk_loose, m_trk_matchtp_dxy, m_trk_matchtp_eta, m_trk_matchtp_pdgid, m_trk_matchtp_phi, m_trk_matchtp_pt, m_trk_matchtp_z0, m_trk_nstub, m_trk_phi, m_trk_phiSector, m_trk_pt, m_trk_seed, m_trk_unknown, m_trk_z0, m_trkExt_bendchi2, m_trkExt_chi2, m_trkExt_chi2dof, m_trkExt_chi2rphi, m_trkExt_chi2rz, m_trkExt_combinatoric, m_trkExt_d0, m_trkExt_dhits, m_trkExt_eta, m_trkExt_fake, m_trkExt_genuine, m_trkExt_hitpattern, m_trkExt_lhits, m_trkExt_loose, m_trkExt_matchtp_dxy, m_trkExt_matchtp_eta, m_trkExt_matchtp_pdgid, m_trkExt_matchtp_phi, m_trkExt_matchtp_pt, m_trkExt_matchtp_z0, m_trkExt_nstub, m_trkExt_phi, m_trkExt_phiSector, m_trkExt_pt, m_trkExt_seed, m_trkExt_unknown, m_trkExt_z0, m_trkjet_eta, m_trkjet_ntracks, m_trkjet_p, m_trkjet_phi, m_trkjet_pt, m_trkjet_tp_sumpt, m_trkjet_truetp_sumpt, m_trkjet_vz, m_trkjetExt_eta, m_trkjetExt_ntracks, m_trkjetExt_p, m_trkjetExt_phi, m_trkjetExt_pt, m_trkjetExt_tp_sumpt, m_trkjetExt_truetp_sumpt, m_trkjetExt_vz, TFileService::make(), SaveAllTracks, SaveStubs, SaveTrackJets, SaveTrackMET, trkHT, trkHTExt, trkMET, trkMETExt, trkMHT, trkMHTExt, and trueMET.

◆ endJob()

void L1TrackObjectNtupleMaker::endJob ( void  )

Definition at line 469 of file L1TrackObjectNtupleMaker.cc.

469  {
470  // things to be done at the exit of the event Loop
471  // edm::LogVerbatim("Tracklet") << "L1TrackObjectNtupleMaker::endJob";
472 }

Member Data Documentation

◆ available_

bool L1TrackObjectNtupleMaker::available_
private

Definition at line 185 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ config

edm::ParameterSet L1TrackObjectNtupleMaker::config
private

Definition at line 113 of file L1TrackObjectNtupleMaker.cc.

◆ DebugMode

bool L1TrackObjectNtupleMaker::DebugMode
private

Definition at line 116 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ Displaced

string L1TrackObjectNtupleMaker::Displaced
private

Definition at line 119 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), beginJob(), and L1TrackObjectNtupleMaker().

◆ eventTree

TTree* L1TrackObjectNtupleMaker::eventTree
private

Definition at line 187 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ GenJetInputTag

edm::InputTag L1TrackObjectNtupleMaker::GenJetInputTag
private

Definition at line 139 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ GenJetToken_

edm::EDGetTokenT<std::vector<reco::GenJet> > L1TrackObjectNtupleMaker::GenJetToken_
private

Definition at line 166 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ GenParticleInputTag

edm::InputTag L1TrackObjectNtupleMaker::GenParticleInputTag
private

Definition at line 141 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ GenParticleToken_

edm::EDGetTokenT<std::vector<reco::GenParticle> > L1TrackObjectNtupleMaker::GenParticleToken_
private

Definition at line 167 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ L1StubInputTag

edm::InputTag L1TrackObjectNtupleMaker::L1StubInputTag
private

Definition at line 135 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ L1Tk_minNStub

int L1TrackObjectNtupleMaker::L1Tk_minNStub
private

Definition at line 125 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ L1TrackExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::L1TrackExtendedInputTag
private

Definition at line 132 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ L1TrackInputTag

edm::InputTag L1TrackObjectNtupleMaker::L1TrackInputTag
private

Definition at line 130 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ L1VertexToken_

edm::EDGetTokenT<l1t::TkPrimaryVertexCollection> L1TrackObjectNtupleMaker::L1VertexToken_
private

Definition at line 168 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ m_2ltrkjet_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjet_eta
private

Definition at line 345 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_nDisplaced

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjet_nDisplaced
private

Definition at line 348 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_ntdtrk

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjet_ntdtrk
private

Definition at line 351 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_nTight

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjet_nTight
private

Definition at line 349 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_nTightDisplaced

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjet_nTightDisplaced
private

Definition at line 350 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_ntracks

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjet_ntracks
private

Definition at line 347 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_p

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjet_p
private

Definition at line 343 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjet_phi
private

Definition at line 344 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjet_pt
private

Definition at line 346 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjet_vz

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjet_vz
private

Definition at line 342 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_eta
private

Definition at line 365 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_nDisplaced

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_nDisplaced
private

Definition at line 368 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_ntdtrk

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_ntdtrk
private

Definition at line 371 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_nTight

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_nTight
private

Definition at line 369 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_nTightDisplaced

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_nTightDisplaced
private

Definition at line 370 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_ntracks

std::vector<int>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_ntracks
private

Definition at line 367 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_p

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_p
private

Definition at line 363 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_phi
private

Definition at line 364 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_pt
private

Definition at line 366 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_2ltrkjetExt_vz

std::vector<float>* L1TrackObjectNtupleMaker::m_2ltrkjetExt_vz
private

Definition at line 362 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_genuine

std::vector<int>* L1TrackObjectNtupleMaker::m_allstub_genuine
private

Definition at line 323 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_isBarrel

std::vector<int>* L1TrackObjectNtupleMaker::m_allstub_isBarrel
private

Definition at line 310 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_isPSmodule

std::vector<int>* L1TrackObjectNtupleMaker::m_allstub_isPSmodule
private

Definition at line 312 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_layer

std::vector<int>* L1TrackObjectNtupleMaker::m_allstub_layer
private

Definition at line 311 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_matchTP_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_matchTP_eta
private

Definition at line 321 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_matchTP_pdgid

std::vector<int>* L1TrackObjectNtupleMaker::m_allstub_matchTP_pdgid
private

Definition at line 319 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_matchTP_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_matchTP_phi
private

Definition at line 322 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_matchTP_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_matchTP_pt
private

Definition at line 320 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_trigBend

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_trigBend
private

Definition at line 316 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_trigDisplace

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_trigDisplace
private

Definition at line 313 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_trigOffset

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_trigOffset
private

Definition at line 314 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_trigPos

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_trigPos
private

Definition at line 315 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_x

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_x
private

Definition at line 307 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_y

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_y
private

Definition at line 308 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_allstub_z

std::vector<float>* L1TrackObjectNtupleMaker::m_allstub_z
private

Definition at line 309 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_bendchi2

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_bendchi2
private

Definition at line 282 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_chi2

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_chi2
private

Definition at line 278 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_chi2dof

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_chi2dof
private

Definition at line 279 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_chi2rphi

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_chi2rphi
private

Definition at line 280 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_chi2rz

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_chi2rz
private

Definition at line 281 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_d0

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_d0
private

Definition at line 276 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_dhits

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrk_dhits
private

Definition at line 285 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_eta
private

Definition at line 274 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_hitpattern

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrk_hitpattern
private

Definition at line 287 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_lhits

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrk_lhits
private

Definition at line 284 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_nstub

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrk_nstub
private

Definition at line 283 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_phi
private

Definition at line 275 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_pt
private

Definition at line 273 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_seed

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrk_seed
private

Definition at line 286 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrk_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrk_z0
private

Definition at line 277 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_bendchi2

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_bendchi2
private

Definition at line 299 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_chi2

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_chi2
private

Definition at line 295 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_chi2dof

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_chi2dof
private

Definition at line 296 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_chi2rphi

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_chi2rphi
private

Definition at line 297 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_chi2rz

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_chi2rz
private

Definition at line 298 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_d0

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_d0
private

Definition at line 293 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_dhits

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrkExt_dhits
private

Definition at line 302 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_eta
private

Definition at line 291 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_hitpattern

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrkExt_hitpattern
private

Definition at line 304 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_lhits

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrkExt_lhits
private

Definition at line 301 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_nstub

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrkExt_nstub
private

Definition at line 300 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_phi
private

Definition at line 292 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_pt
private

Definition at line 290 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_seed

std::vector<int>* L1TrackObjectNtupleMaker::m_matchtrkExt_seed
private

Definition at line 303 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_matchtrkExt_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_matchtrkExt_z0
private

Definition at line 294 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_MC_lep

std::vector<int>* L1TrackObjectNtupleMaker::m_MC_lep
private

Definition at line 197 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_pv_L1reco

std::vector<float>* L1TrackObjectNtupleMaker::m_pv_L1reco
private

Definition at line 192 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_pv_MC

std::vector<float>* L1TrackObjectNtupleMaker::m_pv_MC
private

Definition at line 195 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_charge

std::vector<int>* L1TrackObjectNtupleMaker::m_tp_charge
private

Definition at line 270 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_d0

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_d0
private

Definition at line 262 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_d0_prod

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_d0_prod
private

Definition at line 264 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_dxy

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_dxy
private

Definition at line 261 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_eta
private

Definition at line 259 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_eventid

std::vector<int>* L1TrackObjectNtupleMaker::m_tp_eventid
private

Definition at line 269 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_nmatch

std::vector<int>* L1TrackObjectNtupleMaker::m_tp_nmatch
private

Definition at line 267 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_nstub

std::vector<int>* L1TrackObjectNtupleMaker::m_tp_nstub
private

Definition at line 268 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_pdgid

std::vector<int>* L1TrackObjectNtupleMaker::m_tp_pdgid
private

Definition at line 266 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_phi
private

Definition at line 260 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_pt
private

Definition at line 258 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_z0
private

Definition at line 263 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_tp_z0_prod

std::vector<float>* L1TrackObjectNtupleMaker::m_tp_z0_prod
private

Definition at line 265 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_bendchi2

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_bendchi2
private

Definition at line 209 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_chi2

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_chi2
private

Definition at line 205 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_chi2dof

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_chi2dof
private

Definition at line 206 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_chi2rphi

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_chi2rphi
private

Definition at line 207 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_chi2rz

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_chi2rz
private

Definition at line 208 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_combinatoric

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_combinatoric
private

Definition at line 219 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_d0

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_d0
private

Definition at line 203 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_dhits

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_dhits
private

Definition at line 212 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_eta
private

Definition at line 201 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_fake

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_fake
private

Definition at line 220 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_genuine

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_genuine
private

Definition at line 216 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_hitpattern

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_hitpattern
private

Definition at line 214 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_lhits

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_lhits
private

Definition at line 211 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_loose

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_loose
private

Definition at line 217 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_dxy

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_matchtp_dxy
private

Definition at line 226 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_matchtp_eta
private

Definition at line 223 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_pdgid

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_matchtp_pdgid
private

Definition at line 221 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_matchtp_phi
private

Definition at line 224 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_matchtp_pt
private

Definition at line 222 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_matchtp_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_matchtp_z0
private

Definition at line 225 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_nstub

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_nstub
private

Definition at line 210 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_phi
private

Definition at line 202 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_phiSector

std::vector<unsigned int>* L1TrackObjectNtupleMaker::m_trk_phiSector
private

Definition at line 215 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_pt
private

Definition at line 200 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_seed

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_seed
private

Definition at line 213 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_unknown

std::vector<int>* L1TrackObjectNtupleMaker::m_trk_unknown
private

Definition at line 218 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trk_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_trk_z0
private

Definition at line 204 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_bendchi2

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_bendchi2
private

Definition at line 238 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_chi2

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_chi2
private

Definition at line 234 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_chi2dof

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_chi2dof
private

Definition at line 235 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_chi2rphi

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_chi2rphi
private

Definition at line 236 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_chi2rz

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_chi2rz
private

Definition at line 237 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_combinatoric

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_combinatoric
private

Definition at line 248 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_d0

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_d0
private

Definition at line 232 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_dhits

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_dhits
private

Definition at line 241 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_eta
private

Definition at line 230 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_fake

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_fake
private

Definition at line 249 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_genuine

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_genuine
private

Definition at line 245 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_hitpattern

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_hitpattern
private

Definition at line 243 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_lhits

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_lhits
private

Definition at line 240 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_loose

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_loose
private

Definition at line 246 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_dxy

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_dxy
private

Definition at line 255 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_eta
private

Definition at line 252 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_pdgid

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_pdgid
private

Definition at line 250 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_phi
private

Definition at line 253 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_pt
private

Definition at line 251 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_matchtp_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_matchtp_z0
private

Definition at line 254 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_nstub

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_nstub
private

Definition at line 239 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_phi
private

Definition at line 231 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_phiSector

std::vector<unsigned int>* L1TrackObjectNtupleMaker::m_trkExt_phiSector
private

Definition at line 244 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_pt
private

Definition at line 229 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_seed

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_seed
private

Definition at line 242 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_unknown

std::vector<int>* L1TrackObjectNtupleMaker::m_trkExt_unknown
private

Definition at line 247 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkExt_z0

std::vector<float>* L1TrackObjectNtupleMaker::m_trkExt_z0
private

Definition at line 233 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_eta
private

Definition at line 356 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_ntracks

std::vector<int>* L1TrackObjectNtupleMaker::m_trkjet_ntracks
private

Definition at line 358 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_p

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_p
private

Definition at line 354 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_phi
private

Definition at line 355 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_pt
private

Definition at line 357 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_tp_sumpt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_tp_sumpt
private

Definition at line 359 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_truetp_sumpt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_truetp_sumpt
private

Definition at line 360 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjet_vz

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjet_vz
private

Definition at line 353 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_eta

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_eta
private

Definition at line 376 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_ntracks

std::vector<int>* L1TrackObjectNtupleMaker::m_trkjetExt_ntracks
private

Definition at line 378 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_p

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_p
private

Definition at line 374 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_phi

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_phi
private

Definition at line 375 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_pt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_pt
private

Definition at line 377 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_tp_sumpt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_tp_sumpt
private

Definition at line 379 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_truetp_sumpt

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_truetp_sumpt
private

Definition at line 380 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ m_trkjetExt_vz

std::vector<float>* L1TrackObjectNtupleMaker::m_trkjetExt_vz
private

Definition at line 373 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ MCTruthClusterInputTag

edm::InputTag L1TrackObjectNtupleMaker::MCTruthClusterInputTag
private

Definition at line 134 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ MCTruthStubInputTag

edm::InputTag L1TrackObjectNtupleMaker::MCTruthStubInputTag
private

Definition at line 136 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ MCTruthTrackExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::MCTruthTrackExtendedInputTag
private

Definition at line 133 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ MCTruthTrackInputTag

edm::InputTag L1TrackObjectNtupleMaker::MCTruthTrackInputTag
private

Definition at line 131 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ MyProcess

int L1TrackObjectNtupleMaker::MyProcess
private

Definition at line 115 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ RecoVertexInputTag

edm::InputTag L1TrackObjectNtupleMaker::RecoVertexInputTag
private

Definition at line 140 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ SaveAllTracks

bool L1TrackObjectNtupleMaker::SaveAllTracks
private

Definition at line 117 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), beginJob(), and L1TrackObjectNtupleMaker().

◆ SaveStubs

bool L1TrackObjectNtupleMaker::SaveStubs
private

Definition at line 118 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), beginJob(), and L1TrackObjectNtupleMaker().

◆ SaveTrackJets

bool L1TrackObjectNtupleMaker::SaveTrackJets
private

Definition at line 127 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), beginJob(), and L1TrackObjectNtupleMaker().

◆ SaveTrackMET

bool L1TrackObjectNtupleMaker::SaveTrackMET
private

Definition at line 128 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), beginJob(), and L1TrackObjectNtupleMaker().

◆ tGeomToken_

edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> L1TrackObjectNtupleMaker::tGeomToken_
private

Definition at line 180 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TP_maxEta

double L1TrackObjectNtupleMaker::TP_maxEta
private

Definition at line 123 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TP_maxZ0

double L1TrackObjectNtupleMaker::TP_maxZ0
private

Definition at line 124 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TP_minNStub

int L1TrackObjectNtupleMaker::TP_minNStub
private

Definition at line 120 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TP_minNStubLayer

int L1TrackObjectNtupleMaker::TP_minNStubLayer
private

Definition at line 121 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TP_minPt

double L1TrackObjectNtupleMaker::TP_minPt
private

Definition at line 122 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackFastJetsExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackFastJetsExtendedInputTag
private

Definition at line 148 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackFastJetsExtendedToken_

edm::EDGetTokenT<std::vector<l1t::TkJet> > L1TrackObjectNtupleMaker::TrackFastJetsExtendedToken_
private

Definition at line 171 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackFastJetsInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackFastJetsInputTag
private

Definition at line 143 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackFastJetsToken_

edm::EDGetTokenT<std::vector<l1t::TkJet> > L1TrackObjectNtupleMaker::TrackFastJetsToken_
private

Definition at line 170 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackingInJets

bool L1TrackObjectNtupleMaker::TrackingInJets
private

Definition at line 126 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackingParticleInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackingParticleInputTag
private

Definition at line 137 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackingParticleToken_

edm::EDGetTokenT<std::vector<TrackingParticle> > L1TrackObjectNtupleMaker::TrackingParticleToken_
private

Definition at line 163 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackingVertexInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackingVertexInputTag
private

Definition at line 138 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackingVertexToken_

edm::EDGetTokenT<std::vector<TrackingVertex> > L1TrackObjectNtupleMaker::TrackingVertexToken_
private

Definition at line 164 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackJetsExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackJetsExtendedInputTag
private

Definition at line 149 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackJetsExtendedToken_

edm::EDGetTokenT<l1t::TkJetCollection> L1TrackObjectNtupleMaker::TrackJetsExtendedToken_
private

Definition at line 177 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackJetsInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackJetsInputTag
private

Definition at line 144 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackJetsToken_

edm::EDGetTokenT<l1t::TkJetCollection> L1TrackObjectNtupleMaker::TrackJetsToken_
private

Definition at line 176 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackMETExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackMETExtendedInputTag
private

Definition at line 150 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackMETExtendedToken_

edm::EDGetTokenT<std::vector<l1t::TkEtMiss> > L1TrackObjectNtupleMaker::TrackMETExtendedToken_
private

Definition at line 173 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackMETInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackMETInputTag
private

Definition at line 145 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackMETToken_

edm::EDGetTokenT<std::vector<l1t::TkEtMiss> > L1TrackObjectNtupleMaker::TrackMETToken_
private

Definition at line 172 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackMHTExtendedInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackMHTExtendedInputTag
private

Definition at line 151 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackMHTExtendedToken_

edm::EDGetTokenT<l1t::TkHTMissCollection> L1TrackObjectNtupleMaker::TrackMHTExtendedToken_
private

Definition at line 175 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ TrackMHTInputTag

edm::InputTag L1TrackObjectNtupleMaker::TrackMHTInputTag
private

Definition at line 146 of file L1TrackObjectNtupleMaker.cc.

Referenced by L1TrackObjectNtupleMaker().

◆ TrackMHTToken_

edm::EDGetTokenT<l1t::TkHTMissCollection> L1TrackObjectNtupleMaker::TrackMHTToken_
private

Definition at line 174 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ trkHT

float L1TrackObjectNtupleMaker::trkHT = 0
private

Definition at line 336 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trkHTExt

float L1TrackObjectNtupleMaker::trkHTExt = 0
private

Definition at line 340 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trkMET

float L1TrackObjectNtupleMaker::trkMET = 0
private

Definition at line 334 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trkMETExt

float L1TrackObjectNtupleMaker::trkMETExt = 0
private

Definition at line 338 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trkMHT

float L1TrackObjectNtupleMaker::trkMHT = 0
private

Definition at line 335 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trkMHTExt

float L1TrackObjectNtupleMaker::trkMHTExt = 0
private

Definition at line 339 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ trueMET

float L1TrackObjectNtupleMaker::trueMET = 0
private

Definition at line 333 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and beginJob().

◆ ttClusterMCTruthToken_

edm::EDGetTokenT<TTClusterAssociationMap<Ref_Phase2TrackerDigi_> > L1TrackObjectNtupleMaker::ttClusterMCTruthToken_
private

Definition at line 155 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttClusterToken_

edm::EDGetTokenT<edmNew::DetSetVector<TTCluster<Ref_Phase2TrackerDigi_> > > L1TrackObjectNtupleMaker::ttClusterToken_
private

Definition at line 153 of file L1TrackObjectNtupleMaker.cc.

◆ tTopoToken_

edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> L1TrackObjectNtupleMaker::tTopoToken_
private

Definition at line 179 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttStubMCTruthToken_

edm::EDGetTokenT<TTStubAssociationMap<Ref_Phase2TrackerDigi_> > L1TrackObjectNtupleMaker::ttStubMCTruthToken_
private

Definition at line 156 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttStubToken_

edm::EDGetTokenT<edmNew::DetSetVector<TTStub<Ref_Phase2TrackerDigi_> > > L1TrackObjectNtupleMaker::ttStubToken_
private

Definition at line 154 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttTrackExtendedToken_

edm::EDGetTokenT<std::vector<TTTrack<Ref_Phase2TrackerDigi_> > > L1TrackObjectNtupleMaker::ttTrackExtendedToken_
private

Definition at line 160 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttTrackMCTruthExtendedToken_

edm::EDGetTokenT<TTTrackAssociationMap<Ref_Phase2TrackerDigi_> > L1TrackObjectNtupleMaker::ttTrackMCTruthExtendedToken_
private

Definition at line 161 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttTrackMCTruthToken_

edm::EDGetTokenT<TTTrackAssociationMap<Ref_Phase2TrackerDigi_> > L1TrackObjectNtupleMaker::ttTrackMCTruthToken_
private

Definition at line 159 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

◆ ttTrackToken_

edm::EDGetTokenT<std::vector<TTTrack<Ref_Phase2TrackerDigi_> > > L1TrackObjectNtupleMaker::ttTrackToken_
private

Definition at line 158 of file L1TrackObjectNtupleMaker.cc.

Referenced by analyze(), and L1TrackObjectNtupleMaker().

TrackerGeometry::idToDet
const TrackerGeomDet * idToDet(DetId) const override
Definition: TrackerGeometry.cc:193
L1TrackObjectNtupleMaker::m_trkjet_truetp_sumpt
std::vector< float > * m_trkjet_truetp_sumpt
Definition: L1TrackObjectNtupleMaker.cc:360
L1TrackObjectNtupleMaker::TrackMETExtendedInputTag
edm::InputTag TrackMETExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:150
L1TrackObjectNtupleMaker::m_2ltrkjet_pt
std::vector< float > * m_2ltrkjet_pt
Definition: L1TrackObjectNtupleMaker.cc:346
Point2DBase
Definition: Point2DBase.h:9
L1TrackObjectNtupleMaker::GenParticleToken_
edm::EDGetTokenT< std::vector< reco::GenParticle > > GenParticleToken_
Definition: L1TrackObjectNtupleMaker.cc:167
DDAxes::y
L1TrackObjectNtupleMaker::m_trkExt_chi2rphi
std::vector< float > * m_trkExt_chi2rphi
Definition: L1TrackObjectNtupleMaker.cc:236
L1TrackObjectNtupleMaker::SaveAllTracks
bool SaveAllTracks
Definition: L1TrackObjectNtupleMaker.cc:117
L1TrackObjectNtupleMaker::TP_minNStub
int TP_minNStub
Definition: L1TrackObjectNtupleMaker.cc:120
L1TrackObjectNtupleMaker::m_trk_combinatoric
std::vector< int > * m_trk_combinatoric
Definition: L1TrackObjectNtupleMaker.cc:219
L1TrackObjectNtupleMaker::m_trkExt_combinatoric
std::vector< int > * m_trkExt_combinatoric
Definition: L1TrackObjectNtupleMaker.cc:248
L1TrackObjectNtupleMaker::m_tp_nmatch
std::vector< int > * m_tp_nmatch
Definition: L1TrackObjectNtupleMaker.cc:267
mps_fire.i
i
Definition: mps_fire.py:428
edm::ESInputTag
Definition: ESInputTag.h:87
L1TrackObjectNtupleMaker::m_tp_eta
std::vector< float > * m_tp_eta
Definition: L1TrackObjectNtupleMaker.cc:259
L1TrackObjectNtupleMaker::TrackMETToken_
edm::EDGetTokenT< std::vector< l1t::TkEtMiss > > TrackMETToken_
Definition: L1TrackObjectNtupleMaker.cc:172
L1TrackObjectNtupleMaker::m_2ltrkjetExt_eta
std::vector< float > * m_2ltrkjetExt_eta
Definition: L1TrackObjectNtupleMaker.cc:365
L1TrackObjectNtupleMaker::m_matchtrk_chi2rphi
std::vector< float > * m_matchtrk_chi2rphi
Definition: L1TrackObjectNtupleMaker.cc:280
GeomDet
Definition: GeomDet.h:27
L1TrackObjectNtupleMaker::TP_minNStubLayer
int TP_minNStubLayer
Definition: L1TrackObjectNtupleMaker.cc:121
L1TrackObjectNtupleMaker::m_matchtrkExt_bendchi2
std::vector< float > * m_matchtrkExt_bendchi2
Definition: L1TrackObjectNtupleMaker.cc:299
L1TrackObjectNtupleMaker::m_tp_eventid
std::vector< int > * m_tp_eventid
Definition: L1TrackObjectNtupleMaker.cc:269
L1TrackObjectNtupleMaker::m_matchtrk_d0
std::vector< float > * m_matchtrk_d0
Definition: L1TrackObjectNtupleMaker.cc:276
L1TrackObjectNtupleMaker::L1Tk_minNStub
int L1Tk_minNStub
Definition: L1TrackObjectNtupleMaker.cc:125
L1TrackObjectNtupleMaker::m_matchtrk_z0
std::vector< float > * m_matchtrk_z0
Definition: L1TrackObjectNtupleMaker.cc:277
TrackerTopology::isLower
bool isLower(const DetId &id) const
Definition: TrackerTopology.cc:195
L1TrackObjectNtupleMaker::m_matchtrk_nstub
std::vector< int > * m_matchtrk_nstub
Definition: L1TrackObjectNtupleMaker.cc:283
L1TrackObjectNtupleMaker::RecoVertexInputTag
edm::InputTag RecoVertexInputTag
Definition: L1TrackObjectNtupleMaker.cc:140
L1TrackObjectNtupleMaker::m_2ltrkjet_ntdtrk
std::vector< int > * m_2ltrkjet_ntdtrk
Definition: L1TrackObjectNtupleMaker.cc:351
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
reco::GenParticle
Definition: GenParticle.h:21
mps_update.status
status
Definition: mps_update.py:68
L1TrackObjectNtupleMaker::TrackJetsToken_
edm::EDGetTokenT< l1t::TkJetCollection > TrackJetsToken_
Definition: L1TrackObjectNtupleMaker.cc:176
L1TrackObjectNtupleMaker::m_2ltrkjet_vz
std::vector< float > * m_2ltrkjet_vz
Definition: L1TrackObjectNtupleMaker.cc:342
L1TrackObjectNtupleMaker::ttTrackMCTruthToken_
edm::EDGetTokenT< TTTrackAssociationMap< Ref_Phase2TrackerDigi_ > > ttTrackMCTruthToken_
Definition: L1TrackObjectNtupleMaker.cc:159
L1TrackObjectNtupleMaker::TrackMHTToken_
edm::EDGetTokenT< l1t::TkHTMissCollection > TrackMHTToken_
Definition: L1TrackObjectNtupleMaker.cc:174
L1TrackObjectNtupleMaker::m_matchtrk_chi2
std::vector< float > * m_matchtrk_chi2
Definition: L1TrackObjectNtupleMaker.cc:278
L1TrackObjectNtupleMaker::m_trkExt_phiSector
std::vector< unsigned int > * m_trkExt_phiSector
Definition: L1TrackObjectNtupleMaker.cc:244
TrackerTopology
Definition: TrackerTopology.h:16
L1TrackObjectNtupleMaker::m_trk_lhits
std::vector< int > * m_trk_lhits
Definition: L1TrackObjectNtupleMaker.cc:211
L1TrackObjectNtupleMaker::m_matchtrkExt_chi2rphi
std::vector< float > * m_matchtrkExt_chi2rphi
Definition: L1TrackObjectNtupleMaker.cc:297
edmNew::makeRefTo
edm::Ref< typename HandleT::element_type, typename HandleT::element_type::value_type::value_type > makeRefTo(const HandleT &iHandle, typename HandleT::element_type::value_type::const_iterator itIter)
Definition: DetSetVectorNew.h:704
L1TrackObjectNtupleMaker::m_allstub_matchTP_phi
std::vector< float > * m_allstub_matchTP_phi
Definition: L1TrackObjectNtupleMaker.cc:322
TrackingParticle::p4
const LorentzVector & p4() const
Four-momentum Lorentz vector. Note this is taken from the first SimTrack only.
Definition: TrackingParticle.h:103
L1TrackObjectNtupleMaker::m_allstub_x
std::vector< float > * m_allstub_x
Definition: L1TrackObjectNtupleMaker.cc:307
L1TrackObjectNtupleMaker::m_trkExt_eta
std::vector< float > * m_trkExt_eta
Definition: L1TrackObjectNtupleMaker.cc:230
L1TrackObjectNtupleMaker::TrackFastJetsInputTag
edm::InputTag TrackFastJetsInputTag
Definition: L1TrackObjectNtupleMaker.cc:143
L1TrackObjectNtupleMaker::m_trk_hitpattern
std::vector< int > * m_trk_hitpattern
Definition: L1TrackObjectNtupleMaker.cc:214
TrackerTopology::layer
unsigned int layer(const DetId &id) const
Definition: TrackerTopology.cc:47
GeomDet::topology
virtual const Topology & topology() const
Definition: GeomDet.cc:67
L1TrackObjectNtupleMaker::m_trk_chi2
std::vector< float > * m_trk_chi2
Definition: L1TrackObjectNtupleMaker.cc:205
Topology::localPosition
virtual LocalPoint localPosition(const MeasurementPoint &) const =0
L1TrackObjectNtupleMaker::SaveTrackJets
bool SaveTrackJets
Definition: L1TrackObjectNtupleMaker.cc:127
TrackerTopology::stack
uint32_t stack(const DetId &id) const
Definition: TrackerTopology.cc:104
L1TrackObjectNtupleMaker::m_trkExt_chi2rz
std::vector< float > * m_trkExt_chi2rz
Definition: L1TrackObjectNtupleMaker.cc:237
L1TrackObjectNtupleMaker::TrackFastJetsExtendedToken_
edm::EDGetTokenT< std::vector< l1t::TkJet > > TrackFastJetsExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:171
DDAxes::x
L1TrackObjectNtupleMaker::m_trkExt_hitpattern
std::vector< int > * m_trkExt_hitpattern
Definition: L1TrackObjectNtupleMaker.cc:243
L1TrackObjectNtupleMaker::TP_maxZ0
double TP_maxZ0
Definition: L1TrackObjectNtupleMaker.cc:124
L1TrackObjectNtupleMaker::TrackMHTExtendedToken_
edm::EDGetTokenT< l1t::TkHTMissCollection > TrackMHTExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:175
L1TrackObjectNtupleMaker::m_matchtrkExt_d0
std::vector< float > * m_matchtrkExt_d0
Definition: L1TrackObjectNtupleMaker.cc:293
L1TrackObjectNtupleMaker::m_tp_phi
std::vector< float > * m_tp_phi
Definition: L1TrackObjectNtupleMaker.cc:260
L1TrackObjectNtupleMaker::m_matchtrkExt_hitpattern
std::vector< int > * m_matchtrkExt_hitpattern
Definition: L1TrackObjectNtupleMaker.cc:304
L1TrackObjectNtupleMaker::m_trkjet_tp_sumpt
std::vector< float > * m_trkjet_tp_sumpt
Definition: L1TrackObjectNtupleMaker.cc:359
edm::Handle
Definition: AssociativeIterator.h:50
L1TrackObjectNtupleMaker::m_trkExt_matchtp_dxy
std::vector< float > * m_trkExt_matchtp_dxy
Definition: L1TrackObjectNtupleMaker.cc:255
edm::Service::isAvailable
bool isAvailable() const
Definition: Service.h:40
L1TrackObjectNtupleMaker::m_trk_nstub
std::vector< int > * m_trk_nstub
Definition: L1TrackObjectNtupleMaker.cc:210
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
L1TrackObjectNtupleMaker::m_trkjet_eta
std::vector< float > * m_trkjet_eta
Definition: L1TrackObjectNtupleMaker.cc:356
L1TrackObjectNtupleMaker::available_
bool available_
Definition: L1TrackObjectNtupleMaker.cc:185
L1TrackObjectNtupleMaker::m_trk_loose
std::vector< int > * m_trk_loose
Definition: L1TrackObjectNtupleMaker.cc:217
L1TrackObjectNtupleMaker::m_trkExt_nstub
std::vector< int > * m_trkExt_nstub
Definition: L1TrackObjectNtupleMaker.cc:239
L1TrackObjectNtupleMaker::m_allstub_genuine
std::vector< int > * m_allstub_genuine
Definition: L1TrackObjectNtupleMaker.cc:323
L1TrackObjectNtupleMaker::m_trkExt_phi
std::vector< float > * m_trkExt_phi
Definition: L1TrackObjectNtupleMaker.cc:231
reco::isNeutrino
bool isNeutrino(const Candidate &part)
Definition: pdgIdUtils.h:17
L1TrackObjectNtupleMaker::m_matchtrk_dhits
std::vector< int > * m_matchtrk_dhits
Definition: L1TrackObjectNtupleMaker.cc:285
edm::Ref
Definition: AssociativeIterator.h:58
L1TrackObjectNtupleMaker::m_trk_dhits
std::vector< int > * m_trk_dhits
Definition: L1TrackObjectNtupleMaker.cc:212
L1TrackObjectNtupleMaker::m_trkExt_unknown
std::vector< int > * m_trkExt_unknown
Definition: L1TrackObjectNtupleMaker.cc:247
L1TrackObjectNtupleMaker::ttClusterMCTruthToken_
edm::EDGetTokenT< TTClusterAssociationMap< Ref_Phase2TrackerDigi_ > > ttClusterMCTruthToken_
Definition: L1TrackObjectNtupleMaker.cc:155
L1TrackObjectNtupleMaker::m_trkExt_pt
std::vector< float > * m_trkExt_pt
Definition: L1TrackObjectNtupleMaker.cc:229
L1TrackObjectNtupleMaker::Displaced
string Displaced
Definition: L1TrackObjectNtupleMaker.cc:119
L1TrackObjectNtupleMaker::m_trkExt_chi2dof
std::vector< float > * m_trkExt_chi2dof
Definition: L1TrackObjectNtupleMaker.cc:235
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
TrackerGeometry::idToDetUnit
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
Definition: TrackerGeometry.cc:183
L1TrackObjectNtupleMaker::m_allstub_trigBend
std::vector< float > * m_allstub_trigBend
Definition: L1TrackObjectNtupleMaker.cc:316
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
L1TrackObjectNtupleMaker::m_trkjetExt_phi
std::vector< float > * m_trkjetExt_phi
Definition: L1TrackObjectNtupleMaker.cc:375
L1TrackObjectNtupleMaker::m_matchtrk_pt
std::vector< float > * m_matchtrk_pt
Definition: L1TrackObjectNtupleMaker.cc:273
L1TrackObjectNtupleMaker::m_tp_charge
std::vector< int > * m_tp_charge
Definition: L1TrackObjectNtupleMaker.cc:270
L1TrackObjectNtupleMaker::m_matchtrk_chi2rz
std::vector< float > * m_matchtrk_chi2rz
Definition: L1TrackObjectNtupleMaker.cc:281
L1TrackObjectNtupleMaker::m_trk_seed
std::vector< int > * m_trk_seed
Definition: L1TrackObjectNtupleMaker.cc:213
L1TrackObjectNtupleMaker::TP_maxEta
double TP_maxEta
Definition: L1TrackObjectNtupleMaker.cc:123
DetId
Definition: DetId.h:17
L1TrackObjectNtupleMaker::m_2ltrkjetExt_nTight
std::vector< int > * m_2ltrkjetExt_nTight
Definition: L1TrackObjectNtupleMaker.cc:369
L1TrackObjectNtupleMaker::TrackJetsExtendedInputTag
edm::InputTag TrackJetsExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:149
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
L1TrackObjectNtupleMaker::m_matchtrkExt_lhits
std::vector< int > * m_matchtrkExt_lhits
Definition: L1TrackObjectNtupleMaker.cc:301
edmNew::DetSet::end
iterator end()
Definition: DetSetNew.h:56
L1TrackObjectNtupleMaker::trkMET
float trkMET
Definition: L1TrackObjectNtupleMaker.cc:334
L1TrackObjectNtupleMaker::m_trk_matchtp_dxy
std::vector< float > * m_trk_matchtp_dxy
Definition: L1TrackObjectNtupleMaker.cc:226
L1TrackObjectNtupleMaker::L1TrackExtendedInputTag
edm::InputTag L1TrackExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:132
L1TrackObjectNtupleMaker::m_2ltrkjetExt_ntdtrk
std::vector< int > * m_2ltrkjetExt_ntdtrk
Definition: L1TrackObjectNtupleMaker.cc:371
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
L1TrackObjectNtupleMaker::eventTree
TTree * eventTree
Definition: L1TrackObjectNtupleMaker.cc:187
L1TrackObjectNtupleMaker::m_trkExt_matchtp_pdgid
std::vector< int > * m_trkExt_matchtp_pdgid
Definition: L1TrackObjectNtupleMaker.cc:250
L1TrackObjectNtupleMaker::m_trkExt_chi2
std::vector< float > * m_trkExt_chi2
Definition: L1TrackObjectNtupleMaker.cc:234
L1TrackObjectNtupleMaker::m_matchtrk_chi2dof
std::vector< float > * m_matchtrk_chi2dof
Definition: L1TrackObjectNtupleMaker.cc:279
L1TrackObjectNtupleMaker::m_2ltrkjetExt_vz
std::vector< float > * m_2ltrkjetExt_vz
Definition: L1TrackObjectNtupleMaker.cc:362
L1TrackObjectNtupleMaker::m_trkExt_genuine
std::vector< int > * m_trkExt_genuine
Definition: L1TrackObjectNtupleMaker.cc:245
L1TrackObjectNtupleMaker::SaveTrackMET
bool SaveTrackMET
Definition: L1TrackObjectNtupleMaker.cc:128
L1TrackObjectNtupleMaker::L1StubInputTag
edm::InputTag L1StubInputTag
Definition: L1TrackObjectNtupleMaker.cc:135
L1TrackObjectNtupleMaker::m_matchtrk_bendchi2
std::vector< float > * m_matchtrk_bendchi2
Definition: L1TrackObjectNtupleMaker.cc:282
L1TrackObjectNtupleMaker::m_trkjet_phi
std::vector< float > * m_trkjet_phi
Definition: L1TrackObjectNtupleMaker.cc:355
L1TrackObjectNtupleMaker::m_matchtrkExt_z0
std::vector< float > * m_matchtrkExt_z0
Definition: L1TrackObjectNtupleMaker.cc:294
L1TrackObjectNtupleMaker::m_trk_phi
std::vector< float > * m_trk_phi
Definition: L1TrackObjectNtupleMaker.cc:202
L1TrackObjectNtupleMaker::config
edm::ParameterSet config
Definition: L1TrackObjectNtupleMaker.cc:113
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
TTStub
Class to store the L1 Track Trigger stubs.
Definition: TTStub.h:22
Surface::toGlobal
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
DDAxes::z
L1TrackObjectNtupleMaker::m_trkExt_matchtp_z0
std::vector< float > * m_trkExt_matchtp_z0
Definition: L1TrackObjectNtupleMaker.cc:254
L1TrackObjectNtupleMaker::L1VertexToken_
edm::EDGetTokenT< l1t::TkPrimaryVertexCollection > L1VertexToken_
Definition: L1TrackObjectNtupleMaker.cc:168
L1TrackObjectNtupleMaker::TP_minPt
double TP_minPt
Definition: L1TrackObjectNtupleMaker.cc:122
edmNew::DetSet
Definition: DetSetNew.h:22
L1TrackObjectNtupleMaker::m_allstub_matchTP_eta
std::vector< float > * m_allstub_matchTP_eta
Definition: L1TrackObjectNtupleMaker.cc:321
TrackingParticle::momentum
Vector momentum() const
spatial momentum vector
Definition: TrackingParticle.h:106
L1TrackObjectNtupleMaker::m_2ltrkjet_nTightDisplaced
std::vector< int > * m_2ltrkjet_nTightDisplaced
Definition: L1TrackObjectNtupleMaker.cc:350
TrackingParticle::vertex
Point vertex() const
Parent vertex position.
Definition: TrackingParticle.h:169
L1TrackObjectNtupleMaker::trkMHT
float trkMHT
Definition: L1TrackObjectNtupleMaker.cc:335
L1TrackObjectNtupleMaker::m_trk_pt
std::vector< float > * m_trk_pt
Definition: L1TrackObjectNtupleMaker.cc:200
L1TrackObjectNtupleMaker::ttStubMCTruthToken_
edm::EDGetTokenT< TTStubAssociationMap< Ref_Phase2TrackerDigi_ > > ttStubMCTruthToken_
Definition: L1TrackObjectNtupleMaker.cc:156
L1TrackObjectNtupleMaker::m_allstub_matchTP_pt
std::vector< float > * m_allstub_matchTP_pt
Definition: L1TrackObjectNtupleMaker.cc:320
L1TrackObjectNtupleMaker::trkMETExt
float trkMETExt
Definition: L1TrackObjectNtupleMaker.cc:338
L1TrackObjectNtupleMaker::m_trk_d0
std::vector< float > * m_trk_d0
Definition: L1TrackObjectNtupleMaker.cc:203
Point3DBase< float, LocalTag >
PixelTopology
Definition: PixelTopology.h:10
L1TrackObjectNtupleMaker::m_matchtrk_hitpattern
std::vector< int > * m_matchtrk_hitpattern
Definition: L1TrackObjectNtupleMaker.cc:287
L1TrackObjectNtupleMaker::TrackMETExtendedToken_
edm::EDGetTokenT< std::vector< l1t::TkEtMiss > > TrackMETExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:173
L1TrackObjectNtupleMaker::MCTruthStubInputTag
edm::InputTag MCTruthStubInputTag
Definition: L1TrackObjectNtupleMaker.cc:136
L1TrackObjectNtupleMaker::m_2ltrkjet_nDisplaced
std::vector< int > * m_2ltrkjet_nDisplaced
Definition: L1TrackObjectNtupleMaker.cc:348
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
L1TrackObjectNtupleMaker::m_2ltrkjetExt_phi
std::vector< float > * m_2ltrkjetExt_phi
Definition: L1TrackObjectNtupleMaker.cc:364
L1TrackObjectNtupleMaker::m_trkExt_matchtp_eta
std::vector< float > * m_trkExt_matchtp_eta
Definition: L1TrackObjectNtupleMaker.cc:252
L1TrackObjectNtupleMaker::TrackingParticleToken_
edm::EDGetTokenT< std::vector< TrackingParticle > > TrackingParticleToken_
Definition: L1TrackObjectNtupleMaker.cc:163
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
L1TrackObjectNtupleMaker::m_tp_dxy
std::vector< float > * m_tp_dxy
Definition: L1TrackObjectNtupleMaker.cc:261
L1TrackObjectNtupleMaker::m_tp_d0_prod
std::vector< float > * m_tp_d0_prod
Definition: L1TrackObjectNtupleMaker.cc:264
L1TrackObjectNtupleMaker::m_trk_z0
std::vector< float > * m_trk_z0
Definition: L1TrackObjectNtupleMaker.cc:204
PixelPluginsPhase0_cfi.isBarrel
isBarrel
Definition: PixelPluginsPhase0_cfi.py:17
L1TrackObjectNtupleMaker::m_allstub_trigPos
std::vector< float > * m_allstub_trigPos
Definition: L1TrackObjectNtupleMaker.cc:315
L1TrackObjectNtupleMaker::m_2ltrkjetExt_nDisplaced
std::vector< int > * m_2ltrkjetExt_nDisplaced
Definition: L1TrackObjectNtupleMaker.cc:368
L1TrackObjectNtupleMaker::TrackJetsExtendedToken_
edm::EDGetTokenT< l1t::TkJetCollection > TrackJetsExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:177
L1TrackObjectNtupleMaker::m_trkExt_dhits
std::vector< int > * m_trkExt_dhits
Definition: L1TrackObjectNtupleMaker.cc:241
L1TrackObjectNtupleMaker::m_trkjetExt_truetp_sumpt
std::vector< float > * m_trkjetExt_truetp_sumpt
Definition: L1TrackObjectNtupleMaker.cc:380
L1TrackObjectNtupleMaker::TrackJetsInputTag
edm::InputTag TrackJetsInputTag
Definition: L1TrackObjectNtupleMaker.cc:144
L1TrackObjectNtupleMaker::m_trkjet_pt
std::vector< float > * m_trkjet_pt
Definition: L1TrackObjectNtupleMaker.cc:357
L1TrackObjectNtupleMaker::m_trk_genuine
std::vector< int > * m_trk_genuine
Definition: L1TrackObjectNtupleMaker.cc:216
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
L1TrackObjectNtupleMaker::m_trkExt_seed
std::vector< int > * m_trkExt_seed
Definition: L1TrackObjectNtupleMaker.cc:242
L1TrackObjectNtupleMaker::ttTrackToken_
edm::EDGetTokenT< std::vector< TTTrack< Ref_Phase2TrackerDigi_ > > > ttTrackToken_
Definition: L1TrackObjectNtupleMaker.cc:158
L1TrackObjectNtupleMaker::ttTrackExtendedToken_
edm::EDGetTokenT< std::vector< TTTrack< Ref_Phase2TrackerDigi_ > > > ttTrackExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:160
L1TrackObjectNtupleMaker::m_trkExt_loose
std::vector< int > * m_trkExt_loose
Definition: L1TrackObjectNtupleMaker.cc:246
L1TrackObjectNtupleMaker::m_allstub_isBarrel
std::vector< int > * m_allstub_isBarrel
Definition: L1TrackObjectNtupleMaker.cc:310
L1TrackObjectNtupleMaker::m_trk_chi2rz
std::vector< float > * m_trk_chi2rz
Definition: L1TrackObjectNtupleMaker.cc:208
L1TrackObjectNtupleMaker::TrackFastJetsExtendedInputTag
edm::InputTag TrackFastJetsExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:148
L1TrackObjectNtupleMaker::m_2ltrkjet_nTight
std::vector< int > * m_2ltrkjet_nTight
Definition: L1TrackObjectNtupleMaker.cc:349
L1TrackObjectNtupleMaker::m_matchtrkExt_dhits
std::vector< int > * m_matchtrkExt_dhits
Definition: L1TrackObjectNtupleMaker.cc:302
EncodedEventId::event
int event() const
get the contents of the subdetector field (should be protected?)
Definition: EncodedEventId.h:30
L1TrackObjectNtupleMaker::trkHT
float trkHT
Definition: L1TrackObjectNtupleMaker.cc:336
L1TrackObjectNtupleMaker::TrackMHTInputTag
edm::InputTag TrackMHTInputTag
Definition: L1TrackObjectNtupleMaker.cc:146
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
funct::tan
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
L1TrackObjectNtupleMaker::MyProcess
int MyProcess
Definition: L1TrackObjectNtupleMaker.cc:115
edm::Service< TFileService >
createfilelist.int
int
Definition: createfilelist.py:10
L1TrackObjectNtupleMaker::m_trk_matchtp_pt
std::vector< float > * m_trk_matchtp_pt
Definition: L1TrackObjectNtupleMaker.cc:222
iEvent
int iEvent
Definition: GenABIO.cc:224
L1TrackObjectNtupleMaker::m_trkjetExt_vz
std::vector< float > * m_trkjetExt_vz
Definition: L1TrackObjectNtupleMaker.cc:373
TrackingParticle::pdgId
int pdgId() const
PDG ID.
Definition: TrackingParticle.h:61
L1TrackObjectNtupleMaker::m_matchtrk_lhits
std::vector< int > * m_matchtrk_lhits
Definition: L1TrackObjectNtupleMaker.cc:284
L1TrackObjectNtupleMaker::m_2ltrkjet_phi
std::vector< float > * m_2ltrkjet_phi
Definition: L1TrackObjectNtupleMaker.cc:344
L1TrackObjectNtupleMaker::m_allstub_trigDisplace
std::vector< float > * m_allstub_trigDisplace
Definition: L1TrackObjectNtupleMaker.cc:313
L1TrackObjectNtupleMaker::m_2ltrkjet_eta
std::vector< float > * m_2ltrkjet_eta
Definition: L1TrackObjectNtupleMaker.cc:345
L1TrackObjectNtupleMaker::GenJetInputTag
edm::InputTag GenJetInputTag
Definition: L1TrackObjectNtupleMaker.cc:139
L1TrackObjectNtupleMaker::m_matchtrk_seed
std::vector< int > * m_matchtrk_seed
Definition: L1TrackObjectNtupleMaker.cc:286
L1TrackObjectNtupleMaker::TrackingVertexInputTag
edm::InputTag TrackingVertexInputTag
Definition: L1TrackObjectNtupleMaker.cc:138
edmNew::DetSet::begin
iterator begin()
Definition: DetSetNew.h:54
L1TrackObjectNtupleMaker::trkMHTExt
float trkMHTExt
Definition: L1TrackObjectNtupleMaker.cc:339
L1TrackObjectNtupleMaker::m_trkExt_fake
std::vector< int > * m_trkExt_fake
Definition: L1TrackObjectNtupleMaker.cc:249
L1TrackObjectNtupleMaker::m_trk_phiSector
std::vector< unsigned int > * m_trk_phiSector
Definition: L1TrackObjectNtupleMaker.cc:215
L1TrackObjectNtupleMaker::m_MC_lep
std::vector< int > * m_MC_lep
Definition: L1TrackObjectNtupleMaker.cc:197
L1TrackObjectNtupleMaker::m_trkjetExt_pt
std::vector< float > * m_trkjetExt_pt
Definition: L1TrackObjectNtupleMaker.cc:377
TrackerGeometry::dets
const DetContainer & dets() const override
Returm a vector of all GeomDet (including all GeomDetUnits)
Definition: TrackerGeometry.h:62
L1TrackObjectNtupleMaker::m_trkjet_vz
std::vector< float > * m_trkjet_vz
Definition: L1TrackObjectNtupleMaker.cc:353
L1TrackObjectNtupleMaker::m_pv_MC
std::vector< float > * m_pv_MC
Definition: L1TrackObjectNtupleMaker.cc:195
L1TrackObjectNtupleMaker::m_trk_fake
std::vector< int > * m_trk_fake
Definition: L1TrackObjectNtupleMaker.cc:220
L1TrackObjectNtupleMaker::m_trk_unknown
std::vector< int > * m_trk_unknown
Definition: L1TrackObjectNtupleMaker.cc:218
L1TrackObjectNtupleMaker::m_tp_z0_prod
std::vector< float > * m_tp_z0_prod
Definition: L1TrackObjectNtupleMaker.cc:265
L1TrackObjectNtupleMaker::m_trk_bendchi2
std::vector< float > * m_trk_bendchi2
Definition: L1TrackObjectNtupleMaker.cc:209
L1TrackObjectNtupleMaker::m_2ltrkjet_p
std::vector< float > * m_2ltrkjet_p
Definition: L1TrackObjectNtupleMaker.cc:343
L1TrackObjectNtupleMaker::m_allstub_y
std::vector< float > * m_allstub_y
Definition: L1TrackObjectNtupleMaker.cc:308
L1TrackObjectNtupleMaker::m_matchtrkExt_chi2
std::vector< float > * m_matchtrkExt_chi2
Definition: L1TrackObjectNtupleMaker.cc:295
L1TrackObjectNtupleMaker::TrackFastJetsToken_
edm::EDGetTokenT< std::vector< l1t::TkJet > > TrackFastJetsToken_
Definition: L1TrackObjectNtupleMaker.cc:170
TFileService::make
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
L1TrackObjectNtupleMaker::m_trk_eta
std::vector< float > * m_trk_eta
Definition: L1TrackObjectNtupleMaker.cc:201
TrackingParticle::eventId
EncodedEventId eventId() const
Signal source, crossing number.
Definition: TrackingParticle.h:72
edm::Ptr< TrackingParticle >
edm::EventSetup::getData
bool getData(T &iHolder) const
Definition: EventSetup.h:127
L1TrackObjectNtupleMaker::m_trk_matchtp_z0
std::vector< float > * m_trk_matchtp_z0
Definition: L1TrackObjectNtupleMaker.cc:225
L1TrackObjectNtupleMaker::DebugMode
bool DebugMode
Definition: L1TrackObjectNtupleMaker.cc:116
L1TrackObjectNtupleMaker::m_matchtrk_phi
std::vector< float > * m_matchtrk_phi
Definition: L1TrackObjectNtupleMaker.cc:275
L1TrackObjectNtupleMaker::m_2ltrkjetExt_pt
std::vector< float > * m_2ltrkjetExt_pt
Definition: L1TrackObjectNtupleMaker.cc:366
L1TrackObjectNtupleMaker::m_tp_pdgid
std::vector< int > * m_tp_pdgid
Definition: L1TrackObjectNtupleMaker.cc:266
L1TrackObjectNtupleMaker::m_matchtrk_eta
std::vector< float > * m_matchtrk_eta
Definition: L1TrackObjectNtupleMaker.cc:274
L1TrackObjectNtupleMaker::m_tp_pt
std::vector< float > * m_tp_pt
Definition: L1TrackObjectNtupleMaker.cc:258
L1TrackObjectNtupleMaker::ttStubToken_
edm::EDGetTokenT< edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > > > ttStubToken_
Definition: L1TrackObjectNtupleMaker.cc:154
L1TrackObjectNtupleMaker::TrackMETInputTag
edm::InputTag TrackMETInputTag
Definition: L1TrackObjectNtupleMaker.cc:145
L1TrackObjectNtupleMaker::MCTruthTrackInputTag
edm::InputTag MCTruthTrackInputTag
Definition: L1TrackObjectNtupleMaker.cc:131
isum
double isum
Definition: MuScleFitUtils.cc:77
L1TrackObjectNtupleMaker::m_trkExt_bendchi2
std::vector< float > * m_trkExt_bendchi2
Definition: L1TrackObjectNtupleMaker.cc:238
PVValHelper::dxy
Definition: PVValidationHelpers.h:48
L1TrackObjectNtupleMaker::tGeomToken_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > tGeomToken_
Definition: L1TrackObjectNtupleMaker.cc:180
L1TrackObjectNtupleMaker::m_trk_matchtp_phi
std::vector< float > * m_trk_matchtp_phi
Definition: L1TrackObjectNtupleMaker.cc:224
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
L1TrackObjectNtupleMaker::m_matchtrkExt_chi2rz
std::vector< float > * m_matchtrkExt_chi2rz
Definition: L1TrackObjectNtupleMaker.cc:298
L1TrackObjectNtupleMaker::m_matchtrkExt_chi2dof
std::vector< float > * m_matchtrkExt_chi2dof
Definition: L1TrackObjectNtupleMaker.cc:296
L1TrackObjectNtupleMaker::m_trk_chi2rphi
std::vector< float > * m_trk_chi2rphi
Definition: L1TrackObjectNtupleMaker.cc:207
L1TrackObjectNtupleMaker::trueMET
float trueMET
Definition: L1TrackObjectNtupleMaker.cc:333
StripSubdetector::TOB
static constexpr auto TOB
Definition: StripSubdetector.h:18
L1TrackObjectNtupleMaker::m_trkjetExt_eta
std::vector< float > * m_trkjetExt_eta
Definition: L1TrackObjectNtupleMaker.cc:376
L1TrackObjectNtupleMaker::m_allstub_trigOffset
std::vector< float > * m_allstub_trigOffset
Definition: L1TrackObjectNtupleMaker.cc:314
L1TrackObjectNtupleMaker::m_2ltrkjetExt_ntracks
std::vector< int > * m_2ltrkjetExt_ntracks
Definition: L1TrackObjectNtupleMaker.cc:367
L1TrackObjectNtupleMaker::L1TrackInputTag
edm::InputTag L1TrackInputTag
Definition: L1TrackObjectNtupleMaker.cc:130
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
L1TrackObjectNtupleMaker::SaveStubs
bool SaveStubs
Definition: L1TrackObjectNtupleMaker.cc:118
L1TrackObjectNtupleMaker::m_pv_L1reco
std::vector< float > * m_pv_L1reco
Definition: L1TrackObjectNtupleMaker.cc:192
L1TrackObjectNtupleMaker::m_trk_matchtp_pdgid
std::vector< int > * m_trk_matchtp_pdgid
Definition: L1TrackObjectNtupleMaker.cc:221
L1TrackObjectNtupleMaker::m_tp_z0
std::vector< float > * m_tp_z0
Definition: L1TrackObjectNtupleMaker.cc:263
L1TrackObjectNtupleMaker::m_trkjet_ntracks
std::vector< int > * m_trkjet_ntracks
Definition: L1TrackObjectNtupleMaker.cc:358
L1TrackObjectNtupleMaker::m_allstub_isPSmodule
std::vector< int > * m_allstub_isPSmodule
Definition: L1TrackObjectNtupleMaker.cc:312
L1TrackObjectNtupleMaker::m_trkExt_matchtp_phi
std::vector< float > * m_trkExt_matchtp_phi
Definition: L1TrackObjectNtupleMaker.cc:253
L1TrackObjectNtupleMaker::m_matchtrkExt_phi
std::vector< float > * m_matchtrkExt_phi
Definition: L1TrackObjectNtupleMaker.cc:292
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
L1TrackObjectNtupleMaker::m_2ltrkjet_ntracks
std::vector< int > * m_2ltrkjet_ntracks
Definition: L1TrackObjectNtupleMaker.cc:347
L1TrackObjectNtupleMaker::m_tp_d0
std::vector< float > * m_tp_d0
Definition: L1TrackObjectNtupleMaker.cc:262
ztail.d
d
Definition: ztail.py:151
L1TrackObjectNtupleMaker::ttTrackMCTruthExtendedToken_
edm::EDGetTokenT< TTTrackAssociationMap< Ref_Phase2TrackerDigi_ > > ttTrackMCTruthExtendedToken_
Definition: L1TrackObjectNtupleMaker.cc:161
L1TrackObjectNtupleMaker::m_matchtrkExt_nstub
std::vector< int > * m_matchtrkExt_nstub
Definition: L1TrackObjectNtupleMaker.cc:300
L1TrackObjectNtupleMaker::TrackingVertexToken_
edm::EDGetTokenT< std::vector< TrackingVertex > > TrackingVertexToken_
Definition: L1TrackObjectNtupleMaker.cc:164
L1TrackObjectNtupleMaker::m_trk_matchtp_eta
std::vector< float > * m_trk_matchtp_eta
Definition: L1TrackObjectNtupleMaker.cc:223
pi
const Double_t pi
Definition: trackSplitPlot.h:36
L1TrackObjectNtupleMaker::m_2ltrkjetExt_p
std::vector< float > * m_2ltrkjetExt_p
Definition: L1TrackObjectNtupleMaker.cc:363
L1TrackObjectNtupleMaker::MCTruthTrackExtendedInputTag
edm::InputTag MCTruthTrackExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:133
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
L1TrackObjectNtupleMaker::TrackingParticleInputTag
edm::InputTag TrackingParticleInputTag
Definition: L1TrackObjectNtupleMaker.cc:137
L1TrackObjectNtupleMaker::TrackingInJets
bool TrackingInJets
Definition: L1TrackObjectNtupleMaker.cc:126
L1TrackObjectNtupleMaker::m_matchtrkExt_seed
std::vector< int > * m_matchtrkExt_seed
Definition: L1TrackObjectNtupleMaker.cc:303
L1TrackObjectNtupleMaker::m_2ltrkjetExt_nTightDisplaced
std::vector< int > * m_2ltrkjetExt_nTightDisplaced
Definition: L1TrackObjectNtupleMaker.cc:370
L1TrackObjectNtupleMaker::m_tp_nstub
std::vector< int > * m_tp_nstub
Definition: L1TrackObjectNtupleMaker.cc:268
JetChargeProducer_cfi.exp
exp
Definition: JetChargeProducer_cfi.py:6
L1TrackObjectNtupleMaker::m_trkjetExt_tp_sumpt
std::vector< float > * m_trkjetExt_tp_sumpt
Definition: L1TrackObjectNtupleMaker.cc:379
L1TrackObjectNtupleMaker::m_allstub_layer
std::vector< int > * m_allstub_layer
Definition: L1TrackObjectNtupleMaker.cc:311
L1TrackObjectNtupleMaker::m_trkExt_z0
std::vector< float > * m_trkExt_z0
Definition: L1TrackObjectNtupleMaker.cc:233
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
L1TrackObjectNtupleMaker::GenParticleInputTag
edm::InputTag GenParticleInputTag
Definition: L1TrackObjectNtupleMaker.cc:141
PixelTopology::nrows
virtual int nrows() const =0
A
L1TrackObjectNtupleMaker::m_matchtrkExt_pt
std::vector< float > * m_matchtrkExt_pt
Definition: L1TrackObjectNtupleMaker.cc:290
L1TrackObjectNtupleMaker::m_matchtrkExt_eta
std::vector< float > * m_matchtrkExt_eta
Definition: L1TrackObjectNtupleMaker.cc:291
L1TrackObjectNtupleMaker::trkHTExt
float trkHTExt
Definition: L1TrackObjectNtupleMaker.cc:340
L1TrackObjectNtupleMaker::MCTruthClusterInputTag
edm::InputTag MCTruthClusterInputTag
Definition: L1TrackObjectNtupleMaker.cc:134
edm::Ptr::isNull
bool isNull() const
Checks for null.
Definition: Ptr.h:142
edm::InputTag
Definition: InputTag.h:15
L1TrackObjectNtupleMaker::m_trkjetExt_ntracks
std::vector< int > * m_trkjetExt_ntracks
Definition: L1TrackObjectNtupleMaker.cc:378
L1TrackObjectNtupleMaker::TrackMHTExtendedInputTag
edm::InputTag TrackMHTExtendedInputTag
Definition: L1TrackObjectNtupleMaker.cc:151
StripSubdetector::TID
static constexpr auto TID
Definition: StripSubdetector.h:17
L1TrackObjectNtupleMaker::GenJetToken_
edm::EDGetTokenT< std::vector< reco::GenJet > > GenJetToken_
Definition: L1TrackObjectNtupleMaker.cc:166
L1TrackObjectNtupleMaker::tTopoToken_
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
Definition: L1TrackObjectNtupleMaker.cc:179
L1TrackObjectNtupleMaker::m_allstub_z
std::vector< float > * m_allstub_z
Definition: L1TrackObjectNtupleMaker.cc:309
L1TrackObjectNtupleMaker::m_trkjet_p
std::vector< float > * m_trkjet_p
Definition: L1TrackObjectNtupleMaker.cc:354
L1TrackObjectNtupleMaker::m_trkExt_matchtp_pt
std::vector< float > * m_trkExt_matchtp_pt
Definition: L1TrackObjectNtupleMaker.cc:251
L1TrackObjectNtupleMaker::m_trk_chi2dof
std::vector< float > * m_trk_chi2dof
Definition: L1TrackObjectNtupleMaker.cc:206
L1TrackObjectNtupleMaker::m_allstub_matchTP_pdgid
std::vector< int > * m_allstub_matchTP_pdgid
Definition: L1TrackObjectNtupleMaker.cc:319
L1TrackObjectNtupleMaker::m_trkjetExt_p
std::vector< float > * m_trkjetExt_p
Definition: L1TrackObjectNtupleMaker.cc:374
L1TrackObjectNtupleMaker::m_trkExt_lhits
std::vector< int > * m_trkExt_lhits
Definition: L1TrackObjectNtupleMaker.cc:240
TrackerGeometry
Definition: TrackerGeometry.h:14
L1TrackObjectNtupleMaker::m_trkExt_d0
std::vector< float > * m_trkExt_d0
Definition: L1TrackObjectNtupleMaker.cc:232