CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
OMTFPatternMaker Class Reference

#include <OMTFPatternMaker.h>

Inheritance diagram for OMTFPatternMaker:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void beginRun (edm::Run const &run, edm::EventSetup const &iSetup) override
 
void endJob () override
 
 OMTFPatternMaker (const edm::ParameterSet &cfg)
 
 ~OMTFPatternMaker () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () 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
 
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::vector< ModuleDescription const * > &modules, 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
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

const SimTrackfindSimMuon (const edm::Event &ev, const edm::EventSetup &es, const SimTrack *previous=nullptr)
 
void writeMergedGPs ()
 

Private Attributes

xercesc::DOMElement * aTopElement
 
edm::InputTag g4SimTrackSrc
 
edm::EDGetTokenT< CSCCorrelatedLCTDigiCollectioninputTokenCSC
 
edm::EDGetTokenT< L1MuDTChambPhContainerinputTokenDTPh
 
edm::EDGetTokenT< L1MuDTChambThContainerinputTokenDTTh
 
edm::EDGetTokenT< RPCDigiCollectioninputTokenRPC
 
edm::EDGetTokenT< edm::SimTrackContainerinputTokenSimHit
 
bool makeConnectionsMaps
 
bool makeGoldenPatterns
 
bool mergeXMLFiles
 
OMTFinputMakermyInputMaker
 
OMTFProcessormyOMTF
 
OMTFConfigurationmyOMTFConfig
 OMTF objects. More...
 
OMTFConfigMakermyOMTFConfigMaker
 
XMLConfigWritermyWriter
 
unsigned int nPdfAddrBits
 Original pdf width. read from configuration. More...
 
edm::ParameterSet theConfig
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- 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>
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<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
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 35 of file OMTFPatternMaker.h.

Constructor & Destructor Documentation

◆ OMTFPatternMaker()

OMTFPatternMaker::OMTFPatternMaker ( const edm::ParameterSet cfg)

Definition at line 23 of file OMTFPatternMaker.cc.

24  : theConfig(cfg), g4SimTrackSrc(cfg.getParameter<edm::InputTag>("g4SimTrackSrc")) {
25  inputTokenDTPh = consumes<L1MuDTChambPhContainer>(theConfig.getParameter<edm::InputTag>("srcDTPh"));
26  inputTokenDTTh = consumes<L1MuDTChambThContainer>(theConfig.getParameter<edm::InputTag>("srcDTTh"));
27  inputTokenCSC = consumes<CSCCorrelatedLCTDigiCollection>(theConfig.getParameter<edm::InputTag>("srcCSC"));
28  inputTokenRPC = consumes<RPCDigiCollection>(theConfig.getParameter<edm::InputTag>("srcRPC"));
29  inputTokenSimHit = consumes<edm::SimTrackContainer>(theConfig.getParameter<edm::InputTag>("g4SimTrackSrc"));
30 
32  myInputMaker = new OMTFinputMaker(consumesColl);
33 
34  makeGoldenPatterns = theConfig.getParameter<bool>("makeGoldenPatterns");
35  makeConnectionsMaps = theConfig.getParameter<bool>("makeConnectionsMaps");
36  mergeXMLFiles = theConfig.getParameter<bool>("mergeXMLFiles");
37 
38  myOMTFConfig = nullptr;
39 }

References edm::EDConsumerBase::consumesCollector(), edm::ParameterSet::getParameter(), inputTokenCSC, inputTokenDTPh, inputTokenDTTh, inputTokenRPC, inputTokenSimHit, makeConnectionsMaps, makeGoldenPatterns, mergeXMLFiles, myInputMaker, myOMTFConfig, and theConfig.

◆ ~OMTFPatternMaker()

OMTFPatternMaker::~OMTFPatternMaker ( )
override

Definition at line 42 of file OMTFPatternMaker.cc.

42  {
43  delete myOMTFConfig;
44  delete myOMTFConfigMaker;
45  delete myOMTF;
46 }

References myOMTF, myOMTFConfig, and myOMTFConfigMaker.

Member Function Documentation

◆ analyze()

void OMTFPatternMaker::analyze ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
overridevirtual

Get the simulated muon parameters

Filter digis by dropping digis from selected (by cfg.py) subsystems

Loop over all processors, each covering 60 deg in phi

Input data with phi ranges shifted for each processor, so it fits 11 bits range

