Page MenuHomeHEPForge

Fix recently introduced bug in EvtDalitzReso for parent with significant natural width
ClosedPublic

Authored by tlatham on Mon, Sep 16, 2:52 PM.

Details

Summary

In !22 (c51a5f79), which was cherry-picked into both D119 and D124, several changes were made to EvtDalitzReso to make the evaluate method const.
The previous code was not const because a data member was modified in a particular case where the parent mass had changed.
Following the changes, the data member was left unmodified and a warning was printed instead.
The warning was never seen in any existing tests. However, the existing tests did not cover the case where the parent particle has a natural width, which implies that the per-event mass of the parent is not constant.

Here we:

  • Add a test for just such a case: eta_c -> K+ K- pi0
  • Modify the code to restore the correct behaviour
  • Make other general improvements to the EvtDalitzReso class:
    • Fix use of references to basic types as function arguments
    • Expand use of const where appropriate
    • Avoid unnecessary sqrts etc.

See also CERN Gitlab !32.

Test Plan

The introduced test gives identical results when run on d67a94dc (before the bug was introduced) and with this fix, while after the introduction of the bug but before this fix there are clear differences.
The other general improvements result in much faster execution time, despite the fix necessitating additional instantiations of EvtTwoBodyVertex objects that were previously cached.

Diff Detail

Repository
rEVTGEN evtgen
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

tlatham created this revision.
tlatham edited the test plan for this revision. (Show Details)
tlatham added reviewers: jback, abudinen, kreps.
tlatham changed the visibility from "All Users" to "Public (No Login Required)".
tlatham changed the edit policy from "All Users" to "Restricted Project (Project)".
tlatham added a project: Restricted Project.
tlatham added a subscriber: Restricted Project.

As shown in !32, I checked myself that these changes fix the bug. So therefore I am approving.

This revision is now accepted and ready to land.Mon, Sep 16, 6:31 PM