Setting a custom per-event renormalization/factorization scale

Asked by Jay Sandesara


I am trying to generate multi-leg merged ggZZ+0,1 jet sample using a custom reno/fact scale of m4l/2. For this, I edit the setscales.f file in the SubProcesses directory.

Now, for the LO process gg->4l, adding the following piece of code to setscales.f seems to work (I checked by comparing with dividing the \hat{s} formula in the same file by 2d0 and the results were identical):

         real*8 ptmp(0:3)
         do i=3,nexternal
            ptmp = ptmp+P(:,i)

Of course the trouble is that for the 1 jet process we have jets (both quark and gluon initiated) so I need to add a filter so the code doesnt include these jets in the m4l computation as it would for a \hat{s} computation. I gather from the setcuts.f file that for this I would need to add a 'if' statement that looks something like this:

if(abs(idup(i,1,maxsproc)) > 6 .and. idup(i,1,maxsproc) .ne. 21)

where idup is initialized in the setscales.f as such: integer idup(nexternal,maxproc,maxsproc) but I am not sure what the maxsproc stands for, for instance.

Can you please help? How should I add this condition so it would work for multi-jet events as well and set the reno/fact scale to m4l/2?

Jay Sandesara

Question information

English Edit question
MadGraph5_aMC@NLO Edit question
No assignee Edit question
Solved by:
Olivier Mattelaer
Last query:
Last reply:
Revision history for this message
Best Olivier Mattelaer (olivier-mattelaer) said :


The easiest solution here is if you put the jet as the final particle since then you can simply do
do i=3, 7

For idup, the reason of having such complex structure is because, we do not integrate one flavour at the time but multiple flavour at the time. So the pdg information is actually not unique but can take multiple value.
This is why you can not put an invariant mass on same flavour



Revision history for this message
Jay Sandesara (jaysandesara) said :

Thanks Olivier Mattelaer, that solved my question.