Connections maps are made by hand. makeConnetionsMap method provides tables for checking their consistency.

Implements edm::EDAnalyzer.

Definition at line 245 of file OMTFPatternMaker.cc.

245  {
246  if (mergeXMLFiles)
247  return;
248 
250  const SimTrack* aSimMuon = findSimMuon(iEvent, evSetup);
251  if (!aSimMuon) {
252  edm::LogError("OMTFPatternMaker") << "No SimMuon found in the event!";
253  return;
254  }
255 
257 
262 
264  if (!theConfig.getParameter<bool>("dropDTPrimitives")) {
265  iEvent.getByToken(inputTokenDTPh, dtPhDigis);
266  iEvent.getByToken(inputTokenDTTh, dtThDigis);
267  }
268  if (!theConfig.getParameter<bool>("dropRPCPrimitives"))
269  iEvent.getByToken(inputTokenRPC, rpcDigis);
270  if (!theConfig.getParameter<bool>("dropCSCPrimitives"))
271  iEvent.getByToken(inputTokenCSC, cscDigis);
272 
273  //l1t::tftype mtfType = l1t::tftype::bmtf;
275  //l1t::tftype mtfType = l1t::tftype::emtf_pos;
276 
278  for (unsigned int iProcessor = 0; iProcessor < 6; ++iProcessor) {
281  dtPhDigis.product(), dtThDigis.product(), cscDigis.product(), rpcDigis.product(), iProcessor, mtfType);
282 
286  myOMTFConfigMaker->makeConnetionsMap(iProcessor, myInput);
287 
288  if (makeGoldenPatterns)
289  myOMTF->fillCounts(iProcessor, myInput, aSimMuon);
290  }
291 }

References OMTFinputMaker::buildInputForProcessor(), OMTFProcessor::fillCounts(), findSimMuon(), edm::ParameterSet::getParameter(), iEvent, OMTFinputMaker::initialize(), inputTokenCSC, inputTokenDTPh, inputTokenDTTh, inputTokenRPC, makeConnectionsMaps, OMTFConfigMaker::makeConnetionsMap(), makeGoldenPatterns, mergeXMLFiles, myInputMaker, myOMTF, myOMTFConfig, myOMTFConfigMaker, l1t::omtf_pos, edm::Handle< T >::product(), and theConfig.

◆ beginJob()

void OMTFPatternMaker::beginJob ( void  )
overridevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 87 of file OMTFPatternMaker.cc.

87  {
89  myOMTF = new OMTFProcessor();
90 }

References myOMTF, and myOMTFConfig.

◆ beginRun()

void OMTFPatternMaker::beginRun ( edm::Run const &  run,
edm::EventSetup const &  iSetup 
)
overridevirtual

Initialise XML writer with default pdf.

For making the patterns use extended pdf width in phi, as pdf are later shifted by the mean value For low pt muons non shifted pdfs would go out of the default pdf range.

Clear existing GoldenPatterns

Reimplemented from edm::EDAnalyzer.

Definition at line 49 of file OMTFPatternMaker.cc.

49  {
50  const L1TMuonOverlapParamsRcd& omtfParamsRcd = iSetup.get<L1TMuonOverlapParamsRcd>();
51 
52  edm::ESHandle<L1TMuonOverlapParams> omtfParamsHandle;
53  omtfParamsRcd.get(omtfParamsHandle);
54 
55  const L1TMuonOverlapParams* omtfParams = omtfParamsHandle.product();
56 
57  if (!omtfParams) {
58  edm::LogError("L1TMuonOverlapTrackProducer") << "Could not retrieve parameters from Event Setup" << std::endl;
59  }
60 
63 
66  L1TMuonOverlapParams omtfParamsMutable = *omtfParams;
67  std::vector<int> generalParams = *omtfParamsMutable.generalParams();
68  nPdfAddrBits = omtfParams->nPdfAddrBits();
69 
70  if (!mergeXMLFiles)
72  omtfParamsMutable.setGeneralParams(generalParams);
73 
74  myOMTFConfig->configure(&omtfParamsMutable);
77 
79  if (!mergeXMLFiles) {
80  const std::map<Key, GoldenPattern*>& theGPs = myOMTF->getPatterns();
81  for (auto itGP : theGPs)
82  itGP.second->reset();
83  }
84 }

