generate ttwjj with drjj=0

Asked by toodles

Hi,

I am generating ttwjj process with 4FS. In order to deal with the potential divergence, I turn on matching.

However, if I set drjj = 0.1, the resulting cross section is larger and I get more events compared to that if I set drjj = 0.

With matching turned on, it will set drjj = 0 automatically. So whatever I set drjj , the result should be the same, right?

I don't why there is difference and which result should I trust.

Thank you very much!

Looking forward to hearing from you

Ying-Ying

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

> With matching turned on, it will set drjj = 0 automatically. So whatever I set drjj , the result should be the same, right?

that’s correct. The divergency for a given multiplicity will be cut by the xqcut parameter.

Cheers,

Olivier

On 23 Aug 2015, at 03:01, toodles <email address hidden> wrote:

> New question #270691 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Hi,
>
> I am generating ttwjj process with 4FS. In order to deal with the potential divergence, I turn on matching.
>
> However, if I set drjj = 0.1, the resulting cross section is larger and I get more events compared to that if I set drjj = 0.
>
> With matching turned on, it will set drjj = 0 automatically. So whatever I set drjj , the result should be the same, right?
>
> I don't why there is difference and which result should I trust.
>
> Thank you very much!
>
> Looking forward to hearing from you
>
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#2

Hi, Olivier,

I didn't change xqcut. So what caused the difference?

Thanks for your reply

Regards,
Ying-Ying

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

Which difference are you talking about?

Cheers,

Olivier
On 23 Aug 2015, at 08:57, toodles <email address hidden> wrote:

> Question #270691 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Status: Answered => Open
>
> toodles is still having a problem:
> Hi, Olivier,
>
> I didn't change xqcut. So what caused the difference?
>
> Thanks for your reply
>
> Regards,
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#4

Hi, Olivier,

I am now generating ttwjj process. I use madspin to decay tt semileptonically and decay w in order to have same-sign di-leptons.

In order to deal with the divergence, I turn on matching and keep the xqcut to be the default value.

For the first run, I generate events with drjj=0, the cross section I get is 0.01675 and after matching I only get 1724 events out of 100000.

For the second run, I change drjj = 0.1, now the cross section is 0.213 and I get 37592 events out of 100000.

I am thinking Matching will automatically change drjj=0. I should get the same result during these two runs.

However as you can see, the results are different, why?

Regards,

Ying-Ying

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

Dear Ying-ying,

> In order to deal with the divergence, I turn on matching and keep the
> xqcut to be the default value.

which value is this? depending of your version of MG5 and of your exact process definition,
this default value can be different. So I have no idea what it is in your case.
If this is zero then this is obviously quite bad.

> I am thinking Matching will automatically change drjj=0. I should get
> the same result during these two runs.

Couple of question:
1) Did you see in the log: the following “Since icckw>0, We change the value of ‘drjj’ to 0”?
2) what is the statistical error quoted by madgraph? is this under control or is it very large?

Cheers,

Olivier

On 24 Aug 2015, at 03:46, toodles <email address hidden> wrote:

> Question #270691 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Status: Answered => Open
>
> toodles is still having a problem:
> Hi, Olivier,
>
> I am now generating ttwjj process. I use madspin to decay tt
> semileptonically and decay w in order to have same-sign di-leptons.
>
> In order to deal with the divergence, I turn on matching and keep the
> xqcut to be the default value.
>
> For the first run, I generate events with drjj=0, the cross section I
> get is 0.01675 and after matching I only get 1724 events out of 100000.
>
> For the second run, I change drjj = 0.1, now the cross section is
> 0.213 and I get 37592 events out of 100000.
>
> I am thinking Matching will automatically change drjj=0. I should get
> the same result during these two runs.
>
> However as you can see, the results are different, why?
>
> Regards,
>
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#6

Hi, Olivier

I generate p p > t t~ w+ j j for 100TeV collider. The parameter I am using in my run_card is as follows:
***********************************************
       1 = lpp1 ! beam 1 type
        1 = lpp2 ! beam 2 type
     50000 = ebeam1 ! beam 1 total energy in GeV
     50000 = ebeam2 ! beam 2 total energy in GeV
#*********************************************************************
# Beam polarization from -100 (left-handed) to 100 (right-handed) *
#*********************************************************************
        0 = polbeam1 ! beam polarization for beam 1
        0 = polbeam2 ! beam polarization for beam 2
#*********************************************************************
# PDF CHOICE: this automatically fixes also alpha_s and its evol. *
#*********************************************************************
 'nn23lo1' = pdlabel ! PDF set
#*********************************************************************
# Renormalization and factorization scales *
#*********************************************************************
 F = fixed_ren_scale ! if .true. use fixed ren scale
 F = fixed_fac_scale ! if .true. use fixed fac scale
 91.1880 = scale ! fixed ren scale
 91.1880 = dsqrt_q2fact1 ! fixed fact scale for pdf1
 91.1880 = dsqrt_q2fact2 ! fixed fact scale for pdf2
 1 = scalefact ! scale factor for event-by-event scales
