Set choice of scales to 4 lepton mass

Asked by Bryan Kortman

Hi MadGraph Team,

Probably a basic question, but i am trying to use a particular scale choice to make a comparison with another generator.

Im looking to generate: g g > e- mu+ ve~ vm [QCD] and i want to set the dynamical scale to m_{lvlv}/2.

i am aware of https://cp3.irmp.ucl.ac.be/projects/madgraph/wiki/FAQ-General-13
and
https://answers.launchpad.net/mg5amcnlo/+faq/2014
 Though none of the standard scales seem to be "simply" the 4 lepton mass.

The only option i see when looking at setscales.f is the following:
elseif(dynamical_scale_choice.eq.5) then
c \decaying particle mass, for decays
          rscale=dsqrt(max(0d0,dot(P(0,1),P(0,1))))

Would this be the 4 lepton mass? Meaning changing to m4l/2 simply adding a "/2"

Thanks in advance,
Bryan Kortman

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,

I guess that this is a LO (loop-induced) computation right?
In that case, you can use
dynamical_scale_choice set to 4.
This is
      elseif(dynamical_scale_choice.eq.4) then
c \sqrt(s), partonic energy
         rscale = dsqrt(max(0d0,sumdot(p(0,1), p(0,2), 1d0)))

so this is
sqrt((p1+p2)**2)
by conservation of energy-momenta (this is where the fact that this is a LO computation is important):
p1+p2 = p3+p4+p5+p6
and therefore you do have the scale thate you want.
to set up the divide by two, you need to set scalefact to 0.5

Cheers,

Olivier

Revision history for this message
Bryan Kortman (bkbryan) said (last edit ):
#2

Hi Olivier,

Thanks for the quick and clear answer!

This is indeed a LO loop induced computation. Would this also work for when including another jet in the final state and then merging the two processes?

i.e.

generate g g > e- mu+ ve~ vm [QCD]
add process g g > e- mu+ ve~ vm j [QCD]

if not, what would be the best way to do this.

Best,
Bryan

Revision history for this message
Bryan Kortman (bkbryan) said :
#3

Hi Olivier,

When running this setup with dynamical scale 4 and scalefact 0.5.
it gives me the following error:
18:10:39 initMadLoop -r -f
18:15:36 Initializing MadLoop loop-induced matrix elements (this can take some time)...
18:15:43 MadLoop initialization finished.
18:15:43 compile Source Directory
18:18:53 Using random number seed offset = 24076
18:18:53 INFO: Running Survey
18:18:53 Creating Jobs
18:18:53 Working on SubProcesses
18:18:53 INFO: P0_gg_lvllvl
18:18:56 INFO: Idle: 9, Running: 12, Completed: 0 [ current time: 18h18 ]
18:18:58 INFO: Idle: 7, Running: 12, Completed: 2 [ 1.9s ]
18:18:59 STOP 1
18:18:59 INFO: P0_gg_lvllvl/G1.22 is at 0.00137 +- 7.1e-05 pb. Now submitting iteration #2.
18:18:59 INFO: P0_gg_lvllvl/G1.16 is at 0.0109 +- 0.000289 pb. Now submitting iteration #2.
18:18:59 INFO: P0_gg_lvllvl/G1.17 is at 0.00227 +- 0.000146 pb. Now submitting iteration #2.
18:18:59 rm: cannot remove 'results.dat': No such file or directory
18:18:59 ERROR DETECTED
18:18:59 STOP 1
18:18:59 INFO: P0_gg_lvllvl/G1.14 is at 0.0111 +- 0.000289 pb. Now submitting iteration #2.
18:18:59 STOP 1
18:18:59 rm: cannot remove 'results.dat': No such file or directory
18:18:59 ERROR DETECTED
18:18:59 rm: cannot remove 'results.dat': No such file or directory
18:18:59 ERROR DETECTED
18:19:03 Error when reading <open file u'/data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/P0_gg_lvllvl/G1.26_1/results.dat', mode 'r' at 0x7f5bc91ebb70>
18:19:03 WARNING: 'file' object has no attribute 'rfind' 
18:19:03 INFO: Idle: 2, Running: 12, Completed: 26 [ 6.3s ]
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101833 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101834 | tee -a $k
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101843 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101844 | tee -a $k
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101846 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101847 | tee -a $k
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101866 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101867 | tee -a $k
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101872 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101873 | tee -a $k
18:19:03 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101885 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:03 101886 | tee -a $k
18:19:04 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101926 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:04 101927 | tee -a $k
18:19:04 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101928 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:04 101929 | tee -a $k
18:19:04 /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/survey.sh: line 17: 101933 Terminated ../madevent 2>&1 >> $k < input_app.txt
18:19:04 101934 | tee -a $k