References OMTFProcessor::configure(), OMTFConfiguration::configure(), L1TMuonOverlapParams::GENERAL_ADDRBITS, L1TMuonOverlapParams::generalParams(), edm::EventSetup::get(), edm::eventsetup::EventSetupRecordImplementation< T >::get(), OMTFProcessor::getPatterns(), mergeXMLFiles, myOMTF, myOMTFConfig, myOMTFConfigMaker, myWriter, nPdfAddrBits, fakeOmtfParams_cff::omtfParams, and L1TMuonOverlapParams::setGeneralParams().

◆ endJob()

void OMTFPatternMaker::endJob ( void  )
overridevirtual

Put back default value of the pdf width.

Order important: printPhiMap updates global vector in OMTFConfiguration

Write GPs merged by 4 above iPt=71, and by 2 below// /////////////////////////////////////////////////// 4x merging

Reimplemented from edm::EDAnalyzer.

Definition at line 93 of file OMTFPatternMaker.cc.

93  {
96  const std::map<Key, GoldenPattern*>& myGPmap = myOMTF->getPatterns();
97  for (auto itGP : myGPmap) {
98  if (!itGP.second->hasCounts())
99  continue;
100  itGP.second->normalise(nPdfAddrBits);
101  }
102 
103  GoldenPattern dummyGP(Key(0, 0, 0), myOMTFConfig);
104  dummyGP.reset();
105 
107  L1TMuonOverlapParams omtfParamsMutable = *myOMTFConfig->getRawParams();
108  std::vector<int> generalParams = *omtfParamsMutable.generalParams();
110  omtfParamsMutable.setGeneralParams(generalParams);
111  myOMTFConfig->configure(&omtfParamsMutable);
112 
113  for (auto itGP : myGPmap) {
115  unsigned int iPt = theConfig.getParameter<int>("ptCode") + 1;
116  if (iPt > 31)
117  iPt = 200 * 2 + 1;
118  else
119  iPt = RPCConst::ptFromIpt(iPt) * 2.0 +
120  1; //MicroGMT has 0.5 GeV step size, with lower bin edge (uGMT_pt_code - 1)*step_size
122  if (itGP.first.thePtCode == iPt && itGP.first.theCharge == theConfig.getParameter<int>("charge")) {
123  std::cout << *itGP.second << std::endl;
124  myWriter->writeGPData(*itGP.second, dummyGP, dummyGP, dummyGP);
125  }
126  }
127  std::string fName = "GPs.xml";
129  }
130 
133  std::string fName = "Connections.xml";
134  unsigned int iProcessor = 0;
145  }
146 
147  if (mergeXMLFiles) {
149  dummy->reset();
150 
151  std::string fName = "OMTF";
153  const std::map<Key, GoldenPattern*>& myGPmap = myOMTF->getPatterns();
154  for (auto itGP : myGPmap) {
155  myWriter->writeGPData(*itGP.second, *dummy, *dummy, *dummy);
156  }
157  fName = "GPs.xml";
162  fName = "OMTF";
164  myOMTF->averagePatterns(-1);
166  writeMergedGPs();
167  fName = "GPs_4x.xml";
169  }
170 }

References OMTFProcessor::averagePatterns(), OMTFConfiguration::configure(), gather_cfg::cout, XMLConfigWriter::finaliseXMLDocument(), MainPageGenerator::fName, L1TMuonOverlapParams::GENERAL_ADDRBITS, L1TMuonOverlapParams::generalParams(), OMTFConfiguration::getMeasurements4D(), edm::ParameterSet::getParameter(), OMTFProcessor::getPatterns(), OMTFConfiguration::getRawParams(), XMLConfigWriter::initialiseXMLDocument(), makeConnectionsMaps, makeGoldenPatterns, mergeXMLFiles, myOMTF, myOMTFConfig, myOMTFConfigMaker, myWriter, nPdfAddrBits, OMTFConfigMaker::printConnections(), OMTFConfigMaker::printPhiMap(), RPCConst::ptFromIpt(), GoldenPattern::reset(), L1TMuonOverlapParams::setGeneralParams(), AlCaHLTBitMon_QueryRunRegistry::string, theConfig, XMLConfigWriter::writeConnectionsData(), XMLConfigWriter::writeGPData(), and writeMergedGPs().

◆ findSimMuon()

const SimTrack * OMTFPatternMaker::findSimMuon ( const edm::Event ev,
const edm::EventSetup es,
const SimTrack previous = nullptr 
)
private

Definition at line 294 of file OMTFPatternMaker.cc.

