issues with modified vector propagators

Bug #1694325 reported by Salvator Lombardo
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MadGraph5_aMC@NLO
Fix Released
Undecided
Unassigned

Bug Description

I modified the Z propagator to one of the default custom propagators in MG5_v2.5.5 but received the error
"NameError : name 'Error' is not defined"
upon generating output. The debug file is attached.

particles.py:

Z = Particle(pdg_code = 23,
             name = 'Z',
             antiname = 'Z',
             spin = 3,
             color = 1,
             mass = Param.MZ,
             width = Param.WZ,
             propagator = Prop.V1,
             texname = 'Z',
             antitexname = 'Z',
             charge = 0,
             GhostNumber = 0,
             LeptonNumber = 0,
             Y = 0)

V1 is defined in propagators.py:

denominator = "P('mu', id) * P('mu', id) - Mass(id) * Mass(id) + complex(0,1) * Mass(id) * Width(id)"
V1 = Propagator(name = "V1",
                numerator = "complex(0,1) * (-1 * Metric(1, 2) + Metric(1,'mu')* P('mu', id) * P(2, id) / Mass(id)**2 ",
                denominator = denominator
               )

I also have a separate but similar issue after modifying the Higgs propagator to the default scalar propagator in propagators.py. Madgraph now generates output fine for the scalar propagator but gives different results from the default propagator.

H = Particle(pdg_code = 25,
             name = 'H',
             antiname = 'H',
             spin = 1,
             color = 1,
             mass = Param.MH,
             width = Param.WH,
             propagator = Prop.S,
             texname = 'H',
             antitexname = 'H',
             charge = 0,
             GhostNumber = 0,
             LeptonNumber = 0,
             Y = 0)

I checked the SM result for WW scattering (mWW > 1 TeV) with the default propagator (no specified propagator in the py file) vs. the default custom scalar propagator and get cross sections that are different by ~20%.

Revision history for this message
Salvator Lombardo (sallombardo) wrote :
description: updated
description: updated
Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi,

This is a problem in FR since the file propagators.py does not fit with the official convention for the propagators.
For the official convention please take a look at the ALOHA section of the following paper: arXiv:1308.1668

Concerning the Higgs propagator, if you want to have the normal Higgs propagator, you have to define the scalar propagator as
S = Propagator(name = "S",
               numerator = "1",
               denominator = denominator
               )

The conventional complex number is automatically added by ALOHA.

Cheers,

Olivier

Changed in mg5amcnlo:
status: New → Invalid
Revision history for this message
Salvator Lombardo (sallombardo) wrote :

Thank you, this resolved my issue with the scalar propagator.

However, there is still an issue with generating an output with the custom vector propagator. I used the exact same form of the vector propagator arXiv:1308.1668 for the W & Z boson but still receive an error upon generating output:
"Exception : WRONG CONTRACTION OF LORENTZ OBJECT for routine VVV2PV3_2: [2, 'I2', 'I2']"
The debug file is attached.

V3 = Propagator(name = "V3",
                numerator = "-1 * Metric(1, 2)",
                denominator = "P(-1,id)**2"
                )

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi,

This I do not reproduce.

I have put your propagator in my model, and generate the same process as you.
and I can see a routine VVV1PV3_3.f
I do not have any VVV2PV3_3.f

So I guess that you add a VVV2 vertex as well and that the problem is inside that new interaction.

Cheers,

Olivier

Revision history for this message
Salvator Lombardo (sallombardo) wrote :

Hi,

I did not add any vertices to the UFO file. I am using the SM UFO file from FeynRules. I tried making the exact same change (using the custom vector propagator in arXiv:1308.1668) to the model files in the distributed models directory and get similar errors. For example, the EWdim6 and nmssm also give me similar errors:
"WRONG CONTRACTION OF LORENTZ OBJECT for routine VVV1PV2_2: [2, 'I2', 'I2']'.

The attached debug file is from the nmssm model file.

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote : Re: [Bug 1694325] Re: issues with modified vector propagators

Hi,

Can you attach your model?

Cheers,

Olivier

