parallelization of event generation from gridpack

Asked by Carsten Bittrich on 2018-10-17

Hi,

I have produced a gridpack for a fairly complicated process (328 processes with 76000 diagrams) and now I try to generate events from that. For this I'd like to speed up the generation. As far as I understand the generation first creates a folder structure for the subprocesses (SubProcess/P0_.../G...) and afterwards visits each subfolder and generates events for each subfolder. The last step is what takes very long and I was wondering if there is a way to parallelise this. Form the outside, this seems fairly straight forward, but as far as I can see this doesn't seem to consider the --n-cores option, i.e. it runs only on one CPU.
Is there a way to speed this up?

Any help would be greatly appreciated.

Thanks,
Carsten

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Carsten Bittrich
Solved:
2018-10-17
Last query:
2018-10-17
Last reply:
2018-10-17

Hi,

Gridpack are designed to be single core only.
This is done in order to allow additional optimization that are not possible in multi-core mode.

Now you can run multiple times the same gridpack simultaneously (especially if you set your gridpack directory in readonly mode, such that you do not have to unpack it multiple times). and reduce the number of requested events accordingly.

Cheers,

Ollivier

> On 17 Oct 2018, at 15:13, Carsten Bittrich <email address hidden> wrote:
>
> New question #675292 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/675292
>
> Hi,
>
> I have produced a gridpack for a fairly complicated process (328 processes with 76000 diagrams) and now I try to generate events from that. For this I'd like to speed up the generation. As far as I understand the generation first creates a folder structure for the subprocesses (SubProcess/P0_.../G...) and afterwards visits each subfolder and generates events for each subfolder. The last step is what takes very long and I was wondering if there is a way to parallelise this. Form the outside, this seems fairly straight forward, but as far as I can see this doesn't seem to consider the --n-cores option, i.e. it runs only on one CPU.
> Is there a way to speed this up?
>
> Any help would be greatly appreciated.
>
> Thanks,
> Carsten
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Hi Olivier,

thanks for your fast answer. Yes, I can surely start several jobs simultaneously, but if the jobs run longer than a day (here that was for 6000 events), this limits the available options/resources.
Further reducing the number of events would probably also increase the overhead, I guess? I'd assume there is a range of requested events per job that has the lowest (CPU time) / (number of events) ratio. Is there a way to estimate that? (Or let madgraph choose what seems reasonable?)

Thanks,
Carsten

Hi,

The creation of the gridpack is more than 90% of the overhead.
Furthemore, if your jobs run for that long, you certainly do not care about any overhead.
And you can reduce the number of requested events by at least a factor of 10.
(and submit 10 times more jobs)

Now, I'm surprised about your number of process. 328 is extremely large.
Either I do not understand you about what that number is (is this the number of P directory?)
or your model is not optimised (Did you set the mass of all light particle to zero inside the model?)

A second reason why your gridpack can be that slow is that you are missing some cuts?

> . Is there a way to estimate that?

Well, this highly depend of the process that you are looking at.
So we do not have recipe for that, but you can do the study by plotting the time used for a number of requested event. Note that the variance (for various seed) for such plot is typically around a factor 2 and 4.

Cheers,

Olivier

> On 17 Oct 2018, at 21:08, Carsten Bittrich <email address hidden> wrote:
>
> Question #675292 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/675292
>
> Status: Answered => Open
>
> Carsten Bittrich is still having a problem:
> Hi Olivier,
>
> thanks for your fast answer. Yes, I can surely start several jobs simultaneously, but if the jobs run longer than a day (here that was for 6000 events), this limits the available options/resources.
> Further reducing the number of events would probably also increase the overhead, I guess? I'd assume there is a range of requested events per job that has the lowest (CPU time) / (number of events) ratio. Is there a way to estimate that? (Or let madgraph choose what seems reasonable?)
>
> Thanks,
> Carsten
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Hi Olivier,

thanks for your input, I'll try to move to more jobs with less events each then.

The quoted number of 328 for the processes was what madgraph prints after searching all diagrams (i.e. after the last "add process ..."). After the subprocess grouping I'm left with 10 P... directories.
The phasespace I defined is indeed quite inclusive, but this is necessary for the purposes of this sample.
Fyi, the process is WZ diboson production in the leptonic final states merged with up to 3 additional jets at LO, so up to 7 particles in the final state.

Thanks again,
Carsten

Hi,

> The quoted number of 328 for the processes was what madgraph prints after searching all diagrams (i.e. after the last "add process ..."). After the subprocess grouping I'm left with 10 P... directories.

That sounds good.

> The phasespace I defined is indeed quite inclusive, but this is necessary for the purposes of this sample.
> Fyi, the process is WZ diboson production in the leptonic final states merged with up to 3 additional jets at LO, so up to 7 particles in the final state.

Did investigate the "optimal" value of xqcut for your computation?
This parameter should be (strictly) smaller that your merging scale.
But the higher this parameter is, the faster is your code.
The problem is that if you put it too high, you will bias your generation.

This is the advantages of the shower-kt mlm method where xqcut can be set to exactly qcut (and therefore you have an optimal generation of events)

Cheers,

Olivier

> On 17 Oct 2018, at 22:02, Carsten Bittrich <email address hidden> wrote:
>
> Question #675292 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/675292
>
> Status: Answered => Solved
>
> Carsten Bittrich confirmed that the question is solved:
> Hi Olivier,
>
> thanks for your input, I'll try to move to more jobs with less events
> each then.
>
> The quoted number of 328 for the processes was what madgraph prints after searching all diagrams (i.e. after the last "add process ..."). After the subprocess grouping I'm left with 10 P... directories.
> The phasespace I defined is indeed quite inclusive, but this is necessary for the purposes of this sample.
> Fyi, the process is WZ diboson production in the leptonic final states merged with up to 3 additional jets at LO, so up to 7 particles in the final state.
>
> Thanks again,
> Carsten
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Hi Olivier,

thanks a lot for the hint with xqcut. Just a quick follow up question on this: I use ktdurham=30 as merging scale. I plan now to use xqcut=25, do you think this would be fine? By investigate you mean running several times with different settings and comparing with is still close to the result with xqcut=0?
Also I now realized, that the Pythia shower removed many (a third in total, almost all for the high jet multiplicities) events that didn't pass the merging cut ("Warning in Merging::mergeProcessCKKWL: Les Houches Event fails merging scale cut. Reject event."). As far as I understand this is caused by a bad choice of xqcut, right? Or are there other cuts, which could cause this (I use ptjmin = 15)?

Thanks,
Carsten

Hi,

Looks like that you are using CKKW-L merging.
The advise for xqcut was actually for MLM merging.
I'm not fully expert in CKKW-L, but in this case,
The ktdurham cut is suppose to be the equivalent of the xqcut for MLM.
Therefore, you should investigate to test with an highter ktdurham cut.
(keeping the merging scale fix. --which one did you use--.

> almost all for the high jet multiplicities) events that didn't pass the merging cut

Yes this seems to indicate that your cut are too light at genration time.

Cheers,

Olivier

> On 18 Oct 2018, at 16:27, Carsten Bittrich <email address hidden> wrote:
>
> Question #675292 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/675292
>
> Carsten Bittrich posted a new comment:
> Hi Olivier,
>
> thanks a lot for the hint with xqcut. Just a quick follow up question on this: I use ktdurham=30 as merging scale. I plan now to use xqcut=25, do you think this would be fine? By investigate you mean running several times with different settings and comparing with is still close to the result with xqcut=0?
> Also I now realized, that the Pythia shower removed many (a third in total, almost all for the high jet multiplicities) events that didn't pass the merging cut ("Warning in Merging::mergeProcessCKKWL: Les Houches Event fails merging scale cut. Reject event."). As far as I understand this is caused by a bad choice of xqcut, right? Or are there other cuts, which could cause this (I use ptjmin = 15)?
>
> Thanks,
> Carsten
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Hi Olivier,

yes, I'd prefer to apply CKKW-L merging. I attached the run-card for completeness below. As far as I understood ktdurham was the merging scale for CKKW-L. So as long as I use the same value for ktdurham in madgraph and pythia, I don't understand the rejection of events. Madgraph should only write out events with ktdurham larger than the cut I've set, right?
Also if I understand you correctly, you propose to increase ktdurham while keeping the merging scale fixed, but I don't know how that is possible. Sorry, but what am I missing?

Thanks,
Carsten

#*********************************************************************
# MadGraph5_aMC@NLO *
# *
# run_card.dat MadEvent *
# *
# This file is used to set the parameters of the run. *
# *
# Some notation/conventions: *
# *
# Lines starting with a '# ' are info or comments *
# *
# mind the format: value = variable ! comment *
# *
# To display more options, you can type the command: *
# update full_run_card *
#*********************************************************************
#
#*******************
# Running parameters
#*******************
#
#*********************************************************************
# Tag name for the run (one word) *
#*********************************************************************
  tag_1 = run_tag ! name of the run
#*********************************************************************
# Number of events and rnd seed *
# Warning: Do not generate more than 1M events in a single run *
# If you want to run Pythia, avoid more than 50k events in a run. *
#*********************************************************************
  1 = nevents ! Number of unweighted events requested
   1234 = iseed ! rnd seed (0=assigned automatically=default))