296  {
297  const SimTrack* result = nullptr;
299  ev.getByToken(inputTokenSimHit, simTks);
300 
301  for (std::vector<SimTrack>::const_iterator it = simTks->begin(); it < simTks->end(); it++) {
302  const SimTrack& aTrack = *it;
303  if (!(aTrack.type() == 13 || aTrack.type() == -13))
304  continue;
305  if (previous && ROOT::Math::VectorUtil::DeltaR(aTrack.momentum(), previous->momentum()) < 0.07)
306  continue;
307  if (!result || aTrack.momentum().pt() > result->momentum().pt())
308  result = &aTrack;
309  }
310  return result;
311 }

References electronAnalyzer_cfi::DeltaR, ev, inputTokenSimHit, CoreSimTrack::momentum(), mps_fire::result, and CoreSimTrack::type().

Referenced by analyze().

◆ writeMergedGPs()

void OMTFPatternMaker::writeMergedGPs ( )
private

Write the opposite charge.

Definition at line 173 of file OMTFPatternMaker.cc.

173  {
174  const std::map<Key, GoldenPattern*>& myGPmap = myOMTF->getPatterns();
175 
177  dummy->reset();
178 
179  unsigned int iPtMin = 9;
180  Key aKey = Key(0, iPtMin, 1);
181  while (myGPmap.find(aKey) != myGPmap.end()) {
182  GoldenPattern* aGP1 = myGPmap.find(aKey)->second;
183  GoldenPattern* aGP2 = dummy;
184  GoldenPattern* aGP3 = dummy;
185  GoldenPattern* aGP4 = dummy;
186 
187  ++aKey.thePtCode;
188  while (myGPmap.find(aKey) == myGPmap.end() && aKey.thePtCode <= 401)
189  ++aKey.thePtCode;
190  if (aKey.thePtCode <= 401 && myGPmap.find(aKey) != myGPmap.end())
191  aGP2 = myGPmap.find(aKey)->second;
192 
193  if (aKey.thePtCode > 71) {
194  ++aKey.thePtCode;
195  while (myGPmap.find(aKey) == myGPmap.end() && aKey.thePtCode <= 401)
196  ++aKey.thePtCode;
197  if (aKey.thePtCode <= 401 && myGPmap.find(aKey) != myGPmap.end())
198  aGP3 = myGPmap.find(aKey)->second;
199 
200  ++aKey.thePtCode;
201  while (myGPmap.find(aKey) == myGPmap.end() && aKey.thePtCode <= 401)
202  ++aKey.thePtCode;
203  if (aKey.thePtCode <= 401 && myGPmap.find(aKey) != myGPmap.end())
204  aGP4 = myGPmap.find(aKey)->second;
205  }
206  ++aKey.thePtCode;
207  while (myGPmap.find(aKey) == myGPmap.end() && aKey.thePtCode <= 401)
208  ++aKey.thePtCode;
209  myWriter->writeGPData(*aGP1, *aGP2, *aGP3, *aGP4);
210 
212  Key aTmpKey = aGP1->key();
213  aTmpKey.theCharge = -1;
214  if (myGPmap.find(aTmpKey) != myGPmap.end())
215  aGP1 = myGPmap.find(aTmpKey)->second;
216  else
217  aGP1 = dummy;
218 
219  aTmpKey = aGP2->key();
220  aTmpKey.theCharge = -1;
221  if (myGPmap.find(aTmpKey) != myGPmap.end())
222  aGP2 = myGPmap.find(aTmpKey)->second;
223  else
224  aGP2 = dummy;
225 
226  aTmpKey = aGP3->key();
227  aTmpKey.theCharge = -1;
228  if (myGPmap.find(aTmpKey) != myGPmap.end())
229  aGP3 = myGPmap.find(aTmpKey)->second;
230  else
231  aGP3 = dummy;
232 
233  aTmpKey = aGP4->key();
234  aTmpKey.theCharge = -1;
235  if (myGPmap.find(aTmpKey) != myGPmap.end())
236  aGP4 = myGPmap.find(aTmpKey)->second;
237  else
238  aGP4 = dummy;
239 
240  myWriter->writeGPData(*aGP1, *aGP2, *aGP3, *aGP4);
241  }
242 }

References OMTFProcessor::getPatterns(), GoldenPattern::key(), myOMTF, myOMTFConfig, myWriter, Key::theCharge, Key::thePtCode, and XMLConfigWriter::writeGPData().