When looking in the file /data/atlas/users/bkortman/MGEvntGen_output/HWWOffshellSamples/Madgraph/ggllvvWW_0j_S/514002.gridpack/PROC_loop_sm-no_b_mass_0/SubProcesses/P0_gg_lvllvl/G1.26_1/log.txt

i see the following error:
 Warning: Too low fact scales: 1.1965669364931855 1.1965669364931855
 Fail to cluster the events from the rewgt function
STOP 1
Thanks for using LHAPDF 6.2.3. Please make sure to cite the paper:
  Eur.Phys.J. C75 (2015) 3, 132 (http://arxiv.org/abs/1412.7420)

ls status:
input_app.txt
moffset.dat
run1_app.log

my run card is the following:
#*********************************************************************
# 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 *
#*********************************************************************
#
#*********************************************************************
# 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 *
#*********************************************************************
  60000 = nevents ! Number of unweighted events requested
  0 = 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, 4=photon from muon *
#*********************************************************************
     1 = lpp1 ! beam 1 type
     1 = lpp2 ! beam 2 type
     6500.0 = ebeam1 ! beam 1 total energy in GeV
     6500.0 = ebeam2 ! beam 2 total 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
     260000 = 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
 4 = dynamical_scale_choice ! Choose one of the preselected dynamical choices
 0.5 = 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)
  average = event_norm ! average/sum. Normalization of the weight in the LHEF
#*********************************************************************
# Matching parameter (MLM only)
#*********************************************************************
 1 = ickkw ! 0 no matching, 1 MLM
 1.0 = alpsfact ! scale factor for QCD emission vx
 False = chcluster ! cluster only according to channel diag
 5 = asrwgtflavor ! highest quark flavor for a_s reweight
 True = auto_ptj_mjj ! Automatic setting of ptj and mjj if xqcut >0
                                   ! (turn off for VBF and single top processes)
 5.0 = xqcut ! minimum kt jet measure between partons
#*********************************************************************
#
#*********************************************************************
# handling of the helicities:
# 0: sum over all helicities
# 1: importance sampling over helicities
#*********************************************************************
   1 = 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)
#IF(d)# #*********************************************************************
#IF(d)# # Apply pt/E/eta/dr/mij/kt_durham cuts on decay products or not
#IF(d)# # (note that etmiss/ptll/ptheavy/ht/sorted cuts always apply)
#IF(d)# #*********************************************************************
   False = cut_decays ! Cut decay products
#*********************************************************************
# Standard Cuts *
#*********************************************************************
# Minimum and maximum pt's (for max, -1 means no cut) *
#*********************************************************************
 0.0 = ptj ! minimum pt for the jets
 0.0 = ptb ! minimum pt for the b
 0.0 = pta ! minimum pt for the photons
 5.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})
#
# For display option for energy cut in the partonic center of mass frame type 'update ecut'
##*********************************************************************
# Maximum and minimum absolute rapidity (for max, -1 means no cut) *
#*********************************************************************
 5.0 = etaj ! max rap for the jets
 -1.0 = etab ! max rap for the b
 2.5 = etaa ! max rap for the photons
 3.0 = 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.0 = drll ! min distance between leptons
 0.0 = draa ! min distance between gammas
 0.0 = drbj ! min distance between b and jet
 0.4 = draj ! min distance between gamma and jet
 0.0 = 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.4 = 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 *
#IF(llll)# # WARNING: for four lepton final state mmll cut require to have *
#IF(llll)# # 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
 0.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.
#IF(LL)# #*********************************************************************
#IF(LL)# # Minimum and maximum invariant mass for all letpons *
#IF(LL)# #*********************************************************************
 0.0 = mmnl ! min invariant mass for all letpons (l+- and vl)
 -1.0 = mmnlmax ! max invariant mass for all letpons (l+- and vl)
#IF(LL)# #*********************************************************************
#IF(LL)# # Minimum and maximum pt for 4-momenta sum of leptons / neutrino *
#IF(LL)# # for pair of lepton includes only same flavor, opposite charge
#IF(LL)# #*********************************************************************
 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 *
