Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding EMTF++ Emulator for Phase-2 #1184

Conversation

omiguelc
Copy link

@omiguelc omiguelc commented Dec 8, 2023

PR description:

This PR is enormous. It was inevitable. It contains the latest version of the EMTF++ emulator. The emulator is used to study the Phase-2 upgrade of EMTF. Other projects are waiting to integrate the emulator into their code.

Initially, the emulator was designed for CMSSW 12.5.0pre3 and updated to CMSSW 13.3.0pre3. In this version of CMSSW, the GEM group renamed the ME0 chambers to GE0. However, this was not propagated to the L1Trigger packages, resulting in a few errors. I integrated GE0 to the L1Trigger in CMSSW 13.3.0pre3, thanks to Ian Watson. I had to use a version of his fix intended for CMSSW 12.5.0pre3 for it to work. I checked the latest releases of CMSSW, and these fixes aren't there yet. Here's a link to Ian's fork containing the fix: https://github.com/watson-ij/cmssw/tree/2023-07-ge0-for-l1t-1253p3/L1Trigger

Besides this, there weren't any other major issues when moving to CMSSW 13.3.0pre3.

Cheers,
Osvaldo

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

Attempts to compile this PR succeeded!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -j 8

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found no issues with the code checks!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-checks && scram b -k -j 8 code-checks

I found issues with the headers. These issues likely arise from improper build files.

The following is the stderr of the header checking:

src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:17:45: error: 'std' does not name a type
   17 |             void print_section_header(const std:string&);
      |                                             ^~~
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:17:48: error: expected ',' or '...' before ':' token
   17 |             void print_section_header(const std:string&);
      |                                                ^
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:19:45: error: 'std' does not name a type
   19 |             void print_section_footer(const std:string&);
      |                                             ^~~
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:19:48: error: expected ',' or '...' before ':' token
   19 |             void print_section_footer(const std:string&);
      |                                                ^
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:21:48: error: 'std' does not name a type
   21 |             void print_subsection_header(const std:string&);
      |                                                ^~~
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:21:51: error: expected ',' or '...' before ':' token
   21 |             void print_subsection_header(const std:string&);
      |                                                   ^
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:23:48: error: 'std' does not name a type
   23 |             void print_subsection_footer(const std:string&);
      |                                                ^~~
src/L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h:23:51: error: expected ',' or '...' before ':' token
   23 |             void print_subsection_footer(const std:string&);
      |                                                   ^
gmake: *** [config/SCRAM/GMake/Makefile.rules:1802: tmp/el9_amd64_gcc11/src/L1Trigger/L1TMuonEndCapPhase2/src/L1TriggerL1TMuonEndCapPhase2/EMTFLogger.h.chk_header] Error 1
gmake: Target 'check-headers' not remade because of errors.

Info Value
return code 2
command eval scramv1 runtime -sh && scram b -k -j 8 check-headers

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found 94 files that did not meet formatting requirements:

  • DataFormats/L1TMuonPhase2/interface/EMTFHit.h
  • DataFormats/L1TMuonPhase2/interface/EMTFInput.h
  • DataFormats/L1TMuonPhase2/interface/EMTFTrack.h
  • DataFormats/L1TMuonPhase2/src/MuonStub.cc
  • DataFormats/L1TMuonPhase2/src/SAMuon.cc
  • DataFormats/L1TMuonPhase2/src/TrackerMuon.cc
  • L1Trigger/L1TGEM/src/GE0TriggerPseudoBuilder.cc
  • L1Trigger/L1TMuon/src/GeometryTranslator.cc
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/DuplicateRemovalLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/HitmapLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/OutputLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/ParameterAssignmentLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/PatternMatchingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/RoadSortingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/TrackBuildingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/SubsystemTags.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPCollectors.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPConverters.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPSelectors.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPrimitives.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/ActivationLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/HostLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/SiteLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/TimeZoneLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/ZoneLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFConfiguration.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFConstants.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFContext.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFLogger.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFModel.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFTypes.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFfwd.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/SectorProcessor.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/TrackFinder.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/CSCUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/DataUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/DebugUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/IteratorUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/RPCUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/TPUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/TemplateUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/plugins/L1TMuonEndCapPhase2TrackProducer.cc
  • L1Trigger/L1TMuonEndCapPhase2/plugins/L1TMuonEndCapPhase2TrackProducer.h
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/DuplicateRemovalLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/HitmapLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/OutputLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/ParameterAssignmentLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/PatternMatchingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/RoadSortingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/TrackBuildingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/TPrimitives.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/ActivationLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/HostLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/SiteLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/TimeZoneLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/ZoneLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFConfiguration.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFContext.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFModel.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/SectorProcessor.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/TrackFinder.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Utils/CSCUtils.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Utils/TPUtils.cc
  • L1Trigger/L1TTrackMatch/plugins/L1TrackJetClustering.h

