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

MTD geometry: porting of MTDNumberingBuilder to DD4hep #29647

Merged
merged 13 commits into from May 12, 2020

Conversation

fabiocos
Copy link
Contributor

@fabiocos fabiocos commented May 5, 2020

PR description:

This PR builds on top of #29599 and previous developments a porting of Geometry/MTDNumberingBuilder to DD4hep. In order to accomplish this task, additional SpecPars have been added in mtdStructureTopology to specify the list of volumes to be considered in the loop to build subdetectors, layers and modules. The names of BTL Layer1 and ETL discs have been extended with the addition of the Timing suffix to distinguish them from the tracker subvolumes, and resolve an ambiguity that DDCMS at present seems unable to handle (as reported to @ianna). The DDD code has been updated accordingly.

Non negligible memory issues have been noticed with the navPos() method of DDCMS in this porting, and its use has been dropped from everywhere, and it is not used to fill GeometricTimingDet, as it looks like this information is not anyway used afterwards (this was carbon-coped from tracker). They can be seen just adding the print of fv->navPos().size() in the new test added in DDCMS for the cms::DDFilteredView.

The porting to DD4hep tries to:

  • use the FilteredView philosophy based on SpecPar selection, avoiding a full loop based on fv.next(0);

  • keep the loop on the entire geometry inside a single method, avoiding nested calls to different levels as done in the Tracker geometry;

  • circumvent the nested filling of GeometricTimingDet containers by using intermediate temporary subdet and layer vectors. For the time being the bare pointer original structure of the containers has been kept to minimize simultaneous changes and disruption.

PR validation:

The test configuration in Geometry/MTDNumberingBuilder runs on both scenario D50 and D53, providing identical lists of detIds. The DDD version is unchanged compared to the base reference. Differences in rotation matrices are due to the sign of terms that are null up to the 6th decimal digit. The calculation of Phi looks different for the top level volumes, but I believe this might be an artefact of translation vectors along the z direction. No difference is observed for modules.

The Geometry/MTDGeometryBuilder tests have been updated, they give the same result as before for DDD, there is a factor of 10 to be fixed in next developments for DD4hep.

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-29647/15040

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

@fabiocos
Copy link
Contributor Author

fabiocos commented May 5, 2020

@smuzaffar hard to notice any visible difference in the proposed patch...

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-29647/15041

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

A new Pull Request was created by @fabiocos (Fabio Cossutti) for master.

It involves the following packages:

Geometry/MTDCommonData
Geometry/MTDGeometryBuilder
Geometry/MTDNumberingBuilder

@civanch, @Dr15Jones, @makortel, @cvuosalo, @ianna, @mdhildreth, @cmsbuild, @kpedro88 can you please review it and eventually sign? Thanks.
@silviodonato, @dpiparo you are the release manager for this.

cms-bot commands are listed here

@fabiocos
Copy link
Contributor Author

fabiocos commented May 5, 2020

@silviodonato @kpedro88 as you notice this PR embeds #29599. If that can be merged as it is (it should IMO) I will rebase this one, otherwise better to close that and continue here in case.

@fabiocos
Copy link
Contributor Author

fabiocos commented May 5, 2020

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-run-pr-tests/6012/console Started: 2020/05/05 12:17

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

+1
Tested at: 030ea16
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6012/summary.html
CMSSW: CMSSW_11_1_X_2020-05-04-2300
SCRAM_ARCH: slc7_amd64_gcc820

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

Comparison job queued.

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6012/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 34
  • DQMHistoTests: Total histograms compared: 2696239
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2695919
  • DQMHistoTests: Total skipped: 319
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 33 files compared)
  • Checked 147 log files, 16 edm output root files, 34 DQM output files

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-29647/15308

@cmsbuild
Copy link
Contributor

Pull request #29647 was updated. @civanch, @Dr15Jones, @makortel, @cvuosalo, @ianna, @mdhildreth, @cmsbuild, @kpedro88 can you please check and sign again.

@fabiocos
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented May 12, 2020

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-run-pr-tests/6240/console Started: 2020/05/12 10:58

@cmsbuild
Copy link
Contributor

+1
Tested at: b6183de
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6240/summary.html
CMSSW: CMSSW_11_1_X_2020-05-11-2300
SCRAM_ARCH: slc7_amd64_gcc820

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6240/git-log-recent-commits
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6240/git-merge-result

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-88f02f/6240/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 34
  • DQMHistoTests: Total histograms compared: 2697527
  • DQMHistoTests: Total failures: 17
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2697191
  • DQMHistoTests: Total skipped: 319
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 33 files compared)
  • Checked 147 log files, 16 edm output root files, 34 DQM output files

@fabiocos
Copy link
Contributor Author

The reported failure in CMSSW code rules is unrelated to this PR, DQM differences are unrelated as well

@kpedro88
Copy link
Contributor

+upgrade

@silviodonato
Copy link
Contributor

merge

@cmsbuild cmsbuild merged commit 51df646 into cms-sw:master May 12, 2020
@cvuosalo
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will be automatically merged.

@fabiocos fabiocos deleted the fc-dd4hep-mtdnumbering branch May 12, 2020 17:35
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.

None yet

6 participants