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 geometry scenarios D59 and D60 implementing ETL version 4 and 5 #30340

Closed
wants to merge 11 commits into from

Conversation

icosivi
Copy link
Contributor

@icosivi icosivi commented Jun 23, 2020

PR description:

This PR implements geometry scenarios D59 and D60:

  • D59 modifies scenario D58 introducing ETL version 4
  • D60 modifies scenario D58 introducing ETL version 5

ETL version 4 was already implemented in scenario D53 (https://indico.cern.ch/event/868736/contributions/3709315/attachments/1978993/3295064/MTDdays_20200131.pdf) and fits in the new Endcap Calorimeter envelope defined in D58.
ETL version 5 implements the latest version of ETL disks, as proposed by N. Koss (https://indico.cern.ch/event/868736/contributions/3706894/attachments/1978848/3294508/20200130_ETL_mechanics_timing_days.pdf).

ETL v5 introduces D-shaped sectors, instead of the quarters used in ETL v4, comprising more than 512 modules, which is the maximum number of modules that could be accommodated using the allocated bits in ETLDetId. Therefore ETLDetId.h has been modified to fix this issue, by adding 2 bits. The new ETLDetId is backward compatible with the older versions, thanks to a dedicated compatibility code implemented in ETLDetId.cc.

Both ETL versions and the backward compatibility issue were presented at the last MTD DPG meeting (https://indico.cern.ch/event/919571/contributions/3864046/attachments/2039610/3415525/MTD_DPG_20200515.pdf )

PR validation:

  • Both scenarios have been tested using testMTDinDDD.py and testMTDinDD4hep.py: the dump geometries have been checked and both volumes positions and logical paths are correct.
  • The overlaps have been checked too using g4OverlapCheck_cfg.py.
  • The dump geometries for scenario D50 using the old ETLDetId format and the new one described above have been compared: the logical volumes paths are the same, while the rawID differ only for the positions of the 2 bits related to the sensor modules, as expected. The new ETLDetId format is therefore correct and backward compatible.

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-30340/16351

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-30340/16355

@cmsbuild
Copy link
Contributor

-1

Tested at: 0e905af

CMSSW: CMSSW_11_2_X_2020-06-24-2300
SCRAM_ARCH: slc7_amd64_gcc820
You can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9f212c/7334/summary.html

I found follow errors while testing this PR

Failed tests: UnitTests RelVals

  • Unit Tests:

I found errors in the following unit tests:

---> test GeometryMTDGeometryBuilderTestDriver had ERRORS
---> test GeometryMTDNumberingBuilderTestDriver had ERRORS
---> test GeometryMTDCommonDataTestDriver had ERRORS

  • RelVals:

When I ran the RelVals I found an error in the following workflows:
23234.1001 step1

runTheMatrix-results/23234.1001_TTbar_14TeV+RecoFullGlobal_TestOldDigi_2026D49+HARVESTFullGlobal_2026D49/step1_TTbar_14TeV+RecoFullGlobal_TestOldDigi_2026D49+HARVESTFullGlobal_2026D49.log

20034.0 step3
runTheMatrix-results/20034.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D35_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D35+RecoFullGlobal_2026D35+HARVESTFullGlobal_2026D35/step3_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D35_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D35+RecoFullGlobal_2026D35+HARVESTFullGlobal_2026D35.log

20434.0 step3
runTheMatrix-results/20434.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D41_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D41+RecoFullGlobal_2026D41+HARVESTFullGlobal_2026D41/step3_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D41_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D41+RecoFullGlobal_2026D41+HARVESTFullGlobal_2026D41.log

23234.0 step3
runTheMatrix-results/23234.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D49_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D49+RecoFullGlobal_2026D49+HARVESTFullGlobal_2026D49/step3_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D49_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D49+RecoFullGlobal_2026D49+HARVESTFullGlobal_2026D49.log

21234.0 step3
runTheMatrix-results/21234.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D44_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D44+RecoFullGlobal_2026D44+HARVESTFullGlobal_2026D44/step3_TTbar_14TeV+TTbar_14TeV_TuneCP5_2026D44_GenSimHLBeamSpotFull14+DigiFullTrigger_2026D44+RecoFullGlobal_2026D44+HARVESTFullGlobal_2026D44.log

@cmsbuild
Copy link
Contributor

Comparison not run due to runTheMatrix errors (RelVals and Igprof tests were also skipped)

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@kpedro88
Copy link
Contributor

@icosivi does the latest commit address the test failure? if not, please make an explicit comment when the PR is expected to work. (As always, please test the PR locally first.)

@cmsbuild
Copy link
Contributor

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-30340/16534

  • This PR adds an extra 28KB to repository

  • Found files with invalid states:

    • Geometry/MTDCommonData/data/dd4hep/cms-mtdD57-geometry.xml:
  • There are other open Pull requests which might conflict with changes you have proposed:

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@icosivi
Copy link
Contributor Author

icosivi commented Jun 26, 2020

@kpedro88 not yet, I will make an explicit comment when it will be expected to work, thanks

@fabiocos
Copy link
Contributor

@kpedro88 in my understanding from @icosivi this PR was locally tested with the standalone geometry checks, and no obvious issue was found. The failure of the unit test in itself is totally trivial, as ETL DetIds change a new reference needs to be used. What is clearly unexpected is the failure in the old relvals, which is of course something that needs to be verified to work. The test of reading old files with new code and verify that the translation was properly done was done (@icosivi please confirm). But apparently there is some unexpected issue in the chain. The Geant4 step looks ok from the tests I have suggested, while a closer check to DIGIs is needed, and the update of the dumper I asked @icosivi is meant for this.

I believe this PR could be put at least on hold. But probably we could have a different strategy: split it into a PR to update ETLDetId, once all checks are completed and problems identified and solved, and another one with the remaining update of new scenarios, that looks less prone to create issues.

@icosivi
Copy link
Contributor Author

icosivi commented Jun 29, 2020

@fabiocos I confirm that the test of reading old files with new code was done

@fabiocos
Copy link
Contributor

hold

this may be eventually split into a PR for ETLDetId, and another one with the new scenarios (updated for the new work by @bsunanda )

@cmsbuild cmsbuild added the hold label Jun 30, 2020
<version ClassVersion="3" checksum="1644731879"/>
<ioread sourceClass = "ETLDetId" version="[-4]" targetClass="ETLDetId" source="" target="">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@icosivi @casarsa most likely the version here should be [-3], we want the conversion on older ClassVersion data. This would explain why everything looks ok while writing, but then it miserably fails after reading back data from file.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

while it looks ok reading data from previous versions...

@cmsbuild cmsbuild mentioned this pull request Jul 1, 2020
@icosivi icosivi closed this Jul 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants