Off-shell particle listed in lhe file

Asked by Matthew Park

I am generating the process:

p p > t t~ h, (t > b w+, w+ > mu+ vm), (t~ > b~ w-, w- > mu- vm~), (h > z z > mu+ mu- mu+ mu-)

from the higgs decay, I expect either: (1) one real z, one virtual z, or (2) two virtual z's.

When I look into the unweighted_events.lhe file:

Many of the entries only list one z with on-shell mass, which seems to be consistent with (1).
Some other entries have neither z's appearing, which seems to be explained by (2).

But in some entries, I get both z's listed, witch doesn't seem to be explained by either (1) or (2).
Also, at least one of the z's that appear in each entry have a mass that is much lower than MZ.

My understanding is that MadGraph treats them as on-shell because their mass is within the MZ +/- bwcutoff*WZ range.
But when I have MZ = 9.118800e+01, bwcutoff = 15, WZ = 2.441404e+00, and the calculated range still doesn't include the z's mass in the third scenario.

An explanation would be greatly appreciated!

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
Rikkert Frederix Edit question
Solved by:
Rikkert Frederix
Solved:
Last query:
Last reply:

This question was reopened

Revision history for this message
Rikkert Frederix (frederix) said :
#1

Dear Matthew,

I'm not sure I understand your question and what you mean by 'real' and 'virtual' Z-bosons. If the Z is written in the event-file it doesn't mean that that Z-boson is a real Z. Similarly in for the 'virtual' Z boson.

For bwcutoff=15 I can easily have two lepton pairs with invariant masses around 60GeV, compatible with a 125GeV mass Higgs boson, which means that the code writes two intermediate Z-bosons in the event file.

Best regards,
Rikkert

Revision history for this message
Matthew Park (park-taehyoun) said :
#2

Thanks Rikkert Frederix, that solved my question.

Revision history for this message
Matthew Park (park-taehyoun) said :
#3

Dear Rikkert,

Thank you for your answer.

First, sorry for the confusion with the "real" and "virtual" particles. That was meaningless.

From what I understand, Two things - (1) MZ +- bwcutoff*WZ = 91 +- 37 GeV approximately, and (2) 60 GeV is within this range - mean that two Z bosons of masses 60 GeV can be listed as on shell.

If this is not a correct interpretation of your answer, please tell me where I am mistaken.

If it is, I still have a difficulty with the listing/omission of the Z bosons in the list.
Here is one event that troubles me:
1. The combined mass of the four leptons add up to 125 GeV, which is consistent with the mass of Higgs.
2. Both Z's are listed, which may happen as long as both masses are within 91 +- 37 GeV range.
3*. One Z has around 90 GeV, while the other has around 15 GeV of invariant mass. Surely, the 15 GeV mass lies outisde the range? Why is it listed?

Thank you for your time,

Matthew

Revision history for this message
Rikkert Frederix (frederix) said :
#4

Hi Matthew,

That's indeed a bit surprising. Can you attach here the exact proc_card, param_card and run_card that you used? I'll try to reproduce your results.

Best,
Rikkert

Revision history for this message
Matthew Park (park-taehyoun) said :
#5

Dear Rikkert,

Here is the DropBox link to proc_card.dat, run_card.dat, and unweighted_events.lhe that I obtained from generating the events (I couldn't figure out a way to attach files here). I hope it works.

https://www.dropbox.com/sh/dx0hgotiupytr8g/AABIVabCzZSPnfZpFrw_ow-ea?dl=0

I don't recall making changes to these cards: they should be the same as the default values.
The exact syntax used to generate the events is the one I posted in the first question.

Thank you,

Matthew

Revision history for this message
Best Rikkert Frederix (frederix) said :
#6

Dear Matthew,

I think a patch would be to replace in the Template/LO/SubProcess/myamp.f code the following:

 c Start loop over propagators
       do i=-1,-(nexternal-3),-1
          onbw(i) = .false.
          if (iforest(1,i,iconfig) .eq. 1) tsgn=-1d0

by

 c Start loop over propagators
       onbw(:) = .false.
       do i=-1,-(nexternal-3),-1
          if (iforest(1,i,iconfig) .eq. 1) tsgn=-1d0

And delete the next three 'return' commands in the same file, i.e. lines 216, 255 and 272.

Please let me know if that works.

best,
Rikkert

Revision history for this message
Matthew Park (park-taehyoun) said :
#7

Dear Rikkert,

It worked! All of the on-shell Z masses (that I looked at so far) lie within the range.

Also, here is what I did alternatively:
I thought the cause of the problem might be the syntax (h > z z > mu+ mu- mu+ mu-), so I tried to avoid it.
0. myamp.f was not changed.
1. generate p p > t t~ h, (t > b w+, w+ > mu+ vm), (t~ > b~ w-, w- > mu- vm~), (h > z mu+ mu-, z > mu+ mu-).
(This would include only the subprocesses in which at least one of the Z's are on-shell)
2. add process p p > t t~ h, (t > b w+, w+ > mu+ vm), (t~ > b~ w-, w- > mu- vm~), (h > mu+ mu- mu+ mu-).
(This would add the feynman diagrams in which both Z's are off-shell)
3. output, launch, etc.
For this method as well, all of the of the on-shell Z masses lie within the range.
I will have to check if this is gauge/Lorentz invariant.

But anyhow, thank you so much for your help! This would have been impossible on my own.

Best,

Matthew

Revision history for this message
Matthew Park (park-taehyoun) said :
#8

Thanks Rikkert Frederix, that solved my question.