Fix Helicity Amplitude

Asked by Chang Jung

Dear MG5 team,

I want to fix the helicity amplitude (and make some of the lorentz structure couplings become variable) for heavy scalar decay in the following process :
g g > H1 (Gluon Fusion), H1 > Z Z.
I only want to fix the decay part, but I want to generate loop diagram, so I generate g g > Z Z [QCD] with 2HDM_NLO in MG5_aMC.

LO is simple, just fix the matrix.f.
For NLO part I try to fix :
helas_calls_ampb_1.f and mp_helas_calls_ampb_1.f.

I first try with delete some of the diagrams. But it seems did not work.

May I ask how to? Or can I do this through some package that decay particle, i.e. Madspin?

Thanks a lot!

Best,
Justine

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Chang Jung
Solved:
Last query:
Last reply:

This question was reopened

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

Hi,

I'm confused by your question. Do you want to do it for loop-induced processes (a LO process) or for NLO process?
The first one should be possible, while the second one is not. Such computation is not lorentz invariant and therefore you do not have the pole cancelation between the real and the virtual contribution -- which are computed in different frame--).

Cheers,

Olivier

> On 18 Sep 2017, at 07:58, Chang Jung <email address hidden> wrote:
>
> New question #658192 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/658192
>
> Dear MG5 team,
>
> I want to fix the helicity amplitude (and make some of the lorentz structure couplings become variable) for heavy scalar decay in the following process :
> g g > H1 (Gluon Fusion), H1 > Z Z.
> I only want to fix the decay part, but I want to generate loop diagram, so I generate g g > Z Z [QCD] with 2HDM_NLO in MG5_aMC.
>
> LO is simple, just fix the matrix.f.
> For NLO part I try to fix :
> helas_calls_ampb_1.f and mp_helas_calls_ampb_1.f.
>
> I first try with delete some of the diagrams. But it seems did not work.
>
> May I ask how to? Or can I do this through some package that decay particle, i.e. Madspin?
>
> Thanks a lot!
>
> Best,
> Justine
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#2

Dear Olivier,

Thanks a lot for the reply, I got it.

I will like to run NLO process and change one of the part.
I used generate g g > z z [QCD], to generate loop diagram,
it will give you two kind of diagrams, box diagram, and triangle diagram (with h, H1, H2, H3 as propagator).

Is it possible I fix one of the diagram with on-shell Hi? Only the part controls Hi decay?

Thanks!

Best,
Justine

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

Hi,

> I will like to run NLO process and change one of the part.

As said above, We can not fix Helicity for NLO process.
But again, It looks like you are not describing a NLO process, but a LO process which occurs at one loop.

> Is it possible I fix one of the diagram with on-shell Hi? Only the part
> controls Hi decay?

You can use this syntax:

generate g g > hi > z z [QCD]

Note that this does not force hi to be onshell ! It just selects the diagram where hi is on s-channel.

For the helicity of loop-induced processes, one method is indeed to modify the file helas_calls_ampb_X.f and the quadruple precision equivalent.
But this does not seems the easiest one. I have never did this for loop-induced processes so I'm not 100% sure.
But the easiest is probably to edit the matrixX.f exactly like the tree-level modification.

The only difference would be related to the symetry factor which is not present for loop-induced processes.

Cheers,

Olivier

For tree-level computation, you can check it here:
https://answers.launchpad.net/mg5amcnlo/+faq/2243

> On 18 Sep 2017, at 10:03, Chang Jung <email address hidden> wrote:
>
> Question #658192 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/658192
>
> Status: Answered => Open
>
> Chang Jung is still having a problem:
> Dear Olivier,
>
> Thanks a lot for the reply, I got it.
>
> I will like to run NLO process and change one of the part.
> I used generate g g > z z [QCD], to generate loop diagram,
> it will give you two kind of diagrams, box diagram, and triangle diagram (with h, H1, H2, H3 as propagator).
>
> Is it possible I fix one of the diagram with on-shell Hi? Only the part
> controls Hi decay?
>
> Thanks!
>
> Best,
> Justine
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#4

Dear Olivier,

Thanks a lot for the reply, I got it!

Best,
Justine

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#5

Dear Olivier,

Sorry for another question. I found what I really want to do is give different weight for different helicity amplitude.
i.e.2* <+><-> and 0.5 * <+><+>
I had read the matrixX.f, there are HEL_PICKED and also mentioned about dsample.f.

Can you show me how to do? Thanks!

Best,
Justine

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

Dear Justine,

You should check for the code handling the beam polarisation:
          DO JJ=1,NINCOMING
            IF(POL(JJ).NE.1D0.AND.NHEL(JJ,I).EQ.INT(SIGN(1D0,POL(JJ))))
     $ THEN
              T=T*ABS(POL(JJ))
            ELSE IF(POL(JJ).NE.1D0)THEN
              T=T*(2D0-ABS(POL(JJ)))
            ENDIF
          ENDDO

(which appears at different stage of the matrix.f)
and apply your modification at each of the place where the above code appears.

Cheers,

Olivier

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#7

Dear Olivier,

Thanks a lot for the reply! I got it!

Best,
Justine

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#8

Dear Olivier,

I want to make sure, is the code deal with the initial stat beam polarization?

For what I want to do is applied on final state z, different weight for different helicity amplitude (on g g > Hi >z z [QCD]).

Are there other place I also need to fix?

Thanks!

Best,
Justine

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

Hi,

The code that I copy/paste above is exactly our treatment for the beam polarisation.
That you can choose from the run_card.
If you want to add final state weight on the helicity amplitude, you add some line after the above line at each time those line appears.

>Are there other place I also need to fix?

I think it should be enough, but since I have never done it, It is always possible that I forget something.

Cheers,

Olivier

Revision history for this message
Chang Jung (lovejesus99wwjd) said :
#10

Dear Olivier,

Thanks a lot for the quick reply!
I got it! This solved my question!

Best,
Justine