#*********************************************************************
# Matching - Warning! ickkw > 1 is still beta
#*********************************************************************
 1 = ickkw ! 0 no matching, 1 MLM, 2 CKKW matching
 1 = highestmult ! for ickkw=2, highest mult group.i
 1 = ktscheme ! for ickkw=1, 1 Durham kT, 2 Pythia pTE
 1 = alpsfact ! scale factor for QCD emission vx
 F = chcluster ! cluster only according to channel diag
 T = pdfwgt ! for ickkw=1, perform pdf reweighting
 5 = asrwgtflavor ! highest quark flavor for a_s reweight
 T = clusinfo ! include clustering tag in output
 2.0 = lhe_version ! Change the way clustering information pass to shower.
#*********************************************************************
#**********************************************************
#
#**********************************************************
# Automatic ptj and mjj cuts if xqcut > 0
# (turn off for VBF and single top processes)
#**********************************************************
   T = auto_ptj_mjj ! Automatic setting of ptj and mjj
#**********************************************************
#
#**********************************
# BW cutoff (M+/-bwcutoff*Gamma)
#**********************************
  15 = bwcutoff ! (M+/-bwcutoff*Gamma)
#**********************************************************
# Apply pt/E/eta/dr/mij cuts on decay products or not
# (note that etmiss/ptll/ptheavy/ht/sorted cuts always apply)
#**********************************************************
   T = cut_decays ! Cut decay products
#*************************************************************
# Number of helicities to sum per event (0 = all helicities)
# 0 gives more stable result, but longer run time (needed for
# long decay chains e.g.).
# Use >=2 if most helicities contribute, e.g. pure QCD.
#*************************************************************
   0 = nhel ! Number of helicities used per event
#*******************
# Standard Cuts
#*******************
#
#*********************************************************************
# Minimum and maximum pt's (for max, -1 means no cut) *
#*********************************************************************
 40 = ptj ! minimum pt for the jets
 40 = ptb ! minimum pt for the b
 10 = pta ! minimum pt for the photons
 10 = ptl ! minimum pt for the charged leptons
  0 = misset ! minimum missing Et (sum of neutrino's momenta)
  0 = ptheavy ! minimum pt for one heavy final state
 1.0 = ptonium ! minimum pt for the quarkonium states
 -1 = ptjmax ! maximum pt for the jets
 -1 = ptbmax ! maximum pt for the b
 -1 = ptamax ! maximum pt for the photons
 -1 = ptlmax ! maximum pt for the charged leptons
 -1 = missetmax ! maximum missing Et (sum of neutrino's momenta)
#*********************************************************************
# Minimum and maximum E's (in the center of mass frame) *
#*********************************************************************
  0 = ej ! minimum E for the jets
  0 = eb ! minimum E for the b
  0 = ea ! minimum E for the photons
  0 = el ! minimum E for the charged leptons
 -1 = ejmax ! maximum E for the jets
 -1 = ebmax ! maximum E for the b
 -1 = eamax ! maximum E for the photons
 -1 = elmax ! maximum E for the charged leptons
#*********************************************************************
# Maximum and minimum absolute rapidity (for max, -1 means no cut) *
#*********************************************************************
   5 = etaj ! max rap for the jets
  -1 = etab ! max rap for the b
 3.5 = etaa ! max rap for the photons
 3.5 = etal ! max rap for the charged leptons
 0.6 = etaonium ! max rap for the quarkonium states
   0 = etajmin ! min rap for the jets
   0 = etabmin ! min rap for the b
   0 = etaamin ! min rap for the photons
   0 = etalmin ! main rap for the charged leptons
#*********************************************************************
# Minimum and maximum DeltaR distance *
#*********************************************************************
 0.1 = drjj ! min distance between jets
 0 = drbb ! min distance between b's
 0 = drll ! min distance between leptons
 0 = draa ! min distance between gammas
 0 = drbj ! min distance between b and jet
 0 = draj ! min distance between gamma and jet
 0 = drjl ! min distance between jet and lepton
 0 = drab ! min distance between gamma and b
 0 = drbl ! min distance between b and lepton
 0 = dral ! min distance between gamma and lepton
****************************************************************************

with other parameters default. So I do have xqcut zero.

If drjj =0, the statistical error quoted by madgraph is:
    Cross-section : 0.9719 +- 0.0007013 pb
     Nb of events : 100000
     Matched Cross-section : 0.01675 +- 0.0004001 pb
     Nb of events after Matching : 1724
if drjj= 0.1, the error is:
    Cross-section : 0.5674 +- 0.0004234 pb
     Nb of events : 100000
     Matched Cross-section : 0.213 +- 0.0008832 pb
     Nb of events after Matching : 37542
And I do see this"Since icckw>0, We change the value of ‘drjj’ to 0 " when I change drjj=0.1

So what is the reason? Thank you very much for your help!

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

Hi,

which version of MG is this? does not looks like the latest one.

Cheers,

Olivier

Revision history for this message
toodles (liyybnu) said :
#8

Hi, Olivier,

I am using MadGraph v5.2.1.2. Is it caused by version?

Regards,
Ying-Ying

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

Dear Ying-ying,

Thanks so much for all your help.

The behaviour on this parameter changed in 2.3.0. This is why I asked for the version number to see if I understand correctly the situation.
Actually neither your version or the latest version is fully satisfactory on that point and I will (obviously) change that.

The behaviour in 2.1.2 is the following:
1) at the python level (the interface) the code check if ickkw>0 and drjj>0, in that case it raise the warning that you see (and nothing else)
2) at the fortran level (the executable) the code check if xqcut >0 and if this is the case set drjj to 0
So indeed in your case you have drjj applied on your sample. This is actually the correct behaviour since with xqcut=0, you are in a cone matching scenario.
The only problem is that the warning message is wrong.

