How to determine the value of alpha_s used in Madgraph

Asked by he

We want to check the NLO QCD corrections results in between Madgraph and FeynAtrs, FormCalc and Looptools( as FFL).
We choose a process as pp ->W^-H in 5-flavors scheme(M_b=0). Thus, we import the model as "loop_sm-no_b_mass" in Madgraph.

(1). Firstly, we choose the PDF as cteq6l1, mu_R=mu_F=MZ in both Madgraph and FFL(two cutoff phase space splitting scheme for IR divergence).
When take the scale as MZ, we need to fixed alpha_s=0.1184 (corresponding mu_R=mu_F=MZ. This is important to our problems.) in FFL calculation, which as an input parameter.
Note: In order to ensure consistency of input parameter, we manually fix the input value of alpha_s in FFL.

In Madgraph, we performed
...
generate p p > W- H [QCD]
...
.

We get the following good results
      tree: 0.3728(1) in Madgraph. 0.37274(7) in FFL
      nlo: 0.467(1) in Madgraph 0.4682(2) in FFL

(2). Secondly, the problem is coming, we also choose the PDF as cteq6l1, but the mu_R=mu_F=2*(MH+MZ) in both Madgraph and FFL.
Also, we need to fix the alpha_s = 0.1048 (corresponding mu_R=mu_F= 2*(MH+MZ) ) in FFL calculation.
However, we get the following bad results
      tree: 0.404(1) in Madgraph. 0.4042(3) in FFL
      nlo: 0.459(2) in Madgraph 0.4688(4) in FFL

(3). Thirdly, we choose the pdf as PDF4LHC15_nnlo_mc, mu_R=mu_F=MZ in both Madgraph and FFL.
Also, we need to fix the alpha_s = 0.1180 (corresponding mu_R=mu_F= MZ ) in FFL calculation.
However, we also get the following bad results
      tree: 0.431(1) in Madgraph. 0.4323(1) in FFL
      nlo: 0.533(2) in Madgraph 0.5431(2) in FFL

We extract the values of alpha_s from .../Events/run_**/events.lhe.gz.

Finally, for the NLO QCD corrections results of (2),(3), there is a significant error in both Madgraph and FFL.
The FFL results have been checked with the dipole subtraction method.
The other parameters are consistency in Madgraph and FFL.

So, we are very doubtful that the NLO QCD corrections error in (2),(3) is reasonable?
Or whether the values of alpha_s extracted from Madgraph and used in FFL is wrong?
How should we correctly extract the value of alpha_s used by Madgraph?
Can we manually fix the value of alpha_s when using the PDF?
Can we divide the nloresults into virtual part and radiation part that could be check independently?
Or, we have the other error in calculations, which lead to above error.

The cards documents of (3) as follow(in (1)(2), we only changed the LHAPDFid, mu_R and mu_F)