Please run scram b code-format to auto-apply code formatting

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-format-all

@epalencia
Copy link

Hi @omiguelc , there are a few formatting issues to be fixed. In any case, is there any chance that this PR can be split in several smaller ones?

@omiguelc
Copy link
Author

Howdy, @epalencia,

The smallest I can make the pull request is by breaking it into 3 parts:

  1. GE0 Fixes
  2. Data Formats for EMTF++
  3. EMTF++ Emulator (Would still be a large PR)

I don't believe there's a way to break the last PR into small bits. It's a whole new package. Is this good with you?

@epalencia
Copy link

@omiguelc, I think that even if in terms on size there is no a huge gain, it would still help to split this in 3 PRs

@omiguelc
Copy link
Author

Sounds good, will split up in 3 then.

@omiguelc
Copy link
Author

I've made the first PR here: #1186

I have a few questions:

  • Should this PR remain open?
  • Should I create a new branch from the branch used to make the new PR to move on to the second PR?

Cheers,
Osvaldo

@epalencia
Copy link

I thought that the 3 potential PRs were independent (modifying different set of files). If this is not the case, then it is probably better to leave as it is with just 1 PR.

@omiguelc
Copy link
Author

omiguelc commented Dec 11, 2023

They are independent in the sense that they belong to different packages. Only the last PR would require the first two PR.
Let me know how I should proceed.

@epalencia
Copy link

If the big PR requires the first two, then I think that, to gain time, we should go with just this one PR. @aloeliger, is this ok with you?

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

Attempts to compile this PR succeeded!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -j 8

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found no issues with the code checks!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-checks && scram b -k -j 8 code-checks

I found no issues with the headers!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 check-headers

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found 93 files that did not meet formatting requirements:

  • DataFormats/L1TMuonPhase2/interface/EMTFHit.h
  • DataFormats/L1TMuonPhase2/interface/EMTFInput.h
  • DataFormats/L1TMuonPhase2/interface/EMTFTrack.h
  • DataFormats/L1TMuonPhase2/src/MuonStub.cc
  • DataFormats/L1TMuonPhase2/src/SAMuon.cc
  • DataFormats/L1TMuonPhase2/src/TrackerMuon.cc
  • L1Trigger/L1TGEM/src/GE0TriggerPseudoBuilder.cc
  • L1Trigger/L1TMuon/src/GeometryTranslator.cc
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/DuplicateRemovalLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/HitmapLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/OutputLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/ParameterAssignmentLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/PatternMatchingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/RoadSortingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Algo/TrackBuildingLayer.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/CSCTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GE0TPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/GEMTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/ME0TPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPCollector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPConverter.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/RPCTPSelector.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/SubsystemTags.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPCollectors.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPConverters.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPSelectors.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/DAQ/TPrimitives.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/ActivationLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/HostLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/SiteLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/TimeZoneLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Data/ZoneLut.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFConfiguration.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFConstants.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFContext.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFModel.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFTypes.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/EMTFfwd.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/SectorProcessor.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/TrackFinder.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/CSCUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/DataUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/DebugUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/IteratorUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/RPCUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/TPUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/interface/Utils/TemplateUtils.h
  • L1Trigger/L1TMuonEndCapPhase2/plugins/L1TMuonEndCapPhase2TrackProducer.cc
  • L1Trigger/L1TMuonEndCapPhase2/plugins/L1TMuonEndCapPhase2TrackProducer.h
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/DuplicateRemovalLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/HitmapLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/OutputLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/ParameterAssignmentLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/PatternMatchingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/RoadSortingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Algo/TrackBuildingLayer.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/CSCTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GE0TPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/GEMTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/ME0TPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPCollector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPConverter.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/RPCTPSelector.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/DAQ/TPrimitives.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/ActivationLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/HostLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/SiteLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/TimeZoneLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Data/ZoneLut.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFConfiguration.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFContext.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/EMTFModel.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/SectorProcessor.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/TrackFinder.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Utils/CSCUtils.cc
  • L1Trigger/L1TMuonEndCapPhase2/src/Utils/TPUtils.cc
  • L1Trigger/L1TTrackMatch/plugins/L1TrackJetClustering.h

Please run scram b code-format to auto-apply code formatting

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-format-all

@epalencia
Copy link

@omiguelc, could you please fix these format issues?

@omiguelc
Copy link
Author

@epalencia, I've formatted the code.

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

Attempts to compile this PR succeeded!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -j 8

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found no issues with the code checks!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-checks && scram b -k -j 8 code-checks

I found no issues with the headers!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 check-headers

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found 1 files that did not meet formatting requirements:

  • L1Trigger/L1TTrackMatch/plugins/L1TrackJetClustering.h

Please run scram b code-format to auto-apply code formatting

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-format-all