Referenced by endJob().

Member Data Documentation

◆ aTopElement

xercesc::DOMElement* OMTFPatternMaker::aTopElement
private

Definition at line 73 of file OMTFPatternMaker.h.

◆ g4SimTrackSrc

edm::InputTag OMTFPatternMaker::g4SimTrackSrc
private

Definition at line 53 of file OMTFPatternMaker.h.

◆ inputTokenCSC

edm::EDGetTokenT<CSCCorrelatedLCTDigiCollection> OMTFPatternMaker::inputTokenCSC
private

Definition at line 57 of file OMTFPatternMaker.h.

Referenced by analyze(), and OMTFPatternMaker().

◆ inputTokenDTPh

edm::EDGetTokenT<L1MuDTChambPhContainer> OMTFPatternMaker::inputTokenDTPh
private

Definition at line 55 of file OMTFPatternMaker.h.

Referenced by analyze(), and OMTFPatternMaker().

◆ inputTokenDTTh

edm::EDGetTokenT<L1MuDTChambThContainer> OMTFPatternMaker::inputTokenDTTh
private

Definition at line 56 of file OMTFPatternMaker.h.

Referenced by analyze(), and OMTFPatternMaker().

◆ inputTokenRPC

edm::EDGetTokenT<RPCDigiCollection> OMTFPatternMaker::inputTokenRPC
private

Definition at line 58 of file OMTFPatternMaker.h.

Referenced by analyze(), and OMTFPatternMaker().

◆ inputTokenSimHit

edm::EDGetTokenT<edm::SimTrackContainer> OMTFPatternMaker::inputTokenSimHit
private

Definition at line 59 of file OMTFPatternMaker.h.

Referenced by findSimMuon(), and OMTFPatternMaker().

◆ makeConnectionsMaps

bool OMTFPatternMaker::makeConnectionsMaps
private

Definition at line 63 of file OMTFPatternMaker.h.

Referenced by analyze(), endJob(), and OMTFPatternMaker().

◆ makeGoldenPatterns

bool OMTFPatternMaker::makeGoldenPatterns
private

Definition at line 63 of file OMTFPatternMaker.h.

Referenced by analyze(), endJob(), and OMTFPatternMaker().

◆ mergeXMLFiles

bool OMTFPatternMaker::mergeXMLFiles
private

Definition at line 63 of file OMTFPatternMaker.h.

Referenced by analyze(), beginRun(), endJob(), and OMTFPatternMaker().

◆ myInputMaker

OMTFinputMaker* OMTFPatternMaker::myInputMaker
private

Definition at line 70 of file OMTFPatternMaker.h.

Referenced by analyze(), and OMTFPatternMaker().

◆ myOMTF

OMTFProcessor* OMTFPatternMaker::myOMTF
private

◆ myOMTFConfig

OMTFConfiguration* OMTFPatternMaker::myOMTFConfig
private

OMTF objects.

Definition at line 69 of file OMTFPatternMaker.h.

Referenced by analyze(), beginJob(), beginRun(), endJob(), OMTFPatternMaker(), writeMergedGPs(), and ~OMTFPatternMaker().

◆ myOMTFConfigMaker

OMTFConfigMaker* OMTFPatternMaker::myOMTFConfigMaker
private

Definition at line 74 of file OMTFPatternMaker.h.

Referenced by analyze(), beginRun(), endJob(), and ~OMTFPatternMaker().

◆ myWriter

XMLConfigWriter* OMTFPatternMaker::myWriter
private

Definition at line 75 of file OMTFPatternMaker.h.

Referenced by beginRun(), endJob(), and writeMergedGPs().

◆ nPdfAddrBits

unsigned int OMTFPatternMaker::nPdfAddrBits
private

Original pdf width. read from configuration.

Definition at line 66 of file OMTFPatternMaker.h.

Referenced by beginRun(), and endJob().

◆ theConfig

edm::ParameterSet OMTFPatternMaker::theConfig
private

Definition at line 52 of file OMTFPatternMaker.h.

Referenced by analyze(), endJob(), and OMTFPatternMaker().

