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

Time for layerClusters in HGCAL #24838

Merged
merged 4 commits into from Oct 16, 2018
Merged

Conversation

amartelli
Copy link
Contributor

produce a ValueMap with the computed time for 2d clusters, so the BasicCluster dataformat is not modified

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

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

It involves the following packages:

RecoLocalCalo/HGCalRecProducers

@perrotta, @cmsbuild, @kpedro88, @slava77 can you please review it and eventually sign? Thanks.
@edjtscott, @vandreev11, @sethzenz, @felicepantaleo, @rovere, @lgray, @cseez, @pfs, @kpedro88 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

@slava77
Copy link
Contributor

slava77 commented Oct 9, 2018

@cmsbuild please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/30945/console Started: 2018/10/09 17:38

switch(algoId){
case reco::CaloCluster::hgcal_em:
evt.getByToken(hits_ee_token,ee_hits);
algo->populate(*ee_hits);
for(auto it: *ee_hits) hitmap[it.detid()] = it.time();
Copy link
Contributor

Choose a reason for hiding this comment

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

auto const&

break;
case reco::CaloCluster::hgcal_had:
evt.getByToken(hits_fh_token,fh_hits);
evt.getByToken(hits_bh_token,bh_hits);
if( fh_hits.isValid() ) {
algo->populate(*fh_hits);
for(auto it: *fh_hits) hitmap[it.detid()] = it.time();
Copy link
Contributor

Choose a reason for hiding this comment

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

auto const&

} else if ( bh_hits.isValid() ) {
algo->populate(*bh_hits);
}
break;
case reco::CaloCluster::hgcal_mixed:
evt.getByToken(hits_ee_token,ee_hits);
algo->populate(*ee_hits);
for(auto it: *ee_hits){
Copy link
Contributor

Choose a reason for hiding this comment

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

auto const&

evt.getByToken(hits_fh_token,fh_hits);
algo->populate(*fh_hits);
for(auto it: *fh_hits){
Copy link
Contributor

Choose a reason for hiding this comment

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

auto const&

if(sCl.size() >= 3){
std::vector<float> timeClhits;

for(auto hit : sCl.hitsAndFractions()){
Copy link
Contributor

Choose a reason for hiding this comment

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

auto const&

std::vector<float> timeClhits;

for(auto hit : sCl.hitsAndFractions()){
std::map<const HGCalDetId, float>::iterator finder = hitmap.find(hit.first);
Copy link
Contributor

Choose a reason for hiding this comment

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

const_iterator or auto

//make a map detid-rechit
// NB for the moment just host EE and FH hits
// timing in digi for BH not implemented for now
std::map<const HGCalDetId, float> hitmap;
Copy link
Contributor

Choose a reason for hiding this comment

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

probably worthwhile to use an unordered_map here

}

std::unique_ptr<edm::ValueMap<float>> timeCl(new edm::ValueMap<float>());
Copy link
Contributor

Choose a reason for hiding this comment

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

auto timeCl = std::make_unique<edm::ValueMap<float>>();

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

Comparison job queued.

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 9, 2018

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

Comparison Summary:

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

@kpedro88
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 10, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/30963/console Started: 2018/10/10 16:07

@cmsbuild
Copy link
Contributor

Pull request #24838 was updated. @perrotta, @cmsbuild, @kpedro88, @slava77 can you please check and sign again.

@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-24838/30963/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 4 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3162979
  • DQMHistoTests: Total failures: 2
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3162780
  • DQMHistoTests: Total skipped: 197
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 134 log files, 14 edm output root files, 32 DQM output files

@kpedro88
Copy link
Contributor

@amartelli I looked at one of the output ROOT files from the matrix tests. The ValueMap is in the event content as expected. 95% of entries have the -99 default value, while the remaining 5% have values mostly between -1 and 1 with a small tail beyond 1. Is this the expected behavior?

@slava77
Copy link
Contributor

slava77 commented Oct 11, 2018

+1

for #24838 477690f

  • code changes are in line with the PR description
  • jenkins tests pass and comparisons with the baseline (of previously known quantities) show no differences
  • based on a local copy of the jenkins outputs shows that the new valueMap hgcalLayerClusters_timeLayerCluster shows up in outputs of the 2023 workflows and the values are filled with non-default value for a fraction of the clusters (the code fills non-default values only for 3+ measurements in a cluster; most data in the jenkins tests is noise and should have small clusters)
    e.g. wf 20034 D17
    all_baselinevs24838-30963_ttbar14tev2023d17wf20034p0c_min15 max-2 floatedmvaluemap_hgcallayerclusters_timelayercluster_reco_obj_values_
    or with the default suppressed
    all_baselinevs24838-30963_ttbar14tev2023d17wf20034p0c_floatedmvaluemap_hgcallayerclusters_timelayercluster_reco_obj_values_45

@kpedro88
Copy link
Contributor

+upgrade
@amartelli please confirm the output that @slava77 and I have observed is correct

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

@fabiocos
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 49628e2 into cms-sw:master Oct 16, 2018
@amartelli
Copy link
Contributor Author

@kpedro88 yes what is observed is correct. The non default values are indeed filled for 3+ measurements with time in a cluster. sorry for the delay and thanks

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