#*********************************************************************
# Collider type and energy *
# lpp: 0=No PDF, 1=proton, -1=antiproton, 2=photon from proton, *
# 3=photon from electron *
#*********************************************************************
     1 = lpp1 ! beam 1 type
     1 = lpp2 ! beam 2 type
   6500 = ebeam1 ! beam 1 energy in GeV
   6500 = ebeam2 ! beam 2 energy in GeV
# To see polarised beam options: type "update beam_pol"
#*********************************************************************
# PDF CHOICE: this automatically fixes also alpha_s and its evol. *
#*********************************************************************
 'lhapdf' = pdlabel ! PDF set
 261000 = lhaid ! if pdlabel=lhapdf, this is the lhapdf number
# To see heavy ion options: type "update ion_pdf"
#*********************************************************************
# Renormalization and factorization scales *
#*********************************************************************
 False = fixed_ren_scale ! if .true. use fixed ren scale
 False = fixed_fac_scale ! if .true. use fixed fac scale
 91.188 = scale ! fixed ren scale
 91.188 = dsqrt_q2fact1 ! fixed fact scale for pdf1
 91.188 = dsqrt_q2fact2 ! fixed fact scale for pdf2
 -1 = dynamical_scale_choice ! Choose one of the preselected dynamical choices
 1.00 = scalefact ! scale factor for event-by-event scales
#*********************************************************************
# Type and output format
#*********************************************************************
   .true. = gridpack !True = setting up the grid pack
  -1.0 = time_of_flight ! threshold (in mm) below which the invariant livetime is not written (-1 means not written)
  3.0 = lhe_version ! Change the way clustering information pass to shower.
  True = clusinfo ! include clustering tag in output
  average = event_norm ! average/sum. Normalization of the weight in the LHEF

#*********************************************************************
# Matching parameter (MLM only)
#*********************************************************************
 0 = ickkw ! 0 no matching, 1 MLM
 1.00 = alpsfact ! scale factor for QCD emission vx
 False = chcluster ! cluster only according to channel diag
 4 = asrwgtflavor ! highest quark flavor for a_s reweight
 False = auto_ptj_mjj ! Automatic setting of ptj and mjj if xqcut >0
                                   ! (turn off for VBF and single top processes)
0.000000 = xqcut ! minimum kt jet measure between partons
#*********************************************************************
#
#*********************************************************************
# handling of the helicities:
# 0: sum over all helicities
# 1: importance sampling over helicities
#*********************************************************************
   0 = nhel ! using helicities importance sampling or not.
#*********************************************************************
# Generation bias, check the wiki page below for more information: *
# 'cp3.irmp.ucl.ac.be/projects/madgraph/wiki/LOEventGenerationBias' *
#*********************************************************************
 None = bias_module ! Bias type of bias, [None, ptj_bias, -custom_folder-]
 {} = bias_parameters ! Specifies the parameters of the module.
#
#*******************************
# Parton level cuts definition *
#*******************************
#
#
#*********************************************************************
# BW cutoff (M+/-bwcutoff*Gamma) ! Define on/off-shell for "$" and decay
#*********************************************************************
  15.0 = bwcutoff ! (M+/-bwcutoff*Gamma)
#*********************************************************************
# Apply pt/E/eta/dr/mij/kt_durham cuts on decay products or not
# (note that etmiss/ptll/ptheavy/ht/sorted cuts always apply)
#*********************************************************************
 True = cut_decays ! Cut decay products
