Question about zero cross section error with dim6top_LO_UFO model

Asked by Kelci Mohrman on 2021-03-20

Hello MG experts,

I have a question about an error I have run into while using the dim6top_LO_UFO model. When generating ttW samples, we noticed that the cross section did not seem to depend on the value of the Wilson coefficient cptb, though we expected to see dependence on this coefficient. To investigate this further, we tried to generate just the quadratic contribution from cptb (using DIM6==1 and setting only cptb to a non-zero value). The process is:

define p = p b b~
define w = w+ w-
generate p p > t t~ w FCNC=0 DIM6==1

However, when we tried to run this, we saw this error about 0 cross section:

Survey return zero cross section.
   Typical reasons are the following:
   1) A massive s-channel particle has a width set to zero.
   2) The pdf are zero for at least one of the initial state particles
      or you are using maxjetflavor=4 for initial state b:s.
   3) The cuts are too strong.
   Please check/correct your param_card and/or your run_card.
Zero result detected: See

This was surprising to us, as we expected a non-zero contribution. When we tried the same setup except with ttZ instead of ttW, the process ran fine and gave a non-zero cross section. We also tried ttW with just the cpQ3 coefficient set to a non-zero value (we tried this coefficient because it seems to have the same ttW diagrams as cptb), and this ran fine and gave a non-zero cross section.

I am wondering if you could help me to understand what might be causing the 0 cross section error for ttW cptb? Maybe I am just missing some difference in how ttW and ttZ should be set up and run?

In case it is relevant, I am using MG version 2_9_2.

Thank you! - Kelci

Question information

English Edit question
MadGraph5_aMC@NLO Edit question
No assignee Edit question
Last query:
Last reply:


I do not reproduce your issue.
I have use a restriction model Where all operator are at zero but cptb (set to one)
then I run
import model dim6top_LO_UFO-cptb
define p = p b b~
define w = w+ w-
generate p p > t t~ w FCNC=0 DIM6==1
launch -f

and I got
INFO: #***************************************************************************
# original cross-section: 5.10796776289452e-10
# scale variation: +3.41% -3.36%
# central scheme variation: +4.46% - 0%
# PDF variation: +4.05% -4.05%
# dynamical scheme # 1 : 5.2013e-10 +3.32% -3.31% # \sum ET
# dynamical scheme # 2 : 5.15998e-10 +3.41% -3.37% # \sum\sqrt{m^2+pt^2}
# dynamical scheme # 3 : 5.33577e-10 +3.27% -3.29% # 0.5 \sum\sqrt{m^2+pt^2}
# dynamical scheme # 4 : 5.10797e-10 +3.41% -3.36% # \sqrt{\hat s}



Kelci Mohrman (kmohrman) said : #2

Hi Olivier,

Thank you very much for looking into this! I double checked what I was running, and I think the difference between what you are getting and what I am getting may be due to the fact that I am setting MB to 0 in the param card.

I am running "./bin/mg5_aMC", where the ttW_test script is pasted at the end of this message [1]. I just tried removing the "set param_card MB 0.0" line, and also saw a non-zero cross section, in agreement with the cross section you quoted above.

However, I do not understand why this is happening. I'm wondering if you could help me to understand why setting the b mass to 0 would cause the contribution from ttW cptb diagrams to be 0 (and why it only seems to affect ttW cptb, and not e.g. ttZ cptb or ttW cpQ3)?

Thanks again! - Kelci

[1] The script I am using run MG:

import model dim6top_LO_UFO
define p = p b b~
define j = p
define w = w+ w-
generate p p > t t~ w FCNC=0 DIM6==1
output output_files_from_mg_runs/tmp_cpy
set run_card nevents 100
set run_card iseed 1
set run_card ebeam1 6500
set run_card ebeam2 6500
set param_card mass 6 172.5
set param_card yukawa 6 172.5
set param_card decay 6 auto
set param_card MB 0.0
set param_card ymb 0.0
set param_card ctW 0.000000
set param_card ctp 0.000000
set param_card cpQM 0.000000
set param_card cte2 0.000000
set param_card cte3 0.000000
set param_card cte1 0.000000
set param_card ctl1 0.000000
set param_card ctl3 0.000000
set param_card ctl2 0.000000
set param_card cQe3 0.000000
set param_card cQe2 0.000000
set param_card cQe1 0.000000
set param_card ctZ 0.000000
set param_card cQlM2 0.000000
set param_card cQlM3 0.000000
set param_card cQlM1 0.000000
set param_card cQl31 0.000000
set param_card cQl32 0.000000
set param_card cQl33 0.000000
set param_card ctG 0.000000
set param_card ctlT2 0.000000
set param_card ctlT3 0.000000
set param_card ctlT1 0.000000
set param_card cbW 0.000000
set param_card cpQ3 0.000000
set param_card cptb 1.000000
set param_card cpt 0.000000
set param_card ctlS3 0.000000
set param_card ctlS2 0.000000
set param_card ctlS1 0.000000

Launchpad Janitor (janitor) said : #3

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

Setting parameter to zero in the param_card is typically a not good idea.
Since you typically allow the code to do a lot of computation and then multiply it by zero.
This is clear for coupling (and you should have warning about that in 2.9.x) but this is also the case for masses where the code will slow down by a factor of two compare to setting the mass to zero at the model level.

Additionally if you set too many operator to zero you can confuse the phase-space integrator since the importance sampling of madevent:hep-ph/0208156 (that can now be change via 2102.00773) and have all the prefactor of the phase-space integrator equal to zero which can indeed then result in a zero cross-section. This is actually the real reason of the warning since the new matrix-element optimizer (also introduced 2102.00773) remove at run-time all the call corresponding to vanishing amplitude.
But the multi-channel strategy is not modified.