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

Phase2-hgx132 Bug fix for HGCal post TDR geometry #24134

Merged
merged 2 commits into from Aug 3, 2018

Conversation

bsunanda
Copy link
Contributor

Correct cell assignments for virtual cells
Also include some debug facility during SIM and DIGI steps

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @bsunanda for master.

It involves the following packages:

Geometry/HGCalCommonData
SimCalorimetry/HGCalSimProducers
SimG4CMS/Calo

@civanch, @Dr15Jones, @ianna, @mdhildreth, @cmsbuild, @kpedro88 can you please review it and eventually sign? Thanks.
@vandreev11, @sethzenz, @makortel, @kpedro88, @lgray, @cseez, @pfs this is something you requested to watch as well.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@bsunanda
Copy link
Contributor Author

@cmsbuild Please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Jul 30, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/29569/console Started: 2018/07/30 19:03

@kpedro88
Copy link
Contributor

@bsunanda there were a few different bugs reported by @hatakeyamak:

  1. SimHits beyond high eta (small radius) boundary
  2. Strip of digis w/ high R in layer 18
  3. Digis outside OuterRadius

Can you clarify which bugs should be fixed by this PR?

@bsunanda
Copy link
Contributor Author

Hopefully all 3. There is a small issue of virtual cells. It may indicate a small excursion beyond the limit because the cell may be partially contained and the center of the cell (whose position is returned) may be outside the limit. This can be almost a few mm.

@cmsbuild
Copy link
Contributor

@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-24134/29569/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 4 differences found in the comparisons
  • DQMHistoTests: Total files compared: 31
  • DQMHistoTests: Total histograms compared: 2891493
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2891302
  • DQMHistoTests: Total skipped: 190
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 30 files compared)
  • Checked 128 log files, 14 edm output root files, 31 DQM output files

@@ -897,14 +960,25 @@ void HGCalDDDConstants::waferFromPosition(const double x, const double y,
auto itr = hgpar_->typesInLayers_.find(HGCalWaferIndex::waferIndex(layer,waferU,waferV));
celltype = ((itr == hgpar_->typesInLayers_.end()) ? 2 :
hgpar_->waferTypeL_[itr->second]);
if (debug)
Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The only reason is to trace a rare error. Now that the error is detected and corrected for I can revert this if you want. I wanted the debug to be active only when needed.

Copy link
Contributor

Choose a reason for hiding this comment

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

please, do. Thanks.


float x(0), y(0);
int indx = HGCalWaferIndex::waferIndex(lay,waferU,waferV);
auto itr = hgpar_->typesInLayers_.find(indx);
int type = ((itr == hgpar_->typesInLayers_.end()) ? 2 :
hgpar_->waferTypeL_[itr->second]);
if (debug)
Copy link
Contributor

Choose a reason for hiding this comment

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

@bsunanda - please, use compile time debug

int kndx = cellV*100 + cellU;
if (type == 0) {
auto ktr = hgpar_->cellFineIndex_.find(kndx);
if (ktr != hgpar_->cellFineIndex_.end()) {
x = hgpar_->cellFineX_[ktr->second];
y = hgpar_->cellFineY_[ktr->second];
}
if (debug)
edm::LogVerbatim("HGCalGeom") << "Fine " << cellU << ":" << cellV << ":"
Copy link
Contributor

Choose a reason for hiding this comment

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

@bsunanda - please, use compile time debug

} else {
auto ktr = hgpar_->cellCoarseIndex_.find(kndx);
if (ktr != hgpar_->cellCoarseIndex_.end()) {
x = hgpar_->cellCoarseX_[ktr->second];
y = hgpar_->cellCoarseY_[ktr->second];
}
if (debug)
Copy link
Contributor

Choose a reason for hiding this comment

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

@bsunanda - please, use compile time debug

@@ -568,6 +582,9 @@ std::pair<float,float> HGCalDDDConstants::locateCell(int lay, int waferU,
const auto & xy = waferPosition(waferU, waferV, reco);
x += xy.first;
y += xy.second;
if (debug)
Copy link
Contributor

Choose a reason for hiding this comment

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

@bsunanda - please, use compile time debug

if ((std::abs(yloc-yc) <= rc) && (std::abs(xloc-xc) <= Rc) &&
((std::abs(xloc-xc) <= 0.5*Rc) ||
(std::abs(yloc-yc) <= sqrt3_*(Rc-std::abs(xloc-xc))))) {
if (debug)
Copy link
Contributor

Choose a reason for hiding this comment

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

@bsunanda - please, use compile time debug

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ianna - a compile time debug will print all occurrences. This allows only when there is some special investigation.

Copy link
Contributor

Choose a reason for hiding this comment

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

Do you need to do special investigation in production? Because the check will be made every time even if you do not need any printout.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I am leaving selective debug statement so that I can easily revive partial debug. Hope this is oK with you

@cmsbuild
Copy link
Contributor

@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-24134/29583/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 3 differences found in the comparisons
  • DQMHistoTests: Total files compared: 31
  • DQMHistoTests: Total histograms compared: 2891565
  • DQMHistoTests: Total failures: 2
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2891373
  • DQMHistoTests: Total skipped: 190
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 30 files compared)
  • Checked 128 log files, 14 edm output root files, 31 DQM output files

@bsunanda
Copy link
Contributor Author

@civanch @ianna @kpedro88 Could you approve this? I have some thing in queue which I cannot submit till this one gets integrated

@kpedro88
Copy link
Contributor

@bsunanda I would prefer to get confirmation from @hatakeyamak that this indeed fixes the bugs that were observed

@hatakeyamak
Copy link
Contributor

I am checking this today. Try to report here asap.

@ianna
Copy link
Contributor

ianna commented Aug 1, 2018

@bsunanda - are differences in Reco comparison results justified: 3 differences found in the comparisons?

@kpedro88
Copy link
Contributor

kpedro88 commented Aug 1, 2018

@ianna these are spurious differences from non-reproducibility in a PU workflow

@ianna
Copy link
Contributor

ianna commented Aug 1, 2018

+1

@civanch
Copy link
Contributor

civanch commented Aug 1, 2018

+1

@hatakeyamak
Copy link
Contributor

My check summary is here:
https://indico.cern.ch/event/747942/contributions/3095531/
I think
SimHits beyond high eta (small radius) boundary
Strip of digis w/ high R in layer 18
Digis outside OuterRadius
are all addressed.

@kpedro88
Copy link
Contributor

kpedro88 commented Aug 2, 2018

+upgrade

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 2, 2018

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. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2)

@fabiocos
Copy link
Contributor

fabiocos commented Aug 3, 2018

+1

@cmsbuild cmsbuild merged commit 2220201 into cms-sw:master Aug 3, 2018
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

7 participants