Elastic/inelastic photon flux

Asked by Tanumoy Mandal

Dear Mattelaer,

I would like to ask you a few things on photon flux as follows

1) For nn23lo1 (the default one) PDF, is the photon flux being computed from Source/PDF/PhotonFlux.f code?

2) I want to improve the PhotonFlux.f code for my purpose since the improved Weizsaecker-Williams formula is taken from V.M.Budnev et al., Phys.Rep. 15C (1975) 181 which is very old, it seems. I want to incorporate some modifications on this formula and my question is that, is the PhotonFlux.f code the only place where I need to change?

3) In a similar manner, suppose I want to include W-flux from proton. Is it straightforward to add that module somewhere? It would be extremely helpful for me, if you instruct me where to add W-flux such that it is linked everywhere properly and one can use it to generate events.

Best regards,
Tanumoy Mandal
(Uppsala university)

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Tanumoy Mandal
Solved:
Last query:
Last reply:
Revision history for this message
Olivier Mattelaer (olivier-mattelaer) said :
#1

Hi,

> 1) For nn23lo1 (the default one) PDF, is the photon flux being computed from Source/PDF/PhotonFlux.f code?

No this comes from the PDF fit, for that particular PDF set the elastic photon component is part of the PDF fit and therefore, it would be wrong to add the associated contribution.

> 2) I want to improve the PhotonFlux.f code for my purpose since the improved Weizsaecker-Williams formula is taken from V.M.Budnev et al., Phys.Rep. 15C (1975) 181 which is very old, it seems. I want to incorporate some modifications on this formula and my question is that, is the PhotonFlux.f code the only place where I need to change?

A priori yes.

> 3) In a similar manner, suppose I want to include W-flux from proton. Is it straightforward to add that module somewhere? It would be extremely helpful for me, if you instruct me where to add W-flux such that it is linked everywhere properly and one can use it to generate events.

I actually do not know all the details of the implementation.
The first problem is where to include that contribution in the pdf output data.
For the moment the pdf return a list of 15 entry (from -7 to 7)
and they are not entry for a W at that stage.
So you will need to modify that vector and modify accordingly all the call to the PDF/use of the output.

For the rest, you will just have to duplicate what exists for the photon.
making a grep on “lpp” and “era_proton” should indicate you what you have to do.

Cheers,

Olivier

> On Mar 10, 2016, at 08:27, Tanumoy Mandal <email address hidden> wrote:
>
> New question #288402 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/288402
>
> Dear Mattelaer,
>
> I would like to ask you a few things on photon flux as follows
>
> 1) For nn23lo1 (the default one) PDF, is the photon flux being computed from Source/PDF/PhotonFlux.f code?
>
> 2) I want to improve the PhotonFlux.f code for my purpose since the improved Weizsaecker-Williams formula is taken from V.M.Budnev et al., Phys.Rep. 15C (1975) 181 which is very old, it seems. I want to incorporate some modifications on this formula and my question is that, is the PhotonFlux.f code the only place where I need to change?
>
> 3) In a similar manner, suppose I want to include W-flux from proton. Is it straightforward to add that module somewhere? It would be extremely helpful for me, if you instruct me where to add W-flux such that it is linked everywhere properly and one can use it to generate events.
>
> Best regards,
> Tanumoy Mandal
> (Uppsala university)
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Tanumoy Mandal (tanumoym) said :
#2

Thank you Olivier for your quick response. I shall try to understand the code.

Best regards,
Tanumoy Mandal

Revision history for this message
Tanumoy Mandal (tanumoym) said :
#3

Hi,

After looking at the codes, I got the following impression:

If I don't use nn23lo1 and choose other PDF e.g. CTEQ6L1, then the photon flux is being computed from PhotonFlux.f code since in CTEQ6L1 there is no "7" entry and the following part in pdf.f is taking care of that

c
c a "diffractive" photon
c
      q2max=xmu*xmu
      if(ih .eq. 3) then !from the electron
          fx(7)=epa_electron(x,q2max)
      elseif(ih .eq. 2) then !from a proton without breaking
          fx(7)=epa_proton(x,q2max)
      endif

Now, if I add another switch "ih .eq. 4" here for W-flux and define the W-flux function accordingly in PhotonFlux.f, will that be enough to use it in run_card.dat? Where are the other places I need to change accordingly?

If it is not straightforward, I can use a bad-trick by pretending epa_electron(x,q2max) as the W-flux which I can define in PhotonFlux.f. This will solve my purpose, but do you think I need to care about other things in this way of doing?

Best Regards,
Tanumoy

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

Hi,

> If it is not straightforward, I can use a bad-trick by pretending
> epa_electron(x,q2max) as the W-flux which I can define in PhotonFlux.f.
> This will solve my purpose, but do you think I need to care about other
> things in this way of doing?

You have two place to edit
1) the place where you provide the PDF
2) the place where you ask/use the PDF
modify the PDF wrapper might be enough but this might not be enough.

Cheers,

Olivier

> On Mar 10, 2016, at 11:47, Tanumoy Mandal <email address hidden> wrote:
>
> Question #288402 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/288402
>
> Status: Answered => Open
>
> Tanumoy Mandal is still having a problem:
> Hi,
>
> After looking at the codes, I got the following impression:
>
> If I don't use nn23lo1 and choose other PDF e.g. CTEQ6L1, then the
> photon flux is being computed from PhotonFlux.f code since in CTEQ6L1
> there is no "7" entry and the following part in pdf.f is taking care of
> that
>
> c
> c a "diffractive" photon
> c
> q2max=xmu*xmu
> if(ih .eq. 3) then !from the electron
> fx(7)=epa_electron(x,q2max)
> elseif(ih .eq. 2) then !from a proton without breaking
> fx(7)=epa_proton(x,q2max)
> endif
>
> Now, if I add another switch "ih .eq. 4" here for W-flux and define the
> W-flux function accordingly in PhotonFlux.f, will that be enough to use
> it in run_card.dat? Where are the other places I need to change
> accordingly?
>
> If it is not straightforward, I can use a bad-trick by pretending
> epa_electron(x,q2max) as the W-flux which I can define in PhotonFlux.f.
> This will solve my purpose, but do you think I need to care about other
> things in this way of doing?
>
> Best Regards,
> Tanumoy
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Tanumoy Mandal (tanumoym) said :
#5

Hi Olivier,

The "bad-trick" is working fine.

Best regards,
Tanumoy