CKKW(L) merging with MG5aMC_PY8_interface

Asked by Michael Pitt

Hello

I try to run MG5 (v2.6.3.2) to simulate multijet events.
I define for simplicity qq->qq+jets production, and I run MG5 simulation using:

./bin/mg5_aMC jobOption.dat

where the jobOption.dat have next lines:

# Set up initial parameters
define j = g u u~
generate u u~ > u u~ @1
add process u u~ > u u~ j @2
add process u u~ > u u~ j j @3
output MultiJet_LO
launch
shower=Pythia8
detector=Delphes
analysis=ExRoot
# Modify run_card.dat
set nevents 10000 # number of unweighted events requested
set lhaid 280400 # using NNPDF3.0 at NLO PDFset from ATLAS
set ickkw 0 # 0 no matching, 1 MLM
set xqcut 0
set ktdurham 50 # Turn on to activate CKKW(L) merging with Pythia8
set ptj 50 # minimum pt for the jets
set drjj 0.4 # min distance between jets
set htjmin 1000 # minimum jet HT=Sum(jet pt) in GeV
set sys_pdf none # Dont run pdf systematics
set use_syst False # Dinable systematics studies
# Modify pythia8_card.dat (Here we introduce CKKW(L) merging instead of MLM)
set JetMatching:merge off # switch off MLM matching
set Merging:doKTMerging on # kT scale for merging shower products into jets
set Merging:nJetMax 2 # Maximal number of additional jets in the matrix element
set Merging:Process pp>jj # The string specifying the hard core process
set Merging:TMS 50 # The value of the merging scale
set Merging:Dparameter 0.4 # Definition of longitudinally invariant kT separation
set Merging:nQuarksMerge 4 # which quarks flavours are considered additional partons
done

The I end up with "Segmentation fault" from pythia8 run.

The reason that I see is :

Line461 of MG5aMC_PY8_interface.cc resets process string:
pythia.settings.word("Merging:process","guess");

when I run pythia8::next() command
it calls Merging::mergeProcess(process)
which calls MergingHooks():initOnProcess(process,particleDataPtr);
which tries to access the residual process by finding string after ">", and once it fails (since the sting is "guess") the program quit with segmentation fault error

if I comment L461, CKKW merging is executed w/o errors.

Is it the right thing to do, to keep the process name as it is or I should set up CKKW merging options in pythia card differently?

thanks in advance,
Michael

Question information

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

Hi Michael,

I do not think that your process definition is physical and this is likely the reason why the "guess" does not work.
In principle for CKKW-L, you have to define yourself such parameter, pythia8 author have allow us to just put guess
and they then use the mg5amc process definition to automatically find what is the correct syntax for this.

Since this part is managed by PY8 author, I can not really comment/fix the issue.
I can only comment on the physics where it does not make any sense to me to specify "up" quark for the process
but allow ALL (gluon and quark) flavour for the radiation.

Cheers,

Olivier

Revision history for this message
Michael Pitt (mpitt82) said :
#2

Hi Olivier

thank you for your reply.
I encounter the same error also running "p p > j j" process, while for "p p > z" all works fine (the \guess\ options works in that case).

So I not sure what is going wrong:
1. I set up JO incorrectly (I have the same error with pp>jj, just with uubar it runs much much faster), then the question is how to set up multi-jet processes correctly (multi-Jet with CKKWmerging using MG5aMC_PY8)
2. "guess" option is not applicable for multi-jet processes. While for EW+jets the option guess works fine, for multi-jet process one should state "pp>jj" explicitly.
It looks like the option (2) is not available with MG5aMC_PY8_interface.

regards,
Michael

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

Hi,

Looks like the py8 option for guess is failing for dijet production. I will assign this thread to a PY8 author, such that he is notified of such issue (he typically does not reply to MG5aMC thread so do not expect action from him)

Note that if you specify the "Merging:process" directly in the py8 card, then MG5aMC will not set that option to guess and it should go trough.

Cheers,

Olivier

Can you help with this problem?

Provide an answer of your own, or ask Michael Pitt for more information if necessary.

To post a message you must log in.