Large NLO / LO ratio in z at LHC

Asked by Laura Buonincontri

Dear experts,

I am trying to calculate the increment in the p p -> Z + (Z+jet) production cross section between LO and NLO.
I saw in some presentations that it should be around 25-30% ( for example slide 95 in https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwi9uvi6i-GBAxUKa_EDHZeoDeAQFnoECBgQAQ&url=https%3A%2F%2Fidpasc.lip.pt%2Fuploads%2Ftalk%2Ffile%2F184%2Ftutorial-IDPASC-2015.pdf&usg=AOvVaw25o9hJztgCfBDT3p-3o2gs&opi=89978449).

At LO I am generating the process in this way:
import model loop_sm-ckm
generate p p > z @0
add process p p > z j @1

At NLO I am generating the process in this way:
import model loop_sm-ckm
generate p p > z [QCD] @0
add process p p > z j [QCD] @1

In both the run cards I set the pt min of jets to 5 GeV and the etaj max to 5. I found a LO cross section of 44470 pb and at NLO of 93470 pb, that is a factor 2.2 greater than the LO.

I also tried to do some attempts, on the basis of other questions done in this forum.
I tried to fix the renormalization and factorization scale. By default I see in the run card:

 False = fixed_ren_scale ! if .true. use fixed ren scale
  False = fixed_fac_scale ! if .true. use fixed fac scale
  91.118 = mur_ref_fixed ! fixed ren reference scale
  91.118 = muf_ref_fixed ! fixed fact reference scale

I tried to change to True the first two lines, but when I launch the process, a warning tells me that they are again set to False since I am using the FxFxmerging.

Then I tried to change the production process into:

generate p p > mu+ mu- @0
add process p p > mu+ mu- j @1

and set
40.0 = mmll ! min invariant mass of l+l- (same flavour) lepton pair.
I did the same for NLO and put the same minimum pt and eta as before. The cross sections are now:
1707 pb at LO
3325 pb at NLO.

So again, it seems too much to me this increment.

I suspect that I am doing something wrong with the NLO case, maybe there are some other parameters that have to be set differently.

Any suggestion is welcome.
Thank you,

Laura

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Olivier Mattelaer
Solved:
Last query:
Last reply:
Revision history for this message
Olivier Mattelaer (olivier-mattelaer) said :
#1

Hi,

Did you compare the cross-section before or after the parton-shower?
Both MLM and FxFx needs to run a veto algorithm (part of the parton-shower)
which reduces the cross-section to the physical one.

Cheers,

Olivier

> On 6 Oct 2023, at 11:40, Laura Buonincontri <email address hidden> wrote:
>
> New question #708127 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/708127
>
> Dear experts,
>
> I am trying to calculate the increment in the p p -> Z + (Z+jet) production cross section between LO and NLO.
> I saw in some presentations that it should be around 25-30% ( for example slide 95 in https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwi9uvi6i-GBAxUKa_EDHZeoDeAQFnoECBgQAQ&url=https%3A%2F%2Fidpasc.lip.pt%2Fuploads%2Ftalk%2Ffile%2F184%2Ftutorial-IDPASC-2015.pdf&usg=AOvVaw25o9hJztgCfBDT3p-3o2gs&opi=89978449).
>
> At LO I am generating the process in this way:
> import model loop_sm-ckm
> generate p p > z @0
> add process p p > z j @1
>
>
> At NLO I am generating the process in this way:
> import model loop_sm-ckm
> generate p p > z [QCD] @0
> add process p p > z j [QCD] @1
>
> In both the run cards I set the pt min of jets to 5 GeV and the etaj max to 5. I found a LO cross section of 44470 pb and at NLO of 93470 pb, that is a factor 2.2 greater than the LO.
>
> I also tried to do some attempts, on the basis of other questions done in this forum.
> I tried to fix the renormalization and factorization scale. By default I see in the run card:
>
> False = fixed_ren_scale ! if .true. use fixed ren scale
> False = fixed_fac_scale ! if .true. use fixed fac scale
> 91.118 = mur_ref_fixed ! fixed ren reference scale
> 91.118 = muf_ref_fixed ! fixed fact reference scale
>
> I tried to change to True the first two lines, but when I launch the process, a warning tells me that they are again set to False since I am using the FxFxmerging.
>
> Then I tried to change the production process into:
>
> generate p p > mu+ mu- @0
> add process p p > mu+ mu- j @1
>
> and set
> 40.0 = mmll ! min invariant mass of l+l- (same flavour) lepton pair.
> I did the same for NLO and put the same minimum pt and eta as before. The cross sections are now:
> 1707 pb at LO
> 3325 pb at NLO.
>
> So again, it seems too much to me this increment.
>
> I suspect that I am doing something wrong with the NLO case, maybe there are some other parameters that have to be set differently.
>
> Any suggestion is welcome.
> Thank you,
>
> Laura
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Laura Buonincontri (laurabuonincontri) said :
#2

Dear Olivier,

I was comparing the cross-section before the parton shower. I desabled pythia8, since this error was occuring:

launch auto
Traceback (most recent call last):
  File "/usr/lib/python3.8/shutil.py", line 791, in move
    os.rename(src, real_dst)