#*********************************************************************
# Standard Cuts *
#*********************************************************************
# Minimum and maximum pt's (for max, -1 means no cut) *
#*********************************************************************
 15.0 = ptj ! minimum pt for the jets
 15.0 = ptb ! minimum pt for the b
 10.0 = pta ! minimum pt for the photons
 4.0 = ptl ! minimum pt for the charged leptons
 0.0 = misset ! minimum missing Et (sum of neutrino's momenta)
 -1.0 = ptjmax ! maximum pt for the jets
 -1.0 = ptbmax ! maximum pt for the b
 -1.0 = ptamax ! maximum pt for the photons
 -1.0 = ptlmax ! maximum pt for the charged leptons
 -1.0 = missetmax ! maximum missing Et (sum of neutrino's momenta)
 {} = pt_min_pdg ! pt cut for other particles (use pdg code). Applied on particle and anti-particle
 {} = pt_max_pdg ! pt cut for other particles (syntax e.g. {6: 100, 25: 50})
#*********************************************************************
# Minimum and maximum E's (in the center of mass frame) *
#*********************************************************************
  0.0 = ej ! minimum E for the jets
  0.0 = eb ! minimum E for the b
  0.0 = ea ! minimum E for the photons
  0.0 = el ! minimum E for the charged leptons
  -1.0 = ejmax ! maximum E for the jets
 -1.0 = ebmax ! maximum E for the b
 -1.0 = eamax ! maximum E for the photons
 -1.0 = elmax ! maximum E for the charged leptons
 {} = e_min_pdg ! E cut for other particles (use pdg code). Applied on particle and anti-particle
 {} = e_max_pdg ! E cut for other particles (syntax e.g. {6: 100, 25: 50})
#*********************************************************************
# Maximum and minimum absolute rapidity (for max, -1 means no cut) *
#*********************************************************************
 5.5 = etaj ! max rap for the jets
  -1.0 = etab ! max rap for the b
 2.5 = etaa ! max rap for the photons
 5.2 = etal ! max rap for the charged leptons
 0.0 = etajmin ! min rap for the jets
 0.0 = etabmin ! min rap for the b
 0.0 = etaamin ! min rap for the photons
 0.0 = etalmin ! main rap for the charged leptons
 {} = eta_min_pdg ! rap cut for other particles (use pdg code). Applied on particle and anti-particle
 {} = eta_max_pdg ! rap cut for other particles (syntax e.g. {6: 2.5, 23: 5})
#*********************************************************************
# Minimum and maximum DeltaR distance *
#*********************************************************************
 0.0 = drjj ! min distance between jets
 0.0 = drbb ! min distance between b's
 0.2 = drll ! min distance between leptons
 0.4 = draa ! min distance between gammas
 0.0 = drbj ! min distance between b and jet
 0.4 = draj ! min distance between gamma and jet
 0.2 = drjl ! min distance between jet and lepton
 0.0 = drab ! min distance between gamma and b
 0.0 = drbl ! min distance between b and lepton
 0.1 = dral ! min distance between gamma and lepton
 -1.0 = drjjmax ! max distance between jets
 -1.0 = drbbmax ! max distance between b's
 -1.0 = drllmax ! max distance between leptons
 -1.0 = draamax ! max distance between gammas
 -1.0 = drbjmax ! max distance between b and jet
 -1.0 = drajmax ! max distance between gamma and jet
 -1.0 = drjlmax ! max distance between jet and lepton
 -1.0 = drabmax ! max distance between gamma and b
 -1.0 = drblmax ! max distance between b and lepton
 -1.0 = dralmax ! maxdistance between gamma and lepton
#*********************************************************************
# Minimum and maximum invariant mass for pairs *
# WARNING: for four lepton final state mmll cut require to have *
# different lepton masses for each flavor! *
#*********************************************************************
 0.0 = mmjj ! min invariant mass of a jet pair
 0.0 = mmbb ! min invariant mass of a b pair
 0.0 = mmaa ! min invariant mass of gamma gamma pair
 4.0 = mmll ! min invariant mass of l+l- (same flavour) lepton pair
 -1.0 = mmjjmax ! max invariant mass of a jet pair
 -1.0 = mmbbmax ! max invariant mass of a b pair
 -1.0 = mmaamax ! max invariant mass of gamma gamma pair
 -1.0 = mmllmax ! max invariant mass of l+l- (same flavour) lepton pair
 {} = mxx_min_pdg ! min invariant mass of a pair of particles X/X~ (e.g. {6:250})
 {'default': False} = mxx_only_part_antipart ! if True the invariant mass is applied only
                       ! to pairs of particle/antiparticle and not to pairs of the same pdg codes.
#*********************************************************************
# Minimum and maximum invariant mass for all letpons *
#*********************************************************************
 0.0 = mmnl ! min invariant mass for all letpons (l+- and vl)
 -1.0 = mmnlmax ! max invariant mass for all letpons (l+- and vl)
#*********************************************************************
# Minimum and maximum pt for 4-momenta sum of leptons *
#*********************************************************************
 0.0 = ptllmin ! Minimum pt for 4-momenta sum of leptons(l and vl)
 -1.0 = ptllmax ! Maximum pt for 4-momenta sum of leptons(l and vl)
#*********************************************************************
# Inclusive cuts *
#*********************************************************************
 2.0 = ptheavy ! minimum pt for at least one heavy final state
 0.0 = xptj ! minimum pt for at least one jet
 0.0 = xptb ! minimum pt for at least one b
 0.0 = xpta ! minimum pt for at least one photon
 0.0 = xptl ! minimum pt for at least one charged lepton
#*********************************************************************
# Control the pt's of the jets sorted by pt *
#*********************************************************************
 0.0 = ptj1min ! minimum pt for the leading jet in pt
 0.0 = ptj2min ! minimum pt for the second jet in pt
 0.0 = ptj3min ! minimum pt for the third jet in pt
 0.0 = ptj4min ! minimum pt for the fourth jet in pt
 -1.0 = ptj1max ! maximum pt for the leading jet in pt
 -1.0 = ptj2max ! maximum pt for the second jet in pt
 -1.0 = ptj3max ! maximum pt for the third jet in pt
 -1.0 = ptj4max ! maximum pt for the fourth jet in pt
 0 = cutuse ! reject event if fails any (0) / all (1) jet pt cuts
#*********************************************************************
# Control the pt's of leptons sorted by pt *
#*********************************************************************
 0.0 = ptl1min ! minimum pt for the leading lepton in pt
 0.0 = ptl2min ! minimum pt for the second lepton in pt
 0.0 = ptl3min ! minimum pt for the third lepton in pt
 0.0 = ptl4min ! minimum pt for the fourth lepton in pt
 -1.0 = ptl1max ! maximum pt for the leading lepton in pt
 -1.0 = ptl2max ! maximum pt for the second lepton in pt
 -1.0 = ptl3max ! maximum pt for the third lepton in pt
 -1.0 = ptl4max ! maximum pt for the fourth lepton in pt
#*********************************************************************
# Control the Ht(k)=Sum of k leading jets *
#*********************************************************************
 0.0 = htjmin ! minimum jet HT=Sum(jet pt)
 -1.0 = htjmax ! maximum jet HT=Sum(jet pt)
 0.0 = ihtmin !inclusive Ht for all partons (including b)
 -1.0 = ihtmax !inclusive Ht for all partons (including b)
 0.0 = ht2min ! minimum Ht for the two leading jets
 0.0 = ht3min ! minimum Ht for the three leading jets
 0.0 = ht4min ! minimum Ht for the four leading jets
 -1.0 = ht2max ! maximum Ht for the two leading jets
 -1.0 = ht3max ! maximum Ht for the three leading jets
 -1.0 = ht4max ! maximum Ht for the four leading jets
#***********************************************************************
# Photon-isolation cuts, according to hep-ph/9801442 *
# When ptgmin=0, all the other parameters are ignored *
# When ptgmin>0, pta and draj are not going to be used *
#***********************************************************************
 0.0 = ptgmin ! Min photon transverse momentum
 0.4 = R0gamma ! Radius of isolation code
 1.0 = xn ! n parameter of eq.(3.4) in hep-ph/9801442
 1.0 = epsgamma ! epsilon_gamma parameter of eq.(3.4) in hep-ph/9801442
 True = isoEM ! isolate photons from EM energy (photons and leptons)
#*********************************************************************
# WBF cuts *
#*********************************************************************
 0.0 = xetamin ! minimum rapidity for two jets in the WBF case
 0.0 = deltaeta ! minimum rapidity for two jets in the WBF case
#***********************************************************************
# Turn on either the ktdurham or ptlund cut to activate *
# CKKW(L) merging with Pythia8 [arXiv:1410.3012, arXiv:1109.4829] *
#***********************************************************************
 30 = ktdurham
 0.4 = dparameter
 -1.0 = ptlund
 1, 2, 3, 4, 5, 6, 21 = pdgs_for_merging_cut ! PDGs for two cuts above
#*********************************************************************
# maximal pdg code for quark to be considered as a light jet *
# (otherwise b cuts are applied) *
#*********************************************************************
 4 = maxjetflavor ! Maximum jet pdg code
#*********************************************************************
#
#*********************************************************************
# Store info for systematics studies *
# WARNING: Do not use for interference type of computation *
#*********************************************************************
 True = use_syst ! Enable systematics studies

Hi,

> As far as I understood ktdurham was the merging scale for CKKW-L

Possible, as I said I'm mot an expert in CKKW-L (that implementation was done by Stephan Prestel directly).

> I don't understand the rejection of events. Madgraph should only write out events with ktdurham larger than the cut I've set, right?

You also have some rejection of events related to the Sudakov form factor. (Only CKKW method include already the Sudakov when integrating the events and therefore do not reject events --and can in theory keep 100% of the events)

> Also if I understand you correctly, you propose to increase ktdurham while keeping the merging scale fixed, but I don't know how that is possible. Sorry, but what am I missing?

If you have both scale identical, then this is indeed not possible.

Cheers,

Olivier

> On 18 Oct 2018, at 21:32, Carsten Bittrich <email address hidden> wrote:
>
> Question #675292 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/675292
>
> Carsten Bittrich posted a new comment:
> Hi Olivier,
>
> yes, I'd prefer to apply CKKW-L merging. I attached the run-card for completeness below. As far as I understood ktdurham was the merging scale for CKKW-L. So as long as I use the same value for ktdurham in madgraph and pythia, I don't understand the rejection of events. Madgraph should only write out events with ktdurham larger than the cut I've set, right?
> Also if I understand you correctly, you propose to increase ktdurham while keeping the merging scale fixed, but I don't know how that is possible. Sorry, but what am I missing?
>
> Thanks,
> Carsten
>
> #*********************************************************************
> # MadGraph5_aMC@NLO *
> # *
> # run_card.dat MadEvent *
> # *
> # This file is used to set the parameters of the run. *
> # *
> # Some notation/conventions: *
> # *
> # Lines starting with a '# ' are info or comments *
> # *
> # mind the format: value = variable ! comment *
> # *
> # To display more options, you can type the command: *
> # update full_run_card *
> #*********************************************************************
> #
> #*******************
> # Running parameters
> #*******************
> #
> #*********************************************************************
> # Tag name for the run (one word) *
> #*********************************************************************
> tag_1 = run_tag ! name of the run
> #*********************************************************************
> # Number of events and rnd seed *
> # Warning: Do not generate more than 1M events in a single run *
> # If you want to run Pythia, avoid more than 50k events in a run. *
> #*********************************************************************
> 1 = nevents ! Number of unweighted events requested
> 1234 = iseed ! rnd seed (0=assigned automatically=default))
> #*********************************************************************
> # Collider type and energy *
> # lpp: 0=No PDF, 1=proton, -1=antiproton, 2=photon from proton, *
> # 3=photon from electron *
> #*********************************************************************
> 1 = lpp1 ! beam 1 type
> 1 = lpp2 ! beam 2 type
> 6500 = ebeam1 ! beam 1 energy in GeV
> 6500 = ebeam2 ! beam 2 energy in GeV
> # To see polarised beam options: type "update beam_pol"
> #*********************************************************************
> # PDF CHOICE: this automatically fixes also alpha_s and its evol. *
> #*********************************************************************
> 'lhapdf' = pdlabel ! PDF set
> 261000 = lhaid ! if pdlabel=lhapdf, this is the lhapdf number
> # To see heavy ion options: type "update ion_pdf"
> #*********************************************************************
> # Renormalization and factorization scales *
> #*********************************************************************
> False = fixed_ren_scale ! if .true. use fixed ren scale
> False = fixed_fac_scale ! if .true. use fixed fac scale
> 91.188 = scale ! fixed ren scale
> 91.188 = dsqrt_q2fact1 ! fixed fact scale for pdf1
> 91.188 = dsqrt_q2fact2 ! fixed fact scale for pdf2
> -1 = dynamical_scale_choice ! Choose one of the preselected dynamical choices
> 1.00 = scalefact ! scale factor for event-by-event scales
> #*********************************************************************
> # Type and output format
> #*********************************************************************
> .true. = gridpack !True = setting up the grid pack
> -1.0 = time_of_flight ! threshold (in mm) below which the invariant livetime is not written (-1 means not written)
> 3.0 = lhe_version ! Change the way clustering information pass to shower.
> True = clusinfo ! include clustering tag in output
> average = event_norm ! average/sum. Normalization of the weight in the LHEF
>
> #*********************************************************************
> # Matching parameter (MLM only)
> #*********************************************************************
> 0 = ickkw ! 0 no matching, 1 MLM
> 1.00 = alpsfact ! scale factor for QCD emission vx
> False = chcluster ! cluster only according to channel diag
> 4 = asrwgtflavor ! highest quark flavor for a_s reweight
> False = auto_ptj_mjj ! Automatic setting of ptj and mjj if xqcut >0
> ! (turn off for VBF and single top processes)
> 0.000000 = xqcut ! minimum kt jet measure between partons
> #*********************************************************************
> #
> #*********************************************************************
> # handling of the helicities:
> # 0: sum over all helicities
> # 1: importance sampling over helicities
> #*********************************************************************
> 0 = nhel ! using helicities importance sampling or not.
> #*********************************************************************
> # Generation bias, check the wiki page below for more information: *
> # 'cp3.irmp.ucl.ac.be/projects/madgraph/wiki/LOEventGenerationBias' *
> #*********************************************************************
> None = bias_module ! Bias type of bias, [None, ptj_bias, -custom_folder-]
> {} = bias_parameters ! Specifies the parameters of the module.
> #
> #*******************************
> # Parton level cuts definition *
> #*******************************
> #
> #
> #*********************************************************************
> # BW cutoff (M+/-bwcutoff*Gamma) ! Define on/off-shell for "$" and decay
> #*********************************************************************
> 15.0 = bwcutoff ! (M+/-bwcutoff*Gamma)
> #*********************************************************************
> # Apply pt/E/eta/dr/mij/kt_durham cuts on decay products or not
> # (note that etmiss/ptll/ptheavy/ht/sorted cuts always apply)
> #*********************************************************************
> True = cut_decays ! Cut decay products
> #*********************************************************************
> # Standard Cuts *
> #*********************************************************************
> # Minimum and maximum pt's (for max, -1 means no cut) *
> #*********************************************************************
> 15.0 = ptj ! minimum pt for the jets
> 15.0 = ptb ! minimum pt for the b
> 10.0 = pta ! minimum pt for the photons
> 4.0 = ptl ! minimum pt for the charged leptons
> 0.0 = misset ! minimum missing Et (sum of neutrino's momenta)
> -1.0 = ptjmax ! maximum pt for the jets
> -1.0 = ptbmax ! maximum pt for the b
> -1.0 = ptamax ! maximum pt for the photons
> -1.0 = ptlmax ! maximum pt for the charged leptons
> -1.0 = missetmax ! maximum missing Et (sum of neutrino's momenta)
> {} = pt_min_pdg ! pt cut for other particles (use pdg code). Applied on particle and anti-particle
> {} = pt_max_pdg ! pt cut for other particles (syntax e.g. {6: 100, 25: 50})
> #*********************************************************************
> # Minimum and maximum E's (in the center of mass frame) *
> #*********************************************************************
> 0.0 = ej ! minimum E for the jets
> 0.0 = eb ! minimum E for the b
> 0.0 = ea ! minimum E for the photons
> 0.0 = el ! minimum E for the charged leptons
> -1.0 = ejmax ! maximum E for the jets
> -1.0 = ebmax ! maximum E for the b
> -1.0 = eamax ! maximum E for the photons
> -1.0 = elmax ! maximum E for the charged leptons
> {} = e_min_pdg ! E cut for other particles (use pdg code). Applied on particle and anti-particle
> {} = e_max_pdg ! E cut for other particles (syntax e.g. {6: 100, 25: 50})
> #*********************************************************************
> # Maximum and minimum absolute rapidity (for max, -1 means no cut) *
> #*********************************************************************
> 5.5 = etaj ! max rap for the jets
> -1.0 = etab ! max rap for the b
> 2.5 = etaa ! max rap for the photons
> 5.2 = etal ! max rap for the charged leptons
> 0.0 = etajmin ! min rap for the jets
> 0.0 = etabmin ! min rap for the b
> 0.0 = etaamin ! min rap for the photons
> 0.0 = etalmin ! main rap for the charged leptons
> {} = eta_min_pdg ! rap cut for other particles (use pdg code). Applied on particle and anti-particle
> {} = eta_max_pdg ! rap cut for other particles (syntax e.g. {6: 2.5, 23: 5})
> #*********************************************************************
> # Minimum and maximum DeltaR distance *
> #*********************************************************************
> 0.0 = drjj ! min distance between jets
> 0.0 = drbb ! min distance between b's
> 0.2 = drll ! min distance between leptons
> 0.4 = draa ! min distance between gammas
> 0.0 = drbj ! min distance between b and jet
> 0.4 = draj ! min distance between gamma and jet
> 0.2 = drjl ! min distance between jet and lepton
> 0.0 = drab ! min distance between gamma and b
> 0.0 = drbl ! min distance between b and lepton
> 0.1 = dral ! min distance between gamma and lepton
> -1.0 = drjjmax ! max distance between jets
> -1.0 = drbbmax ! max distance between b's
> -1.0 = drllmax ! max distance between leptons
> -1.0 = draamax ! max distance between gammas
> -1.0 = drbjmax ! max distance between b and jet
> -1.0 = drajmax ! max distance between gamma and jet
> -1.0 = drjlmax ! max distance between jet and lepton
> -1.0 = drabmax ! max distance between gamma and b
> -1.0 = drblmax ! max distance between b and lepton
> -1.0 = dralmax ! maxdistance between gamma and lepton
> #*********************************************************************
> # Minimum and maximum invariant mass for pairs *
> # WARNING: for four lepton final state mmll cut require to have *
> # different lepton masses for each flavor! *
> #*********************************************************************
> 0.0 = mmjj ! min invariant mass of a jet pair
> 0.0 = mmbb ! min invariant mass of a b pair
> 0.0 = mmaa ! min invariant mass of gamma gamma pair
> 4.0 = mmll ! min invariant mass of l+l- (same flavour) lepton pair
> -1.0 = mmjjmax ! max invariant mass of a jet pair
> -1.0 = mmbbmax ! max invariant mass of a b pair
> -1.0 = mmaamax ! max invariant mass of gamma gamma pair
> -1.0 = mmllmax ! max invariant mass of l+l- (same flavour) lepton pair
> {} = mxx_min_pdg ! min invariant mass of a pair of particles X/X~ (e.g. {6:250})
> {'default': False} = mxx_only_part_antipart ! if True the invariant mass is applied only
> ! to pairs of particle/antiparticle and not to pairs of the same pdg codes.
> #*********************************************************************
> # Minimum and maximum invariant mass for all letpons *
> #*********************************************************************
> 0.0 = mmnl ! min invariant mass for all letpons (l+- and vl)
> -1.0 = mmnlmax ! max invariant mass for all letpons (l+- and vl)
> #*********************************************************************
> # Minimum and maximum pt for 4-momenta sum of leptons *
> #*********************************************************************
> 0.0 = ptllmin ! Minimum pt for 4-momenta sum of leptons(l and vl)
> -1.0 = ptllmax ! Maximum pt for 4-momenta sum of leptons(l and vl)
> #*********************************************************************
> # Inclusive cuts *
> #*********************************************************************
> 2.0 = ptheavy ! minimum pt for at least one heavy final state
> 0.0 = xptj ! minimum pt for at least one jet
> 0.0 = xptb ! minimum pt for at least one b
> 0.0 = xpta ! minimum pt for at least one photon
> 0.0 = xptl ! minimum pt for at least one charged lepton
> #*********************************************************************
> # Control the pt's of the jets sorted by pt *
> #*********************************************************************
> 0.0 = ptj1min ! minimum pt for the leading jet in pt
> 0.0 = ptj2min ! minimum pt for the second jet in pt
> 0.0 = ptj3min ! minimum pt for the third jet in pt
> 0.0 = ptj4min ! minimum pt for the fourth jet in pt
> -1.0 = ptj1max ! maximum pt for the leading jet in pt
> -1.0 = ptj2max ! maximum pt for the second jet in pt
> -1.0 = ptj3max ! maximum pt for the third jet in pt
> -1.0 = ptj4max ! maximum pt for the fourth jet in pt
> 0 = cutuse ! reject event if fails any (0) / all (1) jet pt cuts
> #*********************************************************************
> # Control the pt's of leptons sorted by pt *
> #*********************************************************************
> 0.0 = ptl1min ! minimum pt for the leading lepton in pt
> 0.0 = ptl2min ! minimum pt for the second lepton in pt
> 0.0 = ptl3min ! minimum pt for the third lepton in pt
> 0.0 = ptl4min ! minimum pt for the fourth lepton in pt
> -1.0 = ptl1max ! maximum pt for the leading lepton in pt
> -1.0 = ptl2max ! maximum pt for the second lepton in pt
> -1.0 = ptl3max ! maximum pt for the third lepton in pt
> -1.0 = ptl4max ! maximum pt for the fourth lepton in pt
> #*********************************************************************
> # Control the Ht(k)=Sum of k leading jets *
> #*********************************************************************
> 0.0 = htjmin ! minimum jet HT=Sum(jet pt)
> -1.0 = htjmax ! maximum jet HT=Sum(jet pt)
> 0.0 = ihtmin !inclusive Ht for all partons (including b)
> -1.0 = ihtmax !inclusive Ht for all partons (including b)
> 0.0 = ht2min ! minimum Ht for the two leading jets
> 0.0 = ht3min ! minimum Ht for the three leading jets
> 0.0 = ht4min ! minimum Ht for the four leading jets
> -1.0 = ht2max ! maximum Ht for the two leading jets
> -1.0 = ht3max ! maximum Ht for the three leading jets
> -1.0 = ht4max ! maximum Ht for the four leading jets
> #***********************************************************************
> # Photon-isolation cuts, according to hep-ph/9801442 *
> # When ptgmin=0, all the other parameters are ignored *
> # When ptgmin>0, pta and draj are not going to be used *
> #***********************************************************************
> 0.0 = ptgmin ! Min photon transverse momentum
> 0.4 = R0gamma ! Radius of isolation code
> 1.0 = xn ! n parameter of eq.(3.4) in hep-ph/9801442
> 1.0 = epsgamma ! epsilon_gamma parameter of eq.(3.4) in hep-ph/9801442
> True = isoEM ! isolate photons from EM energy (photons and leptons)
> #*********************************************************************
> # WBF cuts *
> #*********************************************************************
> 0.0 = xetamin ! minimum rapidity for two jets in the WBF case
> 0.0 = deltaeta ! minimum rapidity for two jets in the WBF case
> #***********************************************************************
> # Turn on either the ktdurham or ptlund cut to activate *
> # CKKW(L) merging with Pythia8 [arXiv:1410.3012, arXiv:1109.4829] *
> #***********************************************************************
> 30 = ktdurham
> 0.4 = dparameter
> -1.0 = ptlund
> 1, 2, 3, 4, 5, 6, 21 = pdgs_for_merging_cut ! PDGs for two cuts above
> #*********************************************************************
> # maximal pdg code for quark to be considered as a light jet *
> # (otherwise b cuts are applied) *
> #*********************************************************************
> 4 = maxjetflavor ! Maximum jet pdg code
> #*********************************************************************
> #
> #*********************************************************************
> # Store info for systematics studies *
> # WARNING: Do not use for interference type of computation *
> #*********************************************************************
> True = use_syst ! Enable systematics studies
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.