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

Fix EmissionVetoHook for BB4L #42264

Merged
merged 1 commit into from
Jul 30, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -442,7 +442,7 @@ bool EmissionVetoHook1::doVetoFSREmission(int, const Pythia8::Event &e, int iSys
return false;

// only use for outside resonance vetos in combination with bb4l:FSREmission:veto
Copy link
Contributor

Choose a reason for hiding this comment

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

Also the comment line should be updated accordingly

And please fix also the PR description, which is misleading:
"The showering is set up in such a way that emissions that are outside a resonance, i.e. do not come from top quarks, are handled by the normal EmissionVetoHook1.cc hook, while PowhegHooksBB4L.h handles emissions that are inside a resonance.
Looking at the single changed line, it can be clearly seen that the condition needs to be the other way around for this to happen correctly - if the emission is in resonance, the EmissionVetoHook should not consider it, and leave it up to PowhegHooksBB4L."
(You say that the condition needs to be to other way around, but you repeat the same conditions as before)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hi,
I've updated the PR description to hopefully make it more clear. As far as I can tell, the comment is already correct (it was not describing the code before the change, which is partly how I found the bug).

if (!inResonance && settingsPtr->flag("POWHEG:bb4l:FSREmission:veto") == 1)
if (inResonance && settingsPtr->flag("POWHEG:bb4l:FSREmission:veto") == 1)
return false;

// If we already have accepted 'vetoCount' emissions in a row, do nothing
Expand Down