photoproduction in proton-Lead

Asked by Javier on 2019-10-29

Hello,

I was wondering what is the right way to simulate top photoproduction (ttbar and single-t) in proton-lead collisions.

The idea would be to see the effect of adding FCNC over the cross-section.

I'm adding the full card I'm using below this message.

I am not sure whether using:

update ion_pdf
set nb_proton1 82
set nb_neutron1 125
set nb_proton2 1
set nb_neutron2 0

or

update ion_pdf
set nb_proton1 1
set nb_neutron1 0
set nb_proton2 1
set nb_neutron2 0

Is more correct,

since when using the second one (after multiplying by 208) I recover (same order) for example the pPb -> ttbar XS (not photoproduction) that was observed by CMS in 2016, but not when putting all the nucleons.

That was only a cross-check. But for the case we want (UPC/photoproduction) we should be using the first as it should affect the photon flux.

We think the following lines will ensure for example that photon is emitted elastically from beam 1.

set lpp1 2
set lpp2 1

Any guidance would be appreciated.

What we have seen is that adding all the nucleons like in first option, decreases the XS alot.

Thanks

Javier

------------------------------------------------------------------------------------------------------------------------
------------------------------------------------- CARD---------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------

# ----- Define multi particles -----
define myp = g u d c s b u~ d~ c~ s~ b~
define myt = t t~
define myw = w+ w-

set group_subprocesses False
generate a myp > myt myt

output Single-top_PhotProd_pPb_mypa_Oct29
set automatic_html_opening False

# ----- Launch events -----
launch

analysis = off # Default value for MadAnalysis5: ON.
shower = off # Default value for Pythia8: OFF.
done

# ===== RUN CARD =====
update ion_pdf
set nb_proton1 1
set nb_neutron1 0

set nb_proton2 1
set nb_neutron2 0

set nevents 50000

set lpp1 2
set lpp2 1

set ebeam1 2560
set ebeam2 6500

set run_tag St_PP_pPb
set use_syst False
done

Question information

Language:
English Edit question
Status:
Answered
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Last query:
2019-10-29
Last reply:
2019-12-04

Hi,

1) If you use the heavy ion mode (nb_protron !=1) then the parameter ebeam1 is the energy of the beam (not the energy of the proton/neutron within the heavy ion).
2) lpp=2 is really a photon from a proton. Not a photon from an heavy ion.

I'm not an expert in heavy ion, but from the syntax, I would have expect to provide the elastic component of the full ion.
(which should be possible to extend the current formula to cover).

Your second syntax correspond more to the elastic photon from a proton regardless is the heavy-ion brakes or not. (they might have overlap between the two, I guess). Then I would have expect to re-scale this by 82 (the number of proton) and not by 208 (what is that number?)...

In any case to avoid confusion, I will forbid to use lpp=2 with heavy ion mode for the moment.

Cheers,

Olivier

Javier (jamkoons) said : #2

Dear Olivier,

Thanks for the reply.

Can the photon flux be modeled as in this paper?

https://journals.aps.org/prd/abstract/10.1103/PhysRevD.88.054025

so when it is lpp=2

we could get a photon from a heavy ion.

Which will be different to when the photon comes from the proton.

Another question is if it is correct to express a gamma-proton interaction in pPb as:

---------------------------------------------------------
---------------------------------------------------------
define myp = g u d c s b u~ d~ c~ s~ b~
define myt = t t~
define myw = w+ w-

a myp > myt myw
---------------------------------------------------------
---------------------------------------------------------

Or should one do something like

myp myp > t t~ (via photoproduction)

Which I wouldn't know how to express.

Any help would be appreciated.

Cheers

Javier

Hi,

Not sure what the paper does. Here is a patch to implement the component where the lead is kept intact:
=== modified file 'madgraph/various/banner.py'
--- madgraph/various/banner.py 2019-11-14 22:43:14 +0000
+++ madgraph/various/banner.py 2019-11-21 17:20:58 +0000
@@ -3109,12 +3109,12 @@
             self.get_default('lhaid', log_level=20)

         # if heavy ion mode use for one beam, forbis lpp!=1
- if self['lpp1'] !=1:
- if self['nb_proton1'] != 1 or self['nb_neutron1'] !=0:
- raise InvalidRunCard, "Heavy ion mode is only supported for lpp1=1"
- if self['lpp2'] !=1:
- if self['nb_proton2'] != 1 or self['nb_neutron2'] !=0:
- raise InvalidRunCard, "Heavy ion mode is only supported for lpp1=1"
+ if self['lpp1'] not in [1,2]:
+ if self['nb_proton1'] !=1 or self['nb_neutron1'] !=0:
+ raise InvalidRunCard, "Heavy ion mode is only supported for lpp1=1/2"
+ if self['lpp2'] not in [1,2]:
+ if self['nb_proton2'] !=1 or self['nb_neutron2'] !=0:
+ raise InvalidRunCard, "Heavy ion mode is only supported for lpp2=1/2"
=== modified file 'Template/LO/Source/PDF/PhotonFlux.f'
--- Template/LO/Source/PDF/PhotonFlux.f 2018-04-20 08:02:12 +0000
+++ Template/LO/Source/PDF/PhotonFlux.f 2019-11-21 17:40:59 +0000
@@ -38,19 +38,30 @@

       end

