How madgraph doing integral to get total cross section

Asked by Si Wang

I am trying to figure out the way Madgraph does the integral to get the total cross section.
I know under Subprocess, the file matrix1.f provides the matrix element. But to integrate total cross section, there also needs prefactor. I couldn't find out the calculation of the prefactor. So which file talks about the prefactor? I want to extract it out, like the matrix element in the standalone file. In this way, I can use it in another programming.

Question information

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

Hi,

Careful that matrix1.f does not provide the matrix-element, but the matrix-element times the multi-channel factor (which is key for performing the phase-space integration efficiently)

For the rest, the comptuation of the PDF is done within auto_dsig1.f
and the combination of the various symmetry/pdf/... are done in auto_dsig.f

Some flux factor are also include via the Jacobian within genps.f

The cuts are evaluated within cuts.f, the running of the coupling is called from cuts.f
and is done within models/couplings.f but for the running of alphas itself
which depend of the pdf library (done within lhapdf if linked otherwise done in the alphas.f file).

Cheers,

Olivier

> On 9 Aug 2022, at 23:15, Si Wang <email address hidden> wrote:
>
> New question #702715 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/702715
>
> I am trying to figure out the way Madgraph does the integral to get the total cross section.
> I know under Subprocess, the file matrix1.f provides the matrix element. But to integrate total cross section, there also needs prefactor. I couldn't find out the calculation of the prefactor. So which file talks about the prefactor? I want to extract it out, like the matrix element in the standalone file. In this way, I can use it in another programming.
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Si Wang (siw34) said :
#2

Hi,

Further question:
I would also need to apply cuts for SMATRIX, since I need to call SMATRIX multiple times in the Monte Carlo calculation. So I wonder whether there are similar cuts.f file in the standalone folder.

If not, how are momentums defined in the full folder? Which files are exactly relevant to the definition of momentums?
There are multiple files relevant to momentums, some seem to be not used at all, just been put in the file.
Seems to use random numbers to define the momentums? How do random numbers define momentums?
Since I need to draw out differential distribution with Monte Carlo, need the definition of momentums to define cos(theta).

Are there any materials describing how Madgraph works out the cross section between Fortran files?

Thank you!
Si

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

Hi,

The point of the standalone folder is to have ONLY the matrix-element.
So in that mode we do not have a way to compute cross-section, to do running, to evaluate cuts, to call the PDF library,...
(But obviously one can add all those features obviously)

In standalone, we also have much less optimization features compare to the cross-section/event generation mode.
For example, in both mode, we are able to convert random number to physical momenta.
In standalone, we do use the RAMBO algorithm (very old and very simple algorithm), the downside is that this is quite inefficient in presence of resonance/singularity/... (so in practise very very limited)

In madevent, this is on the other-hand an extremelly complex operation which contains
1) a multi-channel setup to isolate each singulrity into a dedicated integral
2) a machine learning layer (a vegas like algorithm)
3) a converter from the random number to the momenta (specific for each singularity isolated in one)

The two paper where this will be most described are
    hep-ph/0208156 [hep-ph] (mainly this one) and 2102.00773 [hep-ph] (where I described some new technique for t-channel)

> Since I need to draw out differential distribution with Monte Carlo, need the definition of momentums to define cos(theta)

Why do not you generate the cross-section from madgraph (normal mode) and ask madanalysis to do the plot?
If for some reason that differential cross-section can not be done in the "easy" mode, it is certainly possible in the "expert" mode,
but likely easier to read the lhef and then do the plot your self by reading the momenta (see hep-ph/0609017)

Cheers,

Olivier

Revision history for this message
Si Wang (siw34) said :
#4

Hi Olivier,

Thank you! That's very helpful. I will look more into it.
I know how to deal with Madgraph, and plot with lhe file.
The point is, Madgraph is a black box. I need to open the black box and get practised about Vegas Algorithm.

Best,
Si

Can you help with this problem?

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

To post a message you must log in.