> On 31 May 2017, at 20:35, Salvator Lombardo <email address hidden> wrote:
>
> Hi,
>
> I did not add any vertices to the UFO file. I am using the SM UFO file from FeynRules. I tried making the exact same change (using the custom vector propagator in arXiv:1308.1668) to the model files in the distributed models directory and get similar errors. For example, the EWdim6 and nmssm also give me similar errors:
> "WRONG CONTRACTION OF LORENTZ OBJECT for routine VVV1PV2_2: [2, 'I2', 'I2']'.
>
> The attached debug file is from the nmssm model file.
>
> ** Attachment added: "MG5_debug"
> https://bugs.launchpad.net/mg5amcnlo/+bug/1694325/+attachment/4886865/+files/MG5_debug
>
> --
> You received this bug notification because you are subscribed to
> MadGraph5_aMC@NLO.
> https://bugs.launchpad.net/bugs/1694325
>
> Title:
> issues with modified vector propagators
>
> Status in MadGraph5_aMC@NLO:
> Invalid
>
> Bug description:
> I modified the Z propagator to one of the default custom propagators in MG5_v2.5.5 but received the error
> "NameError : name 'Error' is not defined"
> upon generating output. The debug file is attached.
>
> particles.py:
>
> Z = Particle(pdg_code = 23,
> name = 'Z',
> antiname = 'Z',
> spin = 3,
> color = 1,
> mass = Param.MZ,
> width = Param.WZ,
> propagator = Prop.V1,
> texname = 'Z',
> antitexname = 'Z',
> charge = 0,
> GhostNumber = 0,
> LeptonNumber = 0,
> Y = 0)
>
> V1 is defined in propagators.py:
>
> denominator = "P('mu', id) * P('mu', id) - Mass(id) * Mass(id) + complex(0,1) * Mass(id) * Width(id)"
> V1 = Propagator(name = "V1",
> numerator = "complex(0,1) * (-1 * Metric(1, 2) + Metric(1,'mu')* P('mu', id) * P(2, id) / Mass(id)**2 ",
> denominator = denominator
> )
>
> I also have a separate but similar issue after modifying the Higgs
> propagator to the default scalar propagator in propagators.py.
> Madgraph now generates output fine for the scalar propagator but gives
> different results from the default propagator.
>
> H = Particle(pdg_code = 25,
> name = 'H',
> antiname = 'H',
> spin = 1,
> color = 1,
> mass = Param.MH,
> width = Param.WH,
> propagator = Prop.S,
> texname = 'H',
> antitexname = 'H',
> charge = 0,
> GhostNumber = 0,
> LeptonNumber = 0,
> Y = 0)
>
> I checked the SM result for WW scattering (mWW > 1 TeV) with the
> default propagator (no specified propagator in the py file) vs. the
> default custom scalar propagator and get cross sections that are
> different by ~20%.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/mg5amcnlo/+bug/1694325/+subscriptions

Revision history for this message
Salvator Lombardo (sallombardo) wrote :

Here it is, thanks.

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi,

Thanks a lot for your patience and your precious help.
I have attached a patch which fixes this issue.

Thanks so much,

Olivier

Changed in mg5amcnlo:
status: Invalid → Fix Committed
status: Fix Committed → In Progress
Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Actually a second problem seems to show up.
Will look into it as well.

Cheers,

Olivier

(sorry for the double email)

Revision history for this message
Salvator Lombardo (sallombardo) wrote :

No problem and thanks. I did try the patch, but it did not resolve the issues.

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi,

Here is a new patch with this one, I successfully computed cross-section on my machine.

Thanks for your patience,

Olivier

Changed in mg5amcnlo:
status: In Progress → Fix Committed
Revision history for this message
Salvator Lombardo (sallombardo) wrote :

Thank you so much for helping me. This fixed the issue with the simplest vector propagator. However, once I modify the propagator to one which is slightly more complicated:

V3 = Propagator(name = "V3",
                numerator = "-1 * Metric(1, 2) + Metric(1,-2) * P(-2, id) * P(2, id)",
                denominator = "P(-1,id)**2"
                )

I receive the error "TypeError : 'LexToken' object has no attribute '__getitem__'". I also noticed that I can no longer access the particles mass via Mass(id) in the propagator.

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi,

I spot one problem associated with that propagator but I did not reproduce your crash.
So I'm worry that this is not the patch that you are looking for:

=== modified file 'aloha/create_aloha.py'
--- aloha/create_aloha.py 2017-06-07 15:06:05 +0000
+++ aloha/create_aloha.py 2017-06-11 12:34:41 +0000
@@ -421,7 +421,7 @@
             pos = pos+3
             ltype = data[pos]
             if ltype != 'complex':
- data[pos+1] = re.sub(r'\b(%s)\b' % '|'.join(to_change),
+ data[pos+1] = re.sub(r'\b(?<!-)(%s)\b' % '|'.join(to_change),
                                      lambda x: to_change[x.group()], data[pos+1])

Basically the problem is that the regular expression for changing the "1" index to the correct index was also
Modifying the -1 index.

Cheers,

Olivier

On 11 Jun 2017, at 04:40, Salvator Lombardo <<email address hidden><mailto:<email address hidden>>> wrote:

V3 = Propagator(name = "V3",
               numerator = "-1 * Metric(1, 2) + Metric(1,-2) * P(-2, id) * P(2, id)",
               denominator = "P(-1,id)**2"
               )

Revision history for this message
Salvator Lombardo (sallombardo) wrote :

My issues are resolved. Thanks very much!

Sal

Changed in mg5amcnlo:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.