- real*8 function epa_proton(x,q2max)
+ real*8 function epa_proton(x,q2max,beamid)
       integer i
+ integer beamid
       real*8 x,phi_f
       real*8 xin
       real*8 alpha,qz
       real*8 f, qmi,qma, q2max
       real*8 PI
+
+ integer nb_proton(2), nb_neutron(2)
+ common/to_heavyion_pdg/ nb_proton, nb_neutron
+ double precision mass_ion(2)
+ common/to_heavyion_mass/mass_ion
+
       data PI/3.14159265358979323846/
-
       data xin/0.938/ ! proton mass in GeV

       alpha = .0072992701
       qz = 0.71
+
+ if (nb_proton(beamid).ne.1.or.nb_neutron(beamid).ne.0)then
+ xin = mass_ion(beamid)
+ alpha = alpha * nb_proton(beamid)
+ endif

 C // x = omega/E = (E-E')/E
       if (x.lt.1) then

Now I do not think that I will publish such patch seems it seems to me that it is associate to some phase-space integration isssue (you need to probe value of x which are very-very small.
But fixing that will need to assign a student/someone on this (and have a paper out of this)

Here is the script that I was using to test the features (even if it fails with zero result).

import model sm-no_b_mass
generate a a > e+ e-
output
launch
set lhc 204*14
set PbPb
set lpp 2

Note that you might need to play with the factorization scale for such process...

Cheers,

Olivier

> On 21 Nov 2019, at 01:02, Javier <email address hidden> wrote:
>
> Question #685493 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/685493
>
> Javier posted a new comment:
> Dear Olivier,
>
> Thanks for the reply.
>
> Can the photon flux be modeled as in this paper?
>
> https://journals.aps.org/prd/abstract/10.1103/PhysRevD.88.054025
>
> so when it is lpp=2
>
> we could get a photon from a heavy ion.
>
> Which will be different to when the photon comes from the proton.
>
> Another question is if it is correct to express a gamma-proton
> interaction in pPb as:
>
> ---------------------------------------------------------
> ---------------------------------------------------------
> define myp = g u d c s b u~ d~ c~ s~ b~
> define myt = t t~
> define myw = w+ w-
>
> a myp > myt myw
> ---------------------------------------------------------
> ---------------------------------------------------------
>
> Or should one do something like
>
> myp myp > t t~ (via photoproduction)
>
> Which I wouldn't know how to express.
>
> Any help would be appreciated.
>
> Cheers
>
> Javier
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Javier (jamkoons) said : #4

Hello Olivier,

Thanks for the code,

I tried to implement in MG5_aMC_v2_6_7,

But I don't see the lines with "minus" sign preceding, the ones that are supped to be removed from banner.py in your patch.

Once modified banner.py and PhotonFlux.f, is there a general way to recompile all the changes at once?

With zero result, you mean it wont run successfully?

Thanks

Javier

HI,

Just do not apply any patch to banner.py then.

After the patch, you will need to regenerate an output and that code will the be compiled.

> With zero result, you mean it wont run successfully?

It did not in my case at least.
Two potential reasons:
- the phase-space integration is not optimal (certainly true)
- the lead break too easily

Cheers,

Olivier

> On 26 Nov 2019, at 02:03, Javier <email address hidden> wrote:
>
> Question #685493 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/685493
>
> Javier posted a new comment:
> Hello Olivier,
>
> Thanks for the code,
>
> I tried to implement in MG5_aMC_v2_6_7,
>
> But I don't see the lines with "minus" sign preceding, the ones that are
> supped to be removed from banner.py in your patch.
>
> Once modified banner.py and PhotonFlux.f, is there a general way to
> recompile all the changes at once?
>
> With zero result, you mean it wont run successfully?
>
> Thanks
>
> Javier
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

I have push the patch in this branch:;
lp:~maddevelopers/mg5amcnlo/elastic_fromheavyion

I have updated the patch to fix some phase-issue and now I have a non zero result for the following script::

generate a a > t t~
output
launch
set PbPb
set lpp 2
set fixed_scale 500
set ebeam 208*1500

Now it is clear that the systematics module is not behaving in a physical way (but this was expected) and I have no clue if such result is correct or not (pointless to say that the scale choice for the breaking of the lead might be set too high/....)

Cheers,

Olivier

Can you help with this problem?

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

To post a message you must log in.