# Doubts regarding updating a propagator in UFO

Hello,

I have tried to modify the form of the fermionic propagator in the propagator.py file and the compilation is done in Madgraph without any error.

1. But, there is a compilation error after using absolute within the argument of sqrt appearing in the form of the propagator to avoid complex outputs. I have used the "abs(x)" command to get the absolute value of x. Is there any other specific way to get an absolute value in general in Madgraph?

2. Additionally, is there any chance of getting any unwanted zero or infinity from the form of fermionic propagator itself (mentioned below) resulting in "Error in matrix element" from Madgraph?

fermionic propagator form : \slashed{p} + m / ((p^2 - m^2) + i * b(p)) where b(p) is ensured to be real over any value of momentum

Thanks,

Rohan

## Question information

- Language:
- English Edit question

- Status:
- Answered

- Assignee:
- No assignee Edit question

- Last query:
- 2020-09-11

- Last reply:
- 2020-09-11

Hi,

> 1. But, there is a compilation error after using absolute within the argument of sqrt appearing in the form of the propagator to avoid complex outputs. I have used the "abs(x)" command to get the absolute value of x. Is there any other specific way to get an absolute value in general in Madgraph?

This is technically an ALOHA issue. I will try to add it but it would be nice to have your UFO model in order to see what you try to do and create test for the implementation close to the real example.

> 2. Additionally, is there any chance of getting any unwanted zero or infinity from the form of fermionic propagator itself (mentioned below) resulting in "Error in matrix element" from Madgraph?

This error is related to too big matrix-element and/or division by zero or other source of nan.

Cheers,

Olivier

> On 8 Sep 2020, at 12:50, ROHAN PRAMANICK <email address hidden> wrote:

>

> New question #692804 on MadGraph5_aMC@NLO:

> https:/

>

> Hello,

>

> I have tried to modify the form of the fermionic propagator in the propagator.py file and the compilation is done in Madgraph without any error.

>

> 1. But, there is a compilation error after using absolute within the argument of sqrt appearing in the form of the propagator to avoid complex outputs. I have used the "abs(x)" command to get the absolute value of x. Is there any other specific way to get an absolute value in general in Madgraph?

>

> 2. Additionally, is there any chance of getting any unwanted zero or infinity from the form of fermionic propagator itself (mentioned below) resulting in "Error in matrix element" from Madgraph?

>

> fermionic propagator form : \slashed{p} + m / ((p^2 - m^2) + i * b(p)) where b(p) is ensured to be real over any value of momentum

>

>

> Thanks,

> Rohan

>

> --

> You received this question notification because you are an answer

> contact for MadGraph5_aMC@NLO.

Hi Olivier,

Thanks for the reply.

I realized that only using absolute value will not be enough in this case. Instead, it would be very helpful if I can use an exact form of Heavyside Theta function in the form of the propagator in the propagators.py file. I have used the functional approximation of the theta function which unfortunately ended up having same matrix element error. Is there any way to implement the theta function analytically without any numerical approximation?

If you want, I can share the UFO.

Thanks,

Rohan

You can define it in functions.py

heavyside = Function(name= 'heavyside',

Cheers,

Olivier

> On 11 Sep 2020, at 20:45, Rohan Pramanick <email address hidden> wrote:

>

> Heavyside Theta function

## Can you help with this problem?

Provide an answer of your own, or ask Rohan Pramanick for more information if necessary.