#*********************************************************************
 0.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
#IF(jj)# #*********************************************************************
#IF(jj)# # Control the pt's of the jets sorted by pt *
#IF(jj)# #*********************************************************************
 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
#IF(ll)# #*********************************************************************
#IF(ll)# # Control the pt's of leptons sorted by pt *
#IF(ll)# #*********************************************************************
 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
#IF(JJ)# #*********************************************************************
#IF(JJ)# # Control the Ht(k)=Sum of k leading jets *
#IF(JJ)# #*********************************************************************
 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
#IF(aj)# #***********************************************************************
#IF(aj)# # Photon-isolation cuts, according to hep-ph/9801442 *
#IF(aj)# # When ptgmin=0, all the other parameters are ignored *
#IF(aj)# # When ptgmin>0, pta and draj are not going to be used *
#IF(aj)# #***********************************************************************
#IF(aj)# %(ptgmin)s = ptgmin ! Min photon transverse momentum
#IF(aj)# %(r0gamma)s = R0gamma ! Radius of isolation code
#IF(aj)# %(xn)s = xn ! n parameter of eq.(3.4) in hep-ph/9801442
#IF(aj)# %(epsgamma)s = epsgamma ! epsilon_gamma parameter of eq.(3.4) in hep-ph/9801442
#IF(aj)# %(isoem)s = isoEM ! isolate photons from EM energy (photons and leptons)
#IF(jj)# #*********************************************************************
#IF(jj)# # WBF cuts *
#IF(jj)# #*********************************************************************
 0.0 = xetamin ! minimum rapidity for two jets in the WBF case
 0.0 = deltaeta ! minimum rapidity for two jets in the WBF case
#*********************************************************************
# maximal pdg code for quark to be considered as a light jet *
# (otherwise b cuts are applied) *
#*********************************************************************
 5 = maxjetflavor ! Maximum jet pdg code
#*********************************************************************
#
#*********************************************************************
# Store info for systematics studies *
# WARNING: Do not use for interference type of computation *
#*********************************************************************
   False = use_syst ! Enable systematics studies
#
systematics = systematics_program ! none, systematics [python], SysCalc [depreceted, C++]
['--pdf=errorset', '--muf=0.5,1,2', '--weight_info=MUR%(mur).1f_MUF%(muf).1f_PDF%(pdf)i', '--mur=0.5,1,2'] = systematics_arguments ! see: https://cp3.irmp.ucl.ac.be/projects/madgraph/wiki/Systematics#Systematicspythonmodule
# Syscalc is deprecated but to see the associate options type'update syscalc'#*********************************************************************
# Additional hidden parameters
#*********************************************************************
  24076 = python_seed # controlling python seed [handling in particular the final unweighting].
# -1 means use default from random module.
# -2 means set to same value as iseed

Do you know what might have went wrong?

Best,
Bryan

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

Hi,

>This is indeed a LO loop induced computation. Would this also work for when including another jet in the final state and then merging the two processes?

Indeed it will not work, you have to add a definition of a new dynamical scale in that case (within the file setscales.f).

>i.e.
>generate g g > e- mu+ ve~ vm [QCD]
>add process g g > e- mu+ ve~ vm j [QCD]

Now I do see various issue with the syntax that you use here.

Obviously, (and as you know for sure) those lines do overlap (i.e. they are some double counting)
This is why you do speak about merging, obviously.
Now your syntax only take into account (one) gluon emission and fully miss the fact that you can also have the same process (at the same order as q g > e- mu+ ve~ vm q. Those missing contribution will create issue with the matching/merging.
(I think it is possible to add them but one likely need to create a smart loop-diagram filtering in that case and move to the [noborn=QCD] syntax).

> Do you know what might have went wrong?

So you are using MLM but you do not use the MLM default scheme for the alpha_s evaluated within the loop.
The issue seems that at some point some scale (either mu_0) or the one associated to the MLM weight (alphas/pdf reweighting) are too small and the code can not evaluate the value of alpha_S anymore.
In the default MLM scale, a cutoff is implemented to avoid such type of issue.

If you want to do matching/merging, using the default scale is what I would recommend.

Cheers,

Olivier

Revision history for this message
Bryan Kortman (bkbryan) said :
#5

Thanks Olivier Mattelaer, that solved my question.