The behaviour in 2.3.2 (the latest version) is actually worse.
1) at the python level (the interface) the code check if ickkw>0 and drjj>0, in that case it raise the warning that you see. In addition the card (in memory) is directly modified to 0.
2) at fortran level it is directly to 0.
3) at pythia level the code probably use the drjj since it was not modified in the cards (written on the disk)

So in the latest version, the drjj is indeed set to zero (but maybe for the pythia level) when you see the warning.

Obviously, I will go back to the 2.1.2 behaviour but with the warning present only if xqcut>0 rather than ickkw>0.

Cheers and thanks,

Olivier

On 24 Aug 2015, at 10:01, toodles <email address hidden> wrote:

> Question #270691 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Status: Answered => Open
>
> toodles is still having a problem:
> Hi, Olivier,
>
> I am using MadGraph v5.2.1.2. Is it caused by version?
>
> Regards,
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#10

Hi, Olivier.

Then if I cut away the events with drjj<0.1, pythia will fill in this phase space, right?

Regards,
Ying-Ying

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

Hi,

Do you run with multiple multiplicity (0+1+2j) or only with two jet multiplicity?
From your description it looks like the second case.

Cheers,

Olivier

On 24 Aug 2015, at 12:31, toodles <email address hidden> wrote:

> Question #270691 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Status: Answered => Open
>
> toodles is still having a problem:
> Hi, Olivier.
>
> Then if I cut away the events with drjj<0.1, pythia will fill in this
> phase space, right?
>
> Regards,
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#12

Hi,

I am running only with two jet multiplicity.

Regards,

Ying-Ying

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

Hi,

>Then if I cut away the events with drjj<0.1, pythia will fill in this phase space, right?

No, if you want this part to be cover correctly you need to add the lower multiplicity sample.
such that pythia can start the shower from a tt~wj sample and generate one additional jet with a very small drjj.
The merging procedure should prevent the double counting. (See here: https://cp3.irmp.ucl.ac.be/projects/madgraph/wiki/IntroMatching)

Pythia "only" add radiation to an event configuration (and potentially veto event ) it will never fill an hole in the phase-space.
(this is why you need another sample --with one less jet multiplicity) for that part of the phase-space)

Cheers,

Olivier

Revision history for this message
toodles (liyybnu) said :
#14

Hi, Olivier

Let me try to understand your point.

If I do like this:

generate p p > t t~ w j @1
add process p p > t t~ w j @ 2

and do matching with drjj=0.1, then pythia will generate additionally
jet with small drjj. In other words, it helps me to fill in the phace space
cuted away by drjj. Am I right?

Regards,
Ying-Ying

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

Hi,

I guess you did a typo, the correct syntax is

> generate p p > t t~ w j @1
> add process p p > t t~ w j j @ 2

> and do matching with drjj=0.1, then pythia will generate additionally
> jet with small drjj. In other words, it helps me to fill in the phace space
> cuted away by drjj. Am I right?

That’s correct. This is called matched/merged generation.
With your setup (xqcut=0) you run the cone MLM matching/merging algorithm.
(the same as alpgen)

Cheers,

Olivier

On 24 Aug 2015, at 13:56, toodles <email address hidden> wrote:

> Question #270691 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/270691
>
> Status: Answered => Open
>
> toodles is still having a problem:
> Hi, Olivier
>
> Let me try to understand your point.
>
> If I do like this:
>
> generate p p > t t~ w j @1
> add process p p > t t~ w j @ 2
>
> and do matching with drjj=0.1, then pythia will generate additionally
> jet with small drjj. In other words, it helps me to fill in the phace space
> cuted away by drjj. Am I right?
>
> Regards,
> Ying-Ying
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
toodles (liyybnu) said :
#16

Hi, Olivier

I got it. Thank you very much!

Cheers,
Ying-Ying

Revision history for this message
toodles (liyybnu) said :
#17

Thanks Olivier Mattelaer, that solved my question.