The parameter_card::
  1 ######################################################################
  2 ## PARAM_CARD AUTOMATICALY GENERATED BY MG5 FOLLOWING UFO MODEL ####
  3 ######################################################################
  4 ## ##
  5 ## Width set on Auto will be computed following the information ##
  6 ## present in the decay.py files of the model. ##
  7 ## See arXiv:1402.1178 for more details. ##
  8 ## ##
  9 ######################################################################
 10
 11 ###################################
 12 ## INFORMATION FOR MASS
 13 ###################################
 14 Block mass
 15 6 1.732100e+02 # MT
 16 15 1.777000e+00 # MTA
 17 23 9.118760e+01 # MZ
 18 25 1.250000e+02 # MH
 19 ## Dependent parameters, given by model restrictions.
 20 ## Those values should be edited following the
 21 ## analytical expression. MG5 ignores those values
 22 ## but they are important for interfacing the output of MG5
 23 ## to external program such as Pythia.
 24 1 0.000000e+00 # d : 0.0
 25 2 0.000000e+00 # u : 0.0
 26 3 0.000000e+00 # s : 0.0
 27 4 0.000000e+00 # c : 0.0
 28 5 0.000000e+00 # b : 0.0
 29 11 0.000000e+00 # e- : 0.0
 30 12 0.000000e+00 # ve : 0.0
 31 13 0.000000e+00 # mu- : 0.0
 32 14 0.000000e+00 # vm : 0.0
 33 16 0.000000e+00 # vt : 0.0
 34 21 0.000000e+00 # g : 0.0
 35 22 0.000000e+00 # a : 0.0
 36 24 8.038500e+01 # w+ : 80.385
 37
 38 ###################################
 39 ## INFORMATION FOR SMINPUTS
 40 ###################################
 41 Block sminputs
 42 1 1.370360e+02 # aEWM1
 43 2 1.166379e-05 # Gf
 44 3 1.184000e-01 # aS (Note that Parameter not used if you use a PDF set)
 45
 46 ###################################
 47 ## INFORMATION FOR YUKAWA
 48 ###################################
 49 Block yukawa
 50 6 1.730000e+02 # ymt
 51 15 1.777000e+00 # ymtau
 52
 53 ###################################
 54 ## INFORMATION FOR DECAY
 55 ###################################
 56 DECAY 6 1.491500e+00 # WT
 57 DECAY 23 2.441404e+00 # WZ
 58 DECAY 24 2.047600e+00 # WW
 59 DECAY 25 6.382339e-03 # WH
 60 ## Dependent parameters, given by model restrictions.
 61 ## Those values should be edited following the
 62 ## analytical expression. MG5 ignores those values
 63 ## but they are important for interfacing the output of MG5
 64 ## to external program such as Pythia.
 65 DECAY 1 0.000000e+00 # d : 0.0
 66 DECAY 2 0.000000e+00 # u : 0.0
 67 DECAY 3 0.000000e+00 # s : 0.0
 68 DECAY 4 0.000000e+00 # c : 0.0
 69 DECAY 5 0.000000e+00 # b : 0.0
 70 DECAY 11 0.000000e+00 # e- : 0.0
 71 DECAY 12 0.000000e+00 # ve : 0.0
 72 DECAY 13 0.000000e+00 # mu- : 0.0
 73 DECAY 14 0.000000e+00 # vm : 0.0
 74 DECAY 15 0.000000e+00 # ta- : 0.0
 75 DECAY 16 0.000000e+00 # vt : 0.0
 76 DECAY 21 0.000000e+00 # g : 0.0
 77 DECAY 22 0.000000e+00 # a : 0.0
 78 #===========================================================
 79 # QUANTUM NUMBERS OF NEW STATE(S) (NON SM PDG CODE)
 80 #===========================================================
 81
 82 Block QNUMBERS 82 # gh
 83 1 0 # 3 times electric charge
 84 2 1 # number of spin states (2S+1)
 85 3 8 # colour rep (1: singlet, 3: triplet, 8: octet)
 86 4 1 # Particle/Antiparticle distinction (0=own anti)

The run_cards:
  1 #***********************************************************************
  2 # MadGraph5_aMC@NLO *
  3 # *
  4 # run_card.dat aMC@NLO *
  5 # *
  6 # This file is used to set the parameters of the run. *
  7 # *
  8 # Some notation/conventions: *
  9 # *
 10 # Lines starting with a hash (#) are info or comments *
 11 # *
 12 # mind the format: value = variable ! comment *
 13 # *
 14 # Some of the values of variables can be list. These can either be *
 15 # comma or space separated. *
 16 # *
 17 # To display additional parameter, you can use the command: *
 18 # update to_full *
 19 #***********************************************************************
 20 #
 21 #*******************
 22 # Running parameters
 23 #*******************
 24 #
 25 #***********************************************************************
 26 # Tag name for the run (one word) *
 27 #***********************************************************************
 28 tag_1 = run_tag ! name of the run
 29 #***********************************************************************
 30 # Number of LHE events (and their normalization) and the required *
 31 # (relative) accuracy on the Xsec. *
 32 # These values are ignored for fixed order runs *
 33 #***********************************************************************
 34 500000 = nevents ! Number of unweighted events requested
 35 -1.0 = req_acc ! Required accuracy (-1=auto determined from nevents)
 36 -1 = nevt_job ! Max number of events per job in event generation.
 37 ! (-1= no split).
 38 #***********************************************************************
 39 # Output format
 40 #***********************************************************************
 41 -1.0 = time_of_flight ! threshold (in mm) below which the invariant livetime is not written (-1 means not written)
 42 average = event_norm ! average/sum/bias. Normalization of the weight in the LHEF
 43 #***********************************************************************
 44 # Number of points per itegration channel (ignored for aMC@NLO runs) *
 45 #***********************************************************************
 46 0.01 = req_acc_fo ! Required accuracy (-1=ignored, and use the
 47 ! number of points and iter. below)
 48 # These numbers are ignored except if req_acc_FO is equal to -1
 49 5000 = npoints_fo_grid ! number of points to setup grids
 50 4 = niters_fo_grid ! number of iter. to setup grids
 51 10000 = npoints_fo ! number of points to compute Xsec
 52 6 = niters_fo ! number of iter. to compute Xsec
 53 #***********************************************************************
 54 # Random number seed *
 55 #***********************************************************************
 56 0 = iseed ! rnd seed (0=assigned automatically=default))
 57 #***********************************************************************
 58 # Collider type and energy *
 59 #***********************************************************************
 60 1 = lpp1 ! beam 1 type (0 = no PDF)
 61 1 = lpp2 ! beam 2 type (0 = no PDF)
 62 6500.0 = ebeam1 ! beam 1 energy in GeV
 63 6500.0 = ebeam2 ! beam 2 energy in GeV
 64 #***********************************************************************
 65 # PDF choice: this automatically fixes also alpha_s(MZ) and its evol. *
 66 #***********************************************************************
 67 lhapdf = pdlabel ! PDF set
 68 91500 = lhaid ! If pdlabel=lhapdf, this is the lhapdf number. Only
 69 ! numbers for central PDF sets are allowed. Can be a list;
 70 ! PDF sets beyond the first are included via reweighting.
 71 #***********************************************************************
 72 # Include the NLO Monte Carlo subtr. terms for the following parton *
 73 # shower (HERWIG6 | HERWIGPP | PYTHIA6Q | PYTHIA6PT | PYTHIA8) *
 74 # WARNING: PYTHIA6PT works only for processes without FSR!!!! *
 75 #***********************************************************************
 76 HERWIG6 = parton_shower
 77 1.0 = shower_scale_factor ! multiply default shower starting
 78 ! scale by this factor
 79 #***********************************************************************
 80 # Renormalization and factorization scales *
 81 # (Default functional form for the non-fixed scales is the sum of *
 82 # the transverse masses divided by two of all final state particles *
 83 # and partons. This can be changed in SubProcesses/set_scales.f or via *
 84 # dynamical_scale_choice option) *
 85 #***********************************************************************
 86 True = fixed_ren_scale ! if .true. use fixed ren scale
 87 True = fixed_fac_scale ! if .true. use fixed fac scale
 88 91.1876 = mur_ref_fixed ! fixed ren reference scale
 89 91.1876 = muf_ref_fixed ! fixed fact reference scale
 90 -1 = dynamical_scale_choice ! Choose one (or more) of the predefined
 91 ! dynamical choices. Can be a list; scale choices beyond the
 92 ! first are included via reweighting
 93 1.0 = mur_over_ref ! ratio of current muR over reference muR
 94 1.0 = muf_over_ref ! ratio of current muF over reference muF
 95
 96 #***********************************************************************
 97 # Reweight variables for scale dependence and PDF uncertainty *
 98 #***********************************************************************
 99 1.0, 2.0, 0.5 = rw_rscale ! muR factors to be included by reweighting