OMTFPatternMaker::myWriter
XMLConfigWriter * myWriter
Definition: OMTFPatternMaker.h:75
L1TMuonOverlapParamsRcd
Definition: L1TMuonOverlapParamsRcd.h:23
fakeOmtfParams_cff.omtfParams
omtfParams
OMTF ESProducer.
Definition: fakeOmtfParams_cff.py:11
CoreSimTrack::momentum
const math::XYZTLorentzVectorD & momentum() const
Definition: CoreSimTrack.h:19
OMTFProcessor::fillCounts
void fillCounts(unsigned int iProcessor, const OMTFinput &aInput, const SimTrack *aSimMuon)
Definition: OMTFProcessor.cc:287
edm::Handle::product
T const * product() const
Definition: Handle.h:70
OMTFConfigMaker::printConnections
void printConnections(std::ostream &out, unsigned int iProcessor, unsigned int iCone)
Definition: OMTFConfigMaker.cc:112
l1t::omtf_pos
Definition: RegionalMuonCandFwd.h:8
l1t::tftype
tftype
Definition: RegionalMuonCandFwd.h:8
OMTFConfigMaker
Definition: OMTFConfigMaker.h:17
OMTFConfiguration::getMeasurements4D
vector4D & getMeasurements4D()
Definition: OMTFConfiguration.h:122
OMTFPatternMaker::makeConnectionsMaps
bool makeConnectionsMaps
Definition: OMTFPatternMaker.h:63
OMTFConfiguration::getRawParams
const L1TMuonOverlapParams * getRawParams() const
Definition: OMTFConfiguration.h:84
Key::thePtCode
unsigned int thePtCode
Definition: GoldenPattern.h:35
gather_cfg.cout
cout
Definition: gather_cfg.py:144
edm::EDConsumerBase::consumesCollector
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
Definition: EDConsumerBase.cc:71
OMTFProcessor::getPatterns
const std::map< Key, GoldenPattern * > & getPatterns() const
Return map of GoldenPatterns.
Definition: OMTFProcessor.cc:207
OMTFConfiguration
Definition: OMTFConfiguration.h:44
edm::Handle< L1MuDTChambPhContainer >
L1TMuonOverlapParams::setGeneralParams
void setGeneralParams(const std::vector< int > &paramsVec)
Definition: L1TMuonOverlapParams.h:134
MainPageGenerator.fName
fName
Definition: MainPageGenerator.py:301
OMTFPatternMaker::myInputMaker
OMTFinputMaker * myInputMaker
Definition: OMTFPatternMaker.h:70
XMLConfigWriter::initialiseXMLDocument
void initialiseXMLDocument(const std::string &docName)
Definition: XMLConfigWriter.cc:98
Key
Definition: GoldenPattern.h:15
Key::theCharge
int theCharge
Definition: GoldenPattern.h:36
L1TMuonOverlapParams::generalParams
const std::vector< int > * generalParams() const
General definitions.
Definition: L1TMuonOverlapParams.h:133
OMTFPatternMaker::inputTokenSimHit
edm::EDGetTokenT< edm::SimTrackContainer > inputTokenSimHit
Definition: OMTFPatternMaker.h:59
OMTFProcessor
Definition: OMTFProcessor.h:19
OMTFPatternMaker::inputTokenDTTh
edm::EDGetTokenT< L1MuDTChambThContainer > inputTokenDTTh
Definition: OMTFPatternMaker.h:56
edm::ESHandle
Definition: DTSurvey.h:22
L1TMuonOverlapParams
Definition: L1TMuonOverlapParams.h:14
XMLConfigWriter::finaliseXMLDocument
void finaliseXMLDocument(const std::string &fName)
Definition: XMLConfigWriter.cc:114
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
OMTFPatternMaker::nPdfAddrBits
unsigned int nPdfAddrBits
Original pdf width. read from configuration.
Definition: OMTFPatternMaker.h:66
OMTFPatternMaker::makeGoldenPatterns
bool makeGoldenPatterns
Definition: OMTFPatternMaker.h:63
OMTFPatternMaker::myOMTFConfig
OMTFConfiguration * myOMTFConfig
OMTF objects.
Definition: OMTFPatternMaker.h:69
OMTFPatternMaker::inputTokenRPC
edm::EDGetTokenT< RPCDigiCollection > inputTokenRPC
Definition: OMTFPatternMaker.h:58
edm::LogError
Definition: MessageLogger.h:183
OMTFPatternMaker::theConfig
edm::ParameterSet theConfig
Definition: OMTFPatternMaker.h:52
OMTFConfiguration::configure
void configure(const L1TMuonOverlapParams *omtfParams)
Definition: OMTFConfiguration.cc:49
GoldenPattern::key
Key key() const
Definition: GoldenPattern.h:56
OMTFPatternMaker::inputTokenDTPh
edm::EDGetTokenT< L1MuDTChambPhContainer > inputTokenDTPh
Definition: OMTFPatternMaker.h:55
iEvent
int iEvent
Definition: GenABIO.cc:224
OMTFinputMaker
Definition: OMTFinputMaker.h:19
CoreSimTrack::type
int type() const
particle type (HEP PDT convension)
Definition: CoreSimTrack.h:22
OMTFinputMaker::buildInputForProcessor
OMTFinput buildInputForProcessor(const L1MuDTChambPhContainer *dtPhDigis, const L1MuDTChambThContainer *dtThDigis, const CSCCorrelatedLCTDigiCollection *cscDigis, const RPCDigiCollection *rpcDigis, unsigned int iProcessor, l1t::tftype type=l1t::tftype::omtf_pos, int bx=0)
Method translating trigger digis into input matrix with global phi coordinates.
Definition: OMTFinputMaker.cc:383
electronAnalyzer_cfi.DeltaR
DeltaR
Definition: electronAnalyzer_cfi.py:33
OMTFConfigMaker::makeConnetionsMap
void makeConnetionsMap(unsigned int iProcessor, const OMTFinput &aInput)
Definition: OMTFConfigMaker.cc:69
OMTFPatternMaker::writeMergedGPs
void writeMergedGPs()
Definition: OMTFPatternMaker.cc:173
looper.cfg
cfg
Definition: looper.py:297
OMTFPatternMaker::mergeXMLFiles
bool mergeXMLFiles
Definition: OMTFPatternMaker.h:63
XMLConfigWriter::writeGPData
void writeGPData(const GoldenPattern &aGP)
Definition: XMLConfigWriter.cc:358
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
GoldenPattern
Definition: GoldenPattern.h:44
OMTFProcessor::configure
bool configure(const OMTFConfiguration *omtfParams, const L1TMuonOverlapParams *omtfPatterns)
Fill GP map with patterns from CondFormats object.
Definition: OMTFProcessor.cc:36
SimTrack
Definition: SimTrack.h:6
OMTFPatternMaker::findSimMuon
const SimTrack * findSimMuon(const edm::Event &ev, const edm::EventSetup &es, const SimTrack *previous=nullptr)
Definition: OMTFPatternMaker.cc:294
OMTFPatternMaker::inputTokenCSC
edm::EDGetTokenT< CSCCorrelatedLCTDigiCollection > inputTokenCSC
Definition: OMTFPatternMaker.h:57
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
OMTFinputMaker::initialize
void initialize(const edm::EventSetup &, const OMTFConfiguration *)
Definition: OMTFinputMaker.cc:24
OMTFConfigMaker::printPhiMap
void printPhiMap(std::ostream &out)
Definition: OMTFConfigMaker.cc:48
XMLConfigWriter::writeConnectionsData
void writeConnectionsData(const std::vector< std::vector< OMTFConfiguration::vector2D > > &measurements4D)
Definition: XMLConfigWriter.cc:522
edm::eventsetup::EventSetupRecordImplementation::get
PRODUCT const & get(ESGetToken< PRODUCT, T > const &iToken) const
Definition: EventSetupRecordImplementation.h:74
mps_fire.result
result
Definition: mps_fire.py:303
dummy
Definition: DummySelector.h:38
OMTFinput
Definition: OMTFinput.h:11
edm::InputTag
Definition: InputTag.h:15
XMLConfigWriter
Definition: XMLConfigWriter.h:28
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
OMTFPatternMaker::myOMTFConfigMaker
OMTFConfigMaker * myOMTFConfigMaker
Definition: OMTFPatternMaker.h:74
OMTFPatternMaker::g4SimTrackSrc
edm::InputTag g4SimTrackSrc
Definition: OMTFPatternMaker.h:53
RPCConst::ptFromIpt
static double ptFromIpt(const int ipt)
Definition: RPCConst.cc:29
L1TMuonOverlapParams::GENERAL_ADDRBITS
Definition: L1TMuonOverlapParams.h:106
OMTFProcessor::averagePatterns
void averagePatterns(int charge)
Definition: OMTFProcessor.cc:114
OMTFPatternMaker::myOMTF
OMTFProcessor * myOMTF
Definition: OMTFPatternMaker.h:71