FileNotFoundError: [Errno 2] No such file or directory: '/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/z_nlo/MCatNLO/RUN_PYTHIA8_1/events.hepmc.gz' -> '/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/z_nlo/Events/run_01/events_PYTHIA8_0.hepmc.gz'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/interface/amcatnlo_run_interface.py", line 4090, in run_mcatnlo
    files.mv(os.path.join(rundir, 'events.%s.gz' % ext), hep_file)
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/iolibs/files.py", line 186, in mv
    shutil.move(path1, path2)
  File "/usr/lib/python3.8/shutil.py", line 811, in move
    copy_function(src, real_dst)
  File "/usr/lib/python3.8/shutil.py", line 435, in copy2
    copyfile(src, dst, follow_symlinks=follow_symlinks)
  File "/usr/lib/python3.8/shutil.py", line 264, in copyfile
    with open(src, 'rb') as fsrc, open(dst, 'wb') as fdst:
FileNotFoundError: [Errno 2] No such file or directory: '/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/z_nlo/MCatNLO/RUN_PYTHIA8_1/events.hepmc.gz'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/interface/extended_cmd.py", line 1544, in onecmd
    return self.onecmd_orig(line, **opt)
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/interface/extended_cmd.py", line 1493, in onecmd_orig
    return func(arg, **opt)
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/interface/amcatnlo_run_interface.py", line 1805, in do_launch
    self.run_mcatnlo(evt_file, options)
  File "/home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/madgraph/interface/amcatnlo_run_interface.py", line 4106, in run_mcatnlo
    raise aMCatNLOError('No file has been generated, an error occurred.'+\
madgraph.interface.amcatnlo_run_interface.aMCatNLOError: No file has been generated, an error occurred. More information in /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/amcatnlo_run.log
Value of current Options:
             pythia8_path : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/pythia8
                hwpp_path : None
              thepeg_path : None
               hepmc_path : None
         madanalysis_path : None
        madanalysis5_path : None
          pythia-pgs_path : None
               rivet_path : None
                yoda_path : None
              contur_path : None
                  td_path : None
             delphes_path : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/Delphes
      exrootanalysis_path : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/ExRootAnalysis
             syscalc_path : None
                  timeout : 60
              web_browser : None
               eps_viewer : None
              text_editor : None
         fortran_compiler : None
            f2py_compiler : None
        f2py_compiler_py2 : None
        f2py_compiler_py3 : None
             cpp_compiler : None
             cluster_type : condor
            cluster_queue : None
    cluster_status_update : (600, 30)
                  fastjet : None
                    golem : None
                  samurai : None
                    ninja : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/lib
                  collier : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/lib
                   lhapdf : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/lhapdf6_py3/bin/lhapdf-config
                 pineappl : pineappl
               lhapdf_py2 : None
               lhapdf_py3 : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/lhapdf6_py3/bin/lhapdf-config
        cluster_temp_path : None
mg5amc_py8_interface_path : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0/HEPTools/MG5aMC_PY8_interface
       cluster_local_path : None
                      OLP : MadLoop
         cluster_nb_retry : 1
       cluster_retry_wait : 300
             cluster_size : 100
      output_dependencies : external
           crash_on_error : False
       auto_convert_model : False
 acknowledged_v3.1_syntax : False
       group_subprocesses : Auto
ignore_six_quark_processes : False
low_mem_multicore_nlo_generation : False
      complex_mass_scheme : False
include_lepton_initiated_processes : False
                    gauge : unitary
             stdout_level : 20
    loop_optimized_output : True
         loop_color_flows : False
   max_npoint_for_channel : 0
  default_unset_couplings : 99
        max_t_for_channel : 99
       zerowidth_tchannel : True
      nlo_mixed_expansion : True
              auto_update : 7
   automatic_html_opening : False
                 run_mode : 2
                  nb_core : 4
      notification_center : True
                 mg5_path : /home/user/madgraph/MG5_aMC_v3.4.0/MG5_aMC_v3_4_0

I have to find the solution for this then!

Thank you

Laura

Revision history for this message
Laura Buonincontri (laurabuonincontri) said :
#3

Dear Olivier,

I finally have been able to run the NLO with pythia8, I see that at the end the cross section from FxFx merging is written and is lower than the one calculated before pythia8.
After many pyhton8 re-installation and attempts I have understood that it was a matter of linux version. I tried to run it on another computer and the error message above was solved. Thank you for your hints!!

Now, I would like to calculate also the acceptance for the process p p > z > b b~ + p p > z j > b b~ j, by requiring at least two jets in the eta range between 2.2 and 4.2 and compare it between LO and NLO.
I would like to understand how to make the z correctly decay. I mean, I tried this:

generate p p > z [QCD] z > b b~ @0
add process p p > z j [QCD] z > b b~@1

but this error is printed:

Error detected in "add process p p > z j [QCD] z > b b~ @1"
write debug file MG5_debug
If you need help with this issue please contact us on https://answers.launchpad.net/mg5amcnlo
str :
        Automatic process-order determination lead to negative constraints:
        QED: 20, QCD: -18
        Please specify the coupling orders from the command line.

Honestly I am not sure about how to solve this.

Do you have any hint for this?

Thank you,

Laura

Revision history for this message
Best Olivier Mattelaer (olivier-mattelaer) said :
#4

At NLO, you can either let the Z decay within the Parton-shower or via MadSpin.
MadSpin has full spin-correlation (not the case for the parton-shower at least in general) but you can not enforce cuts at generation level.

Cheers,

Olivier

Revision history for this message
Laura Buonincontri (laurabuonincontri) said :
#5

Thanks Olivier Mattelaer, that solved my question.