100 1.0, 2.0, 0.5 = rw_fscale ! muF factors to be included by reweighting
101 True = reweight_scale ! Reweight to get scale variation using the
102 ! rw_rscale and rw_fscale factors. Should be a list of
103 ! booleans of equal length to dynamical_scale_choice to
104 ! specify for which choice to include scale dependence.
105 False = reweight_pdf ! Reweight to get PDF uncertainty. Should be a
106 ! list booleans of equal length to lhaid to specify for
107 ! which PDF set to include the uncertainties.
108 #***********************************************************************
109 # Store reweight information in the LHE file for off-line model- *
110 # parameter reweighting at NLO+PS accuracy *
111 #***********************************************************************
112 False = store_rwgt_info ! Store info for reweighting in LHE file
113 #***********************************************************************
114 # ickkw parameter: *
115 # 0: No merging *
116 # 3: FxFx Merging - WARNING! Applies merging only at the hard-event *
117 # level. After showering an MLM-type merging should be applied as *
118 # well. See http://amcatnlo.cern.ch/FxFx_merging.htm for details. *
119 # 4: UNLOPS merging (with pythia8 only). No interface from within *
120 # MG5_aMC available, but available in Pythia8. *
121 # -1: NNLL+NLO jet-veto computation. See arxiv:1412.8408 [hep-ph]. *
122 #***********************************************************************
123 0 = ickkw
124 #***********************************************************************
125 #
126 #***********************************************************************
127 # BW cutoff (M+/-bwcutoff*Gamma). Determines which resonances are *
128 # written in the LHE event file *
129 #***********************************************************************
130 15.0 = bwcutoff
131 #***********************************************************************
132 # Cuts on the jets. Jet clustering is performed by FastJet. *
133 # - If gamma_is_j, photons are also clustered with jets. *
134 # Otherwise, they will be treated as tagged particles and photon *
135 # isolation will be applied. Note that photons in the real emission *
136 # will always be clustered with QCD partons. *
137 # - When matching to a parton shower, these generation cuts should be *
138 # considerably softer than the analysis cuts. *
139 # - More specific cuts can be specified in SubProcesses/cuts.f *
140 #***********************************************************************
141 1.0 = jetalgo ! FastJet jet algorithm (1=kT, 0=C/A, -1=anti-kT)
142 0.7 = jetradius ! The radius parameter for the jet algorithm
143 10.0 = ptj ! Min jet transverse momentum
144 -1.0 = etaj ! Max jet abs(pseudo-rap) (a value .lt.0 means no cut)
145 False = gamma_is_j ! Wether to cluster photons as jets or not
146 #***********************************************************************
147 # Cuts on the charged leptons (e+, e-, mu+, mu-, tau+ and tau-) *
148 # More specific cuts can be specified in SubProcesses/cuts.f *
149 #***********************************************************************
150 0.0 = ptl ! Min lepton transverse momentum
151 -1.0 = etal ! Max lepton abs(pseudo-rap) (a value .lt.0 means no cut)
152 0.0 = drll ! Min distance between opposite sign lepton pairs
153 0.0 = drll_sf ! Min distance between opp. sign same-flavor lepton pairs
154 0.0 = mll ! Min inv. mass of all opposite sign lepton pairs
155 30.0 = mll_sf ! Min inv. mass of all opp. sign same-flavor lepton pairs
156 #***********************************************************************
157 # Fermion-photon recombination parameters *
158 # If Rphreco=0, no recombination is performed *
159 #***********************************************************************
160 0.1 = rphreco ! Minimum fermion-photon distance for recombination
161 -1.0 = etaphreco ! Maximum abs(pseudo-rap) for photons to be recombined (a value .lt.0 means no cut)
162 False = lepphreco ! Recombine photons and leptons together
163 False = quarkphreco ! Recombine photons and quarks together
164 #***********************************************************************
165 # Photon-isolation cuts, according to hep-ph/9801442 *
166 # Not applied if gamma_is_j *
167 # When ptgmin=0, all the other parameters are ignored *
168 # More specific cuts can be specified in SubProcesses/cuts.f *
169 #***********************************************************************
170 0.0 = ptgmin ! Min photon transverse momentum
171 -1.0 = etagamma ! Max photon abs(pseudo-rap)
172 0.4 = r0gamma ! Radius of isolation code
173 1.0 = xn ! n parameter of eq.(3.4) in hep-ph/9801442
174 1.0 = epsgamma ! epsilon_gamma parameter of eq.(3.4) in hep-ph/9801442
175 True = isoem ! isolate photons from EM energy (photons and leptons)
176 #***********************************************************************
177 # Cuts associated to MASSIVE particles identified by their PDG codes. *
178 # All cuts are applied to both particles and anti-particles, so use *
179 # POSITIVE PDG CODES only. Example of the syntax is {6 : 100} or *
180 # {6:100, 25:200} for multiple particles *
181 #***********************************************************************
182 {} = pt_min_pdg ! Min pT for a massive particle
183 {} = pt_max_pdg ! Max pT for a massive particle
184 {} = mxx_min_pdg ! inv. mass for any pair of (anti)particles
185 #***********************************************************************
186 # Use PineAPPL to generate PDF-independent fast-interpolation grid *
187 # (https://zenodo.org/record/3992765#.X2EWy5MzbVo) *
188 #***********************************************************************
189 False = pineappl ! PineAPPL switch
190 #***********************************************************************

