diff --git a/L1Trigger/TrackFindingTracklet/interface/Sector.h b/L1Trigger/TrackFindingTracklet/interface/Sector.h index 12d91c6cbd5f3..05747449b445e 100644 --- a/L1Trigger/TrackFindingTracklet/interface/Sector.h +++ b/L1Trigger/TrackFindingTracklet/interface/Sector.h @@ -31,7 +31,6 @@ namespace trklet { class AllInnerStubsMemory; class VMStubsTEMemory; class VMStubsMEMemory; - class StubTripletsMemory; class TrackletParametersMemory; class TrackletProjectionsMemory; class FullMatchMemory; @@ -43,7 +42,6 @@ namespace trklet { class VMRouterCM; class TrackletProcessor; class TrackletProcessorDisplaced; - class TrackletCalculatorDisplaced; class ProjectionCalculator; class VMStubMERouter; class MatchProcessor; @@ -80,7 +78,6 @@ namespace trklet { void writeVMSME(bool first); void writeAS(bool first); void writeAIS(bool first); - void writeST(bool first); void writeTPAR(bool first); void writeTPROJ(bool first); void writeMC(bool first); @@ -92,11 +89,8 @@ namespace trklet { // execute the different tracklet processing modules void executeIR(); void executeVMR(); - void executeTED(); - void executeTRE(); void executeTP(); void executeTPD(); - void executeTCD(); void executePC(); void executeVMSMER(); void executeMP(); @@ -140,7 +134,6 @@ namespace trklet { std::vector> AIS_; std::vector> VMSTE_; std::vector> VMSME_; - std::vector> ST_; std::vector> TPAR_; std::vector> TPROJ_; std::vector> FM_; @@ -152,7 +145,6 @@ namespace trklet { std::vector> VMRCM_; std::vector> TP_; std::vector> TPD_; - std::vector> TCD_; std::vector> PC_; std::vector> VMSMER_; std::vector> MP_; diff --git a/L1Trigger/TrackFindingTracklet/interface/Settings.h b/L1Trigger/TrackFindingTracklet/interface/Settings.h index 73a97ee89ae96..73c9fd6504b06 100644 --- a/L1Trigger/TrackFindingTracklet/interface/Settings.h +++ b/L1Trigger/TrackFindingTracklet/interface/Settings.h @@ -73,8 +73,6 @@ namespace trklet { std::string const& wiresFullPath() const { return edm::FileInPath(wiresFile()).fullPath(); } std::string const& wiresJSONFile() const { return wiresJSONFile_; } std::string const& wiresJSONFullPath() const { return edm::FileInPath(wiresJSONFile()).fullPath(); } - std::string const& tableTEDFile() const { return tableTEDFile_; } - std::string const& tableTREFile() const { return tableTREFile_; } void setFitPatternFile(const std::string& fitPatternFileName) { fitPatternFile_ = fitPatternFileName; } void setProcessingModulesFile(const std::string& processingModulesFileName) { @@ -83,8 +81,6 @@ namespace trklet { void setMemoryModulesFile(const std::string& memoryModulesFileName) { memoryModulesFile_ = memoryModulesFileName; } void setWiresFile(const std::string& wiresFileName) { wiresFile_ = wiresFileName; } void setWiresJSONFile(const std::string& wiresJSONFileName) { wiresJSONFile_ = wiresJSONFileName; } - void setTableTEDFile(const std::string& tableTEDFileName) { tableTEDFile_ = tableTEDFileName; } - void setTableTREFile(const std::string& tableTREFileName) { tableTREFile_ = tableTREFileName; } unsigned int nndbitsstub(unsigned int layerdisk) const { return nndbitsstub_[layerdisk]; } unsigned int nzbitsstub(unsigned int layerdisk) const { return nzbitsstub_[layerdisk]; } @@ -505,8 +501,6 @@ namespace trklet { std::string memoryModulesFile_; std::string wiresFile_; std::string wiresJSONFile_; - std::string tableTEDFile_; - std::string tableTREFile_; double rcrit_{55.0}; // critical radius for the hourglass configuration diff --git a/L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h b/L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h deleted file mode 100644 index 00e94404feadd..0000000000000 --- a/L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef L1Trigger_TrackFindingTracklet_interface_StubTripletsMemory_h -#define L1Trigger_TrackFindingTracklet_interface_StubTripletsMemory_h - -#include "L1Trigger/TrackFindingTracklet/interface/MemoryBase.h" - -#include - -namespace trklet { - - class Settings; - class Stub; - class L1TStub; - - class StubTripletsMemory : public MemoryBase { - public: - StubTripletsMemory(std::string name, Settings const& settings); - - ~StubTripletsMemory() override = default; - - void addStubs(const Stub* stub1, const Stub* stub2, const Stub* stub3) { - stubs1_.push_back(stub1); - stubs2_.push_back(stub2); - stubs3_.push_back(stub3); - } - - unsigned int nStubTriplets() const { return stubs1_.size(); } - - const Stub* getFPGAStub1(unsigned int i) const { return stubs1_[i]; } - const Stub* getFPGAStub2(unsigned int i) const { return stubs2_[i]; } - const Stub* getFPGAStub3(unsigned int i) const { return stubs3_[i]; } - - void clean() override { - stubs1_.clear(); - stubs2_.clear(); - stubs3_.clear(); - } - - void writeST(bool first, unsigned int iSector); - - private: - std::vector stubs1_; - std::vector stubs2_; - std::vector stubs3_; - }; - -}; // namespace trklet -#endif diff --git a/L1Trigger/TrackFindingTracklet/interface/TrackletCalculatorDisplaced.h b/L1Trigger/TrackFindingTracklet/interface/TrackletCalculatorDisplaced.h index e0199f5ae030c..f0a916b3a31e6 100644 --- a/L1Trigger/TrackFindingTracklet/interface/TrackletCalculatorDisplaced.h +++ b/L1Trigger/TrackFindingTracklet/interface/TrackletCalculatorDisplaced.h @@ -3,8 +3,6 @@ #include "L1Trigger/TrackFindingTracklet/interface/ProcessBase.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletProjectionsMemory.h" -#include "L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h" -#include "L1Trigger/TrackFindingTracklet/interface/AllStubsMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletParametersMemory.h" #include @@ -23,13 +21,6 @@ namespace trklet { ~TrackletCalculatorDisplaced() override = default; - void addOutputProjection(TrackletProjectionsMemory*& outputProj, MemoryBase* memory); - - void addOutput(MemoryBase* memory, std::string output) override; - void addInput(MemoryBase* memory, std::string input) override; - - void execute(unsigned int iSector, double phimin, double phimax); - void addDiskProj(Tracklet* tracklet, int disk); bool addLayerProj(Tracklet* tracklet, int layer); @@ -172,11 +163,6 @@ namespace trklet { std::vector toR_; std::vector toZ_; - std::vector innerallstubs_; - std::vector middleallstubs_; - std::vector outerallstubs_; - std::vector stubtriplets_; - TrackletParametersMemory* trackletpars_; //First index is layer/disk second is phi region diff --git a/L1Trigger/TrackFindingTracklet/interface/TrackletProcessorDisplaced.h b/L1Trigger/TrackFindingTracklet/interface/TrackletProcessorDisplaced.h index 7f0f3a38c647c..8f19a296babe5 100644 --- a/L1Trigger/TrackFindingTracklet/interface/TrackletProcessorDisplaced.h +++ b/L1Trigger/TrackFindingTracklet/interface/TrackletProcessorDisplaced.h @@ -61,6 +61,10 @@ namespace trklet { std::vector innervmstubs_; std::vector outervmstubs_; + + std::vector innerallstubs_; + std::vector middleallstubs_; + std::vector outerallstubs_; }; }; // namespace trklet diff --git a/L1Trigger/TrackFindingTracklet/plugins/L1FPGATrackProducer.cc b/L1Trigger/TrackFindingTracklet/plugins/L1FPGATrackProducer.cc index 8986623c8865d..5f7fa2798d828 100644 --- a/L1Trigger/TrackFindingTracklet/plugins/L1FPGATrackProducer.cc +++ b/L1Trigger/TrackFindingTracklet/plugins/L1FPGATrackProducer.cc @@ -156,9 +156,6 @@ class L1FPGATrackProducer : public edm::one::EDProducer { std::string wiresFile; std::string wiresJSONFile; - edm::FileInPath tableTEDFile; - edm::FileInPath tableTREFile; - std::string asciiEventOutName_; std::ofstream asciiEventOut_; @@ -270,11 +267,6 @@ L1FPGATrackProducer::L1FPGATrackProducer(edm::ParameterSet const& iConfig) reduced_ = iConfig.getParameter("Reduced"); nHelixPar_ = iConfig.getParameter("Hnpar"); - if (extended_) { - tableTEDFile = iConfig.getParameter("tableTEDFile"); - tableTREFile = iConfig.getParameter("tableTREFile"); - } - // -------------------------------------------------------------------------------- // set options in Settings based on inputs from configuration files // -------------------------------------------------------------------------------- @@ -298,14 +290,10 @@ L1FPGATrackProducer::L1FPGATrackProducer(edm::ParameterSet const& iConfig) settings_.setDoMultipleMatches(iConfig.getParameter("DoMultipleMatches")); if (extended_) { - settings_.setTableTEDFile(tableTEDFile.fullPath()); - settings_.setTableTREFile(tableTREFile.fullPath()); - settings_.setNumTracksComparedPerBin(9999); - //FIXME: The TED and TRE tables are currently disabled by default, so we - //need to allow for the additional tracklets that will eventually be - //removed by these tables, once they are finalized + //FIXME: We need to allow for the additional tracklets that will eventually + // be removed by lookup tables, once they are finalized settings_.setNbitstrackletindex(15); } @@ -321,10 +309,6 @@ L1FPGATrackProducer::L1FPGATrackProducer(edm::ParameterSet const& iConfig) #endif << "\n process modules : " << processingModulesFile << "\n memory modules : " << memoryModulesFile << "\n wires : " << wiresFile; - if (extended_) { - edm::LogVerbatim("Tracklet") << "table_TED : " << tableTEDFile.fullPath() - << "\n table_TRE : " << tableTREFile.fullPath(); - } } if (settings_.storeTrackBuilderOutput() && (settings_.doMultipleMatches() || !settings_.removalType().empty())) { cms::Exception exception("ConfigurationNotSupported."); diff --git a/L1Trigger/TrackFindingTracklet/python/l1tTTTracksFromTrackletEmulation_cfi.py b/L1Trigger/TrackFindingTracklet/python/l1tTTTracksFromTrackletEmulation_cfi.py index 5a198c21500ed..42f6415bf423c 100644 --- a/L1Trigger/TrackFindingTracklet/python/l1tTTTracksFromTrackletEmulation_cfi.py +++ b/L1Trigger/TrackFindingTracklet/python/l1tTTTracksFromTrackletEmulation_cfi.py @@ -47,9 +47,6 @@ Extended = cms.bool(True), Reduced = cms.bool(False), Hnpar = cms.uint32(5), - # specifying where the TrackletEngineDisplaced(TED)/TripletEngine(TRE) tables are located - tableTEDFile = cms.FileInPath('L1Trigger/TrackFindingTracklet/data/table_TED/table_TED_D1PHIA1_D2PHIA1.txt'), - tableTREFile = cms.FileInPath('L1Trigger/TrackFindingTracklet/data/table_TRE/table_TRE_D1AD2A_1.txt'), # Quality Flag and Quality params TrackQuality = cms.bool(False) ) diff --git a/L1Trigger/TrackFindingTracklet/src/Sector.cc b/L1Trigger/TrackFindingTracklet/src/Sector.cc index bb03f303f5289..2ed56ee4d9746 100644 --- a/L1Trigger/TrackFindingTracklet/src/Sector.cc +++ b/L1Trigger/TrackFindingTracklet/src/Sector.cc @@ -9,7 +9,6 @@ #include "L1Trigger/TrackFindingTracklet/interface/AllInnerStubsMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/VMStubsTEMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/VMStubsMEMemory.h" -#include "L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletParametersMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletProjectionsMemory.h" #include "L1Trigger/TrackFindingTracklet/interface/FullMatchMemory.h" @@ -20,7 +19,6 @@ #include "L1Trigger/TrackFindingTracklet/interface/VMRouterCM.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletProcessor.h" #include "L1Trigger/TrackFindingTracklet/interface/TrackletProcessorDisplaced.h" -#include "L1Trigger/TrackFindingTracklet/interface/TrackletCalculatorDisplaced.h" #include "L1Trigger/TrackFindingTracklet/interface/ProjectionCalculator.h" #include "L1Trigger/TrackFindingTracklet/interface/VMStubMERouter.h" #include "L1Trigger/TrackFindingTracklet/interface/MatchProcessor.h" @@ -107,8 +105,6 @@ void Sector::addMem(const string& memType, const string& memName) { addMemToVec(VMSTE_, memName, settings_); } else if (memType == "VMStubsME:") { addMemToVec(VMSME_, memName, settings_); - } else if (memType == "StubTriplets:") { - addMemToVec(ST_, memName, settings_); } else if (memType == "TrackletParameters:") { addMemToVec(TPAR_, memName, settings_); } else if (memType == "TrackletProjections:") { @@ -134,8 +130,6 @@ void Sector::addProc(const string& procType, const string& procName) { addProcToVec(TP_, procName, settings_, globals_); } else if (procType == "TrackletProcessorDisplaced:") { addProcToVec(TPD_, procName, settings_, globals_); - } else if (procType == "TrackletCalculatorDisplaced:") { - addProcToVec(TCD_, procName, settings_, globals_); } else if (procType == "ProjectionCalculator:") { addProcToVec(PC_, procName, settings_, globals_); } else if (procType == "VMStubMERouter:") { @@ -232,12 +226,6 @@ void Sector::writeAIS(bool first) { } } -void Sector::writeST(bool first) { - for (auto& i : ST_) { - i->writeST(first, isector_); - } -} - void Sector::writeTPAR(bool first) { for (auto& i : TPAR_) { i->writeTPAR(first, isector_); @@ -304,12 +292,6 @@ void Sector::executeTPD() { } } -void Sector::executeTCD() { - for (auto& i : TCD_) { - i->execute(isector_, phimin_, phimax_); - } -} - void Sector::executePC() { for (auto& i : PC_) { i->execute(isector_, phimin_); diff --git a/L1Trigger/TrackFindingTracklet/src/StubTripletsMemory.cc b/L1Trigger/TrackFindingTracklet/src/StubTripletsMemory.cc deleted file mode 100644 index 5f3307e9d98b7..0000000000000 --- a/L1Trigger/TrackFindingTracklet/src/StubTripletsMemory.cc +++ /dev/null @@ -1,36 +0,0 @@ -#include "L1Trigger/TrackFindingTracklet/interface/StubTripletsMemory.h" -#include "L1Trigger/TrackFindingTracklet/interface/L1TStub.h" -#include "L1Trigger/TrackFindingTracklet/interface/Stub.h" -#include -#include - -using namespace std; -using namespace trklet; - -StubTripletsMemory::StubTripletsMemory(string name, Settings const& settings) : MemoryBase(name, settings) {} - -void StubTripletsMemory::writeST(bool first, unsigned int iSector) { - iSector_ = iSector; - const string dirSP = settings_.memPath() + "StubPairs/"; - - std::ostringstream oss; - oss << dirSP << "StubTriplets_" << getName() << "_" << std::setfill('0') << std::setw(2) << (iSector_ + 1) << ".dat"; - auto const& fname = oss.str(); - - openfile(out_, first, dirSP, fname, __FILE__, __LINE__); - - out_ << "BX = " << (bitset<3>)bx_ << " Event : " << event_ << endl; - - for (unsigned int j = 0; j < stubs1_.size(); j++) { - string stub1index = stubs1_[j]->stubindex().str(); - string stub2index = stubs2_[j]->stubindex().str(); - string stub3index = stubs3_[j]->stubindex().str(); - out_ << hexstr(j) << " " << stub1index << "|" << stub2index << "|" << stub3index << endl; - } - out_.close(); - - bx_++; - event_++; - if (bx_ > 7) - bx_ = 0; -} diff --git a/L1Trigger/TrackFindingTracklet/src/TrackletCalculatorDisplaced.cc b/L1Trigger/TrackFindingTracklet/src/TrackletCalculatorDisplaced.cc index a56bf0225871d..2b12b1ea21877 100644 --- a/L1Trigger/TrackFindingTracklet/src/TrackletCalculatorDisplaced.cc +++ b/L1Trigger/TrackFindingTracklet/src/TrackletCalculatorDisplaced.cc @@ -138,166 +138,6 @@ TrackletCalculatorDisplaced::TrackletCalculatorDisplaced(string name, Settings c } } -void TrackletCalculatorDisplaced::addOutputProjection(TrackletProjectionsMemory*& outputProj, MemoryBase* memory) { - outputProj = dynamic_cast(memory); - assert(outputProj != nullptr); -} - -void TrackletCalculatorDisplaced::addOutput(MemoryBase* memory, string output) { - if (settings_.writetrace()) { - edm::LogVerbatim("Tracklet") << "In " << name_ << " adding output to " << memory->getName() << " to output " - << output; - } - - if (output == "trackpar") { - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - trackletpars_ = tmp; - return; - } - - if (output.substr(0, 7) == "projout") { - //output is on the form 'projoutL2PHIC' or 'projoutD3PHIB' - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - - unsigned int layerdisk = output[8] - '1'; //layer or disk counting from 0 - unsigned int phiregion = output[12] - 'A'; //phiregion counting from 0 - - if (output[7] == 'L') { - assert(layerdisk < N_LAYER); - assert(phiregion < trackletprojlayers_[layerdisk].size()); - //check that phiregion not already initialized - assert(trackletprojlayers_[layerdisk][phiregion] == nullptr); - trackletprojlayers_[layerdisk][phiregion] = tmp; - return; - } - - if (output[7] == 'D') { - assert(layerdisk < N_DISK); - assert(phiregion < trackletprojdisks_[layerdisk].size()); - //check that phiregion not already initialized - assert(trackletprojdisks_[layerdisk][phiregion] == nullptr); - trackletprojdisks_[layerdisk][phiregion] = tmp; - return; - } - } - - throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " Could not find output : " << output; -} - -void TrackletCalculatorDisplaced::addInput(MemoryBase* memory, string input) { - if (settings_.writetrace()) { - edm::LogVerbatim("Tracklet") << "In " << name_ << " adding input from " << memory->getName() << " to input " - << input; - } - - if (input == "thirdallstubin") { - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - innerallstubs_.push_back(tmp); - return; - } - if (input == "firstallstubin") { - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - middleallstubs_.push_back(tmp); - return; - } - if (input == "secondallstubin") { - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - outerallstubs_.push_back(tmp); - return; - } - if (input.find("stubtriplet") == 0) { - auto* tmp = dynamic_cast(memory); - assert(tmp != nullptr); - stubtriplets_.push_back(tmp); - return; - } - throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " Could not find input : " << input; -} - -void TrackletCalculatorDisplaced::execute(unsigned int iSector, double phimin, double phimax) { - unsigned int countall = 0; - unsigned int countsel = 0; - - phimin_ = phimin; - phimax_ = phimax; - iSector_ = iSector; - - for (auto& stubtriplet : stubtriplets_) { - if (trackletpars_->nTracklets() >= settings_.ntrackletmax()) { - edm::LogVerbatim("Tracklet") << "Will break on too many tracklets in " << getName(); - break; - } - for (unsigned int i = 0; i < stubtriplet->nStubTriplets(); i++) { - countall++; - - const Stub* innerFPGAStub = stubtriplet->getFPGAStub1(i); - const L1TStub* innerStub = innerFPGAStub->l1tstub(); - - const Stub* middleFPGAStub = stubtriplet->getFPGAStub2(i); - const L1TStub* middleStub = middleFPGAStub->l1tstub(); - - const Stub* outerFPGAStub = stubtriplet->getFPGAStub3(i); - const L1TStub* outerStub = outerFPGAStub->l1tstub(); - - if (settings_.debugTracklet()) - edm::LogVerbatim("Tracklet") << "TrackletCalculatorDisplaced execute " << getName() << "[" << iSector_ << "]"; - - if (innerFPGAStub->layerdisk() < N_LAYER && middleFPGAStub->layerdisk() < N_LAYER && - outerFPGAStub->layerdisk() < N_LAYER) { - //barrel+barrel seeding - bool accept = LLLSeeding(innerFPGAStub, innerStub, middleFPGAStub, middleStub, outerFPGAStub, outerStub); - if (accept) - countsel++; - } else if (innerFPGAStub->layerdisk() >= N_LAYER && middleFPGAStub->layerdisk() >= N_LAYER && - outerFPGAStub->layerdisk() >= N_LAYER) { - throw cms::Exception("LogicError") << __FILE__ << " " << __LINE__ << " Invalid seeding!"; - } else { - //layer+disk seeding - if (innerFPGAStub->layerdisk() < N_LAYER && middleFPGAStub->layerdisk() >= N_LAYER && - outerFPGAStub->layerdisk() >= N_LAYER) { //D1D2L2 - bool accept = DDLSeeding(innerFPGAStub, innerStub, middleFPGAStub, middleStub, outerFPGAStub, outerStub); - if (accept) - countsel++; - } else if (innerFPGAStub->layerdisk() >= N_LAYER && middleFPGAStub->layerdisk() < N_LAYER && - outerFPGAStub->layerdisk() < N_LAYER) { //L2L3D1 - bool accept = LLDSeeding(innerFPGAStub, innerStub, middleFPGAStub, middleStub, outerFPGAStub, outerStub); - if (accept) - countsel++; - } else { - throw cms::Exception("LogicError") << __FILE__ << " " << __LINE__ << " Invalid seeding!"; - } - } - - if (trackletpars_->nTracklets() >= settings_.ntrackletmax()) { - edm::LogVerbatim("Tracklet") << "Will break on number of tracklets in " << getName(); - break; - } - - if (countall >= settings_.maxStep("TC")) { - if (settings_.debugTracklet()) - edm::LogVerbatim("Tracklet") << "Will break on MAXTC 1"; - break; - } - if (settings_.debugTracklet()) - edm::LogVerbatim("Tracklet") << "TrackletCalculatorDisplaced execute done"; - } - if (countall >= settings_.maxStep("TC")) { - if (settings_.debugTracklet()) - edm::LogVerbatim("Tracklet") << "Will break on MAXTC 2"; - break; - } - } - - if (settings_.writeMonitorData("TPD")) { - globals_->ofstream("trackletcalculatordisplaced.txt") << getName() << " " << countall << " " << countsel << endl; - } -} - void TrackletCalculatorDisplaced::addDiskProj(Tracklet* tracklet, int disk) { disk = std::abs(disk); FPGAWord fpgar = tracklet->proj(N_LAYER + disk - 1).fpgarzproj(); diff --git a/L1Trigger/TrackFindingTracklet/src/TrackletProcessorDisplaced.cc b/L1Trigger/TrackFindingTracklet/src/TrackletProcessorDisplaced.cc index 2a942248c273b..a3a8870daccff 100644 --- a/L1Trigger/TrackFindingTracklet/src/TrackletProcessorDisplaced.cc +++ b/L1Trigger/TrackFindingTracklet/src/TrackletProcessorDisplaced.cc @@ -47,16 +47,6 @@ TrackletProcessorDisplaced::TrackletProcessorDisplaced(string name, Settings con nbitszfinebintable_ = settings_.vmrlutzbits(layerdisk1_); nbitsrfinebintable_ = settings_.vmrlutrbits(layerdisk1_); - for (unsigned int ilayer = 0; ilayer < N_LAYER; ilayer++) { - vector tmp(settings_.nallstubs(ilayer), nullptr); - trackletprojlayers_.push_back(tmp); - } - - for (unsigned int idisk = 0; idisk < N_DISK; idisk++) { - vector tmp(settings_.nallstubs(idisk + N_LAYER), nullptr); - trackletprojdisks_.push_back(tmp); - } - // set TC index iTC_ = region; TCIndex_ = (iSeed_ << settings.nbitsseed()) + iTC_;