dy amcatnlo with mll cuts

Asked by Sihyun Jeon

Dear all,

From CMS we were generating DY samples with some mass ranges starting from 4gev.

We patch cuts.f file in SubProcess directory, adding some more lines after where "mll" cut is being applied to give upper boundaries to the mass ranges.
And while doing so we found that mll 10-50 and 50-inf does not have any issues but 4-10 crashes with error log below

Traceback (most recent call last):
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/extended_cmd.py", line 1541, in onecmd
    return self.onecmd_orig(line, **opt)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/extended_cmd.py", line 1490, in onecmd_orig
    return func(arg, **opt)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/amcatnlo_run_interface.py", line 1699, in do_launch
    evt_file = self.run(mode, options)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/amcatnlo_run_interface.py", line 1930, in run
    self.run_all_jobs(jobs_to_run,mint_step,fixed_order=False)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/amcatnlo_run_interface.py", line 2136, in run_all_jobs
    self.wait_for_complete(run_type)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/amcatnlo_run_interface.py", line 4720, in wait_for_complete
    self.cluster.wait(self.me_dir, update_status)
  File "/home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/bin/internal/cluster.py", line 844, in wait
    raise Exception(self.fail_msg)
Exception: program /home/shjeon/Physics/MCEG/MadGraph/MG5_aMC_v2_9_18/dytoee/SubProcesses/P0_ddx_epem/ajob1 2 F 0 0 launch ends with non zero status: 1. Stop all computation

We tested several other boundaries like 4-8, 4-10, 4-15, and 4-20 and figured out 4-20 was the point where we are able to get the results. I am aware that cuts.f hack is not something authors need to deal with but just wanted to understand the reason behind this. Would it be related to the link below where the integration fails after 100000 trials with too strict cuts?

https://answers.launchpad.net/mg5amcnlo/+question/655423

Question information

Language:
English Edit question
Status:
Answered
For:
MadGraph5_aMC@NLO Edit question
Assignee:
Rikkert Frederix Edit question
Last query:
Last reply:
Revision history for this message
Sihyun Jeon (shjeon) said :
#1

Forgot to add

We first noticed this issue from amcatnlo + fxfx configurations with upto 2 jets but i was able to reproduce it with pure mcnlo without any jets

Revision history for this message
Rikkert Frederix (frederix) said (last edit ):
#2

Dear Sihyun,

My apologies for the delay in answering.

I looked into this and the reason is that for DY production the multi-channel integration identifies two channels per subprocess. One channel is the "photon" contribution, in which s-hat is generated like 1/s-hat to have most phase-space points just above the invariant mass cut. The other channel is the "Z-boson" contribution. Since the phase-space integrator doesn't know about the upper limit on the invariant mass, it will throw most points around the Z-boson mass in this channel. Which means that if this upper invariant mass cut is set to a small value, like 10 GeV, no points from this integration channel will pass the cuts. Note that this does not necessarily mean that this integration channel does not contribute to the total cross section; it just means that the phase-space integrator throws points badly and it cannot estimate what the contribution from this channel is.

Probably the best solution to this problem is not to apply hard cuts in the cuts.f file to generate separate samples that are put together at the end. Rather introduce a "bias_weight_function" to generate events weighted and to enhance the large invariant mass region. That way, a single sample can be generated where events at small invariant mass have large weights, and events at large invariant mass have small weights. This bias_weight_function functionality can be defined in the cuts.f file or dummy_fct.f file (depending on the version of the code). Let me know if you have any questions regarding its usage.

Can you help with this problem?

Provide an answer of your own, or ask Sihyun Jeon for more information if necessary.

To post a message you must log in.