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

[DD4hep] Fix last of preshower overlaps #33840

Merged
merged 2 commits into from May 26, 2021
Merged

Conversation

cvuosalo
Copy link
Contributor

The ECal preshower showed overlaps of about 1 mm between volumes SFAbsNPbLOutAl and SFAbsNPbLinPb. These volumes are created by the preshower algorithm. The algorithm was also creating a few unneeded solids and volumes.

It turns out that the SFAbsNPbLOutAl volume was being built incorrectly. With old DD, this volume is heavily nested, while with DD4hep it was missing some components. This PR changes the code so that this volume gets the same structure in DD4hep as in the old DD. To add to the confusion, there were two different components both named SFAbsNPbLOutAl, and this PR changes the name of the volume to SFAbsNPbLOutAlVol to distinguish it from the like-named Tube.

The fix in this PR is complicated because the old DD code was using the capability of the old DD to create objects before they are fully defined. Old DD places the SFAbsNPbLOutAl volume before fully defining it and filling it with solids. That is not possible with DD4hep. To get around this problem, this PR adds a new loop where in the first iteration the necessary components are built and in the second iteration they are placed. The resulting code is even more complex than the original. It would be good to rewrite all this code to more clearly adapt it to the DD4hep paradigm where all components have to be defined before use, but we are trying to merge this PR for 12_0_0_pre2, and there is not time for such an extensive rewrite.

This PR removes uneeded solids and volumes and re-names a few components in cases where two different components had identical names.

PR validation:

The overlap checker, SimG4Core/PrintGeomInfo/test/python/g4OverlapCheck_dd4hep_cfg.py, was run before and after this change to show that the overlaps were fixed. Also, all solids were compared between old DD and DD4hep and found to be the same for the preshower (ignoring the new assemblies).

A backport is probably not necessary.

@cvuosalo
Copy link
Contributor Author

urgent

@cvuosalo
Copy link
Contributor Author

@qliphy We would like to get this PR into 12_0_0_pre2.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33840/22862

  • This PR adds an extra 20KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @cvuosalo (Carl Vuosalo) for master.

It involves the following packages:

Geometry/EcalCommonData

@civanch, @Dr15Jones, @makortel, @cvuosalo, @ianna, @mdhildreth, @cmsbuild can you please review it and eventually sign? Thanks.
@rchatter, @simonepigazzini, @fabiocos, @thomreis, @argiro this is something you requested to watch as well.
@silviodonato, @dpiparo, @qliphy you are the release manager for this.

cms-bot commands are listed here

@cvuosalo
Copy link
Contributor Author

@cmsbuild please test workflow 11634.911

@cmsbuild
Copy link
Contributor

-1

Failed Tests: ClangBuild
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-2ccfaf/15306/summary.html
COMMIT: 8d6e573
CMSSW: CMSSW_12_0_X_2021-05-25-1700/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/33840/15306/install.sh to create a dev area with all the needed externals and cmssw changes.

Clang Build

I found compilation warning while trying to compile with clang. Command used:

USER_CUDA_FLAGS='--expt-relaxed-constexpr' USER_CXXFLAGS='-Wno-register -fsyntax-only' scram build -k -j 32 COMPILER='llvm compile'

See details on the summary page.

@qliphy
Copy link
Contributor

qliphy commented May 26, 2021

@cvuosalo thanks. You mentioned "A backport is probably not necessary.", but we may need 11_3_X for high statistics production, so why not back-porting to 11_3_X?

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33840/22863

  • This PR adds an extra 20KB to repository

@cmsbuild
Copy link
Contributor

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

@cvuosalo
Copy link
Contributor Author

@cmsbuild please test workflow 11634.911

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-2ccfaf/15307/summary.html
COMMIT: 6715f40
CMSSW: CMSSW_12_0_X_2021-05-25-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/33840/15307/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 37
  • DQMHistoTests: Total histograms compared: 2650486
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2650463
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 36 files compared)
  • Checked 155 log files, 37 edm output root files, 37 DQM output files
  • TriggerResults: no differences found

@civanch
Copy link
Contributor

civanch commented May 26, 2021

+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 now be reviewed by the release team before it's merged. @silviodonato, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2)

@qliphy
Copy link
Contributor

qliphy commented May 26, 2021

+1

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

4 participants