Question information

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

Hi,

The fact that you have the agreement at tree level, let me think that this is not an alpha_s issue (but I can be wrong).
You can technically choose the functional form of the scale via the run_card, the value at MZ will be the one used within your PDF set.

Are you using MadSTR? And which of the substraction scheme did you use?
The question is how are you handling the top quark resonance present in the real computation?
(Question is valid for both MG5 run and FFL).

Cheers,

Olivier

Revision history for this message
he (dddhe) said :
#2

Dear professor
   Can we manually fix the value of alpha_s by modifying the source code when using the PDF?

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

Hi,

> Can we manually fix the value of alpha_s by modifying the source code when using the PDF?

Sure this should be possible if you hack the code but the hack will depend of the PDF (and of the version of the lhapdf code that you use)

I guess that in your case you have to edit Source/PDF/pdfwrap.f and change the following lines:

      if (pdlabel .eq. 'cteq6_m') then
      asmz=0.118d0
      Call SetCtq6(1)
      elseif (pdlabel .eq. 'cteq6_d') then
      asmz=0.118d0
      Call SetCtq6(2)
      elseif (pdlabel .eq. 'cteq6_l') then
      asmz=0.118d0
      Call SetCtq6(3)
      elseif (pdlabel .eq. 'cteq6l1') then
      asmz=0.130d0
      nloop=1
      Call SetCtq6(4)

Now I have never done it, so I can not guarantee if it will work or not.
Obviously this will not change the running of the strong coupling within the PDF.
So you will get an inconsistency here (but this is likely what you are looking for).

Cheers,

Olivier

Revision history for this message
he (dddhe) said :
#4

Thank you professor, I will try it.