@omiguelc
Copy link
Author

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found 1 files that did not meet formatting requirements:

  • L1Trigger/L1TTrackMatch/plugins/L1TrackJetClustering.h

Please run scram b code-format to auto-apply code formatting

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-format-all

This file isn't something I modified but if needed I can add-pkg it and format it.

@aloeliger aloeliger added the Phase-2 Pertains to phase-2 development label Jan 9, 2024
@aloeliger
Copy link

@omiguelc & @watson-ij Thanks for the changes, there are still two questions though:

  1. The functionality of dumpAllME0Segments in GE0TriggerPseudoBuilder: Should this function do something? Right now it is just an alias for calling LogTrace, but with a specific fixed string. There is commented code there... Should that be implemented? Is this meant to operate this way?
  2. The assert versus throwing a cms::Exception in GE0TriggerPseudoBuilder. This I care less about, but it would be good to at least take a look at it.

@omiguelc
Copy link
Author

Howdy Andrew,

Thanks for the comments, however I believe @watson-ij already took care of this in his latest changes. See: 0ec883b

Let us know if there's anything else that need to be done.

Thanks,
Osvaldo

@aloeliger
Copy link

Okay, then if that's done, I'd like to this along as quickly as possible. I will redo the quick checks from our end and ping Enrique and then I think that we don't need to delay opening this to CMSSW

@aloeliger aloeliger added the Physics Affecting A PR expected to affect Physics content of the trigger label Jan 22, 2024
@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

Attempts to compile this PR succeeded!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -j 8

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found no issues with the code checks!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-checks && scram b -k -j 8 code-checks

I found no issues with the headers!

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 check-headers

@triggerDoctor
Copy link

Hello, I'm triggerDoctor. @aloeliger is testing this script for L1T offline software validation.

I found 2 files that did not meet formatting requirements:

  • L1Trigger/L1TGEM/src/GE0TriggerPseudoBuilder.cc
  • L1Trigger/L1TTrackMatch/plugins/L1TrackJetClustering.h

Please run scram b code-format to auto-apply code formatting

Info Value
return code 0
command eval scramv1 runtime -sh && scram b -k -j 8 code-format-all

@aloeliger
Copy link

@watson-ij & @omiguelc Could you please fix the formatting issues introduced into L1Trigger/L1TGEM/src/GE0TriggerPseudoBuilder.cc. Once that is done, @epalencia is there any comment from your side? Otherwise @watson-ij & @omiguelc please open this PR up to central CMSSW and let's keep this moving.

@omiguelc
Copy link
Author

Howdy @aloeliger,

Done. By open this PR up to central CMSSW, do you mean to open a new PR in CMSSW_13_3_0_pre3?

Cheers,
Osvaldo

@aloeliger
Copy link

@omiguelc Please open the PR to the main branch. If for any reason it needs to be backported, that will happen concurrently or after the PR to main.

@omiguelc
Copy link
Author

Another question @aloeliger. I have 2 data files under L1Trigger/L1TMuonEndCapPhase2, these are my NN protobuf files. What repository should I commit these too for phase2?

@aloeliger
Copy link

Do not commit it to CMSSW or here, or it will have to be removed from the history. They need to be committed to the data externals, under the repository L1Trigger-L1TMuonEndCapPhase2. If that repository doesn't exist, it will need to be made. Please open an issue in the main CMSSW formatted like this one: cms-sw#43621

@omiguelc
Copy link
Author

Understood. I didn't commit here, but I knew at some point it would have to be added somewhere. Thanks for the clarification. I shall proceed with the PR.

@omiguelc
Copy link
Author

I've created the new PR in the main branch of CMSSW: cms-sw#43766
@aloeliger, do you think we should close this PR now?

@aloeliger
Copy link

@omiguelc We'll keep it open until it's merged in CMSSW (please port any changes back here if the PR to CMSSW is a different branch), or until someone tells us they need it ASAP. The menu team is starting to talk about examining this stuff, so that may happen.

@omiguelc
Copy link
Author

Thanks for all the help, @aloeliger. I'm using the same branch I employed for this PR in the other one. If I understand correctly, the changes I make moving forward should show up in both PRs.

@watson-ij
Copy link

@omiguelc you'll also need to change the gemrechitsproducer to use the sim digis, Im travelling at the moment but can make a commit on Monday

@aloeliger aloeliger changed the base branch from phase2-l1t-integration-13_3_0_pre3 to phase2-l1t-integration-14_0_0_pre3 February 5, 2024 15:39
@aloeliger
Copy link

@omiguelc In order to start constructing a protoytype branch for the menu team to validate, this PR is being merged immediately.

@aloeliger aloeliger merged commit 6030604 into cms-l1t-offline:phase2-l1t-integration-14_0_0_pre3 Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Emulator Development Emulator development PR Phase-2 Pertains to phase-2 development Physics Affecting A PR expected to affect Physics content of the trigger
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants