Compilation of subpackages in advance

Asked by Marco Harrendorf

Dear MG5_aMC@NLO authors,

I am in the process of providing MG5_aMC@NLO as an external package in the CMS software framework, have a look here:
https://github.com/cms-sw/cmsdist/pull/1614

Since the MG5_aMC@NLO package will later be placed in a read-only directory I have to compile all subpackages and tools needed for the event generation like the CutTools package and so on in advance, meaning before the user invokes the mg5_aMC binary.

Can you please tell me which packages I have to compile in advance and maybe also where I can find the corresponding Makefiles and if I have to set specific make options?

Thank you in advance,

Marco

Question information

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

Hi Marco,

We have a script ./bin/compile
which

1) convert all the model to MG5 format and store the result.
2) compile cutools
3) compile stdhep
4) install and compile pythia-pgs
5) install and compile madanalysis
6) install and compile Delphes
7) install and compile ExRootAnalysis
8) install and compile SysCalc

This script is not used that much and therefore I found two bug in the model compilation in the 2.3 version.
I’ve fix them in 2.3.1. I put the patch below if you want to apply it.
Another solution is to
1) remove those two model (hgg_plugin and SMScalars)
2) bypass the compilation of the model (this will not make anything to crash but will slow down the loading of the model).

Cheers,

Olivier

Here is the patch:

=== modified file 'models/hgg_plugin/parameters.py'
--- models/hgg_plugin/parameters.py 2014-05-02 09:42:49 +0000
+++ models/hgg_plugin/parameters.py 2015-06-17 10:13:56 +0000
@@ -69,11 +69,6 @@
                 value = '1/aEWM1',
                 texname = '\\text{aEW}')

-MW = Parameter(name = 'MW',
- nature = 'internal',
- type = 'real',
- value = 'cmath.sqrt(MZ**2/2. + cmath.sqrt(MZ**4/4. - (aEW*cmath.pi*MZ**2)/(Gf*cmath.sqrt(2))))',
- texname = 'M_W')

 ee = Parameter(name = 'ee',
                nature = ‘internal',

=== modified file 'models/SMScalars/parameters.py'
--- models/SMScalars/parameters.py 2013-12-14 18:16:17 +0000
+++ models/SMScalars/parameters.py 2015-06-17 10:17:11 +0000
@@ -153,7 +153,7 @@
                lhablock = 'MASS',
                lhacode = [ 25 ])

-MSk = Parameter(name = 'MSk',
+MSk6 = Parameter(name = 'MSk6',
                 nature = 'external',
                 type = 'real',
                 value = 40,
@@ -161,7 +161,7 @@
                 lhablock = 'MASS',
                 lhacode = [ 9000006 ])

-MSk = Parameter(name = 'MSk',
+MSk7 = Parameter(name = 'MSk7',
                 nature = 'external',
                 type = 'real',
                 value = 40,
@@ -169,7 +169,7 @@
                 lhablock = 'MASS',
                 lhacode = [ 9000007 ])

-MSk = Parameter(name = 'MSk',
+MSk8 = Parameter(name = 'MSk8',
                 nature = 'external',
                 type = 'real',
                 value = 40,
@@ -177,7 +177,7 @@
                 lhablock = 'MASS',
                 lhacode = [ 9000008 ])

-MSk = Parameter(name = 'MSk',
+MSk9 = Parameter(name = 'MSk9',
                 nature = 'external',
                 type = 'real',
                 value = 40,

=== modified file 'models/SMScalars/particles.py'
--- models/SMScalars/particles.py 2011-04-10 15:43:51 +0000
+++ models/SMScalars/particles.py 2015-06-17 10:19:25 +0000
@@ -259,7 +259,7 @@
               antiname = 'S1',
               spin = 1,
               color = 1,
- mass = Param.MSk,
+ mass = Param.MSk6,
               width = Param.ZERO,
               texname = 'S1',
               antitexname = 'S1',
@@ -272,7 +272,7 @@
               antiname = 'S2',
               spin = 1,
               color = 1,
- mass = Param.MSk,
+ mass = Param.MSk7,
               width = Param.ZERO,
               texname = 'S2',
               antitexname = 'S2',
@@ -285,7 +285,7 @@
               antiname = 'S3',
               spin = 1,
               color = 1,
- mass = Param.MSk,
+ mass = Param.MSk8,
               width = Param.ZERO,
               texname = 'S3',
               antitexname = 'S3',
@@ -298,7 +298,7 @@
               antiname = 'S4',
               spin = 1,
               color = 1,
- mass = Param.MSk,
+ mass = Param.MSk9,
               width = Param.ZERO,
               texname = 'S4',
               antitexname = 'S4',

On 17 Jun 2015, at 10:51, Marco Harrendorf <email address hidden> wrote:

> New question #268231 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/268231
>
> Dear MG5_aMC@NLO authors,
>
> I am in the process of providing MG5_aMC@NLO as an external package in the CMS software framework, have a look here:
> https://github.com/cms-sw/cmsdist/pull/1614
>
> Since the MG5_aMC@NLO package will later be placed in a read-only directory I have to compile all subpackages and tools needed for the event generation like the CutTools package and so on in advance, meaning before the user invokes the mg5_aMC binary.
>
> Can you please tell me which packages I have to compile in advance and maybe also where I can find the corresponding Makefiles and if I have to set specific make options?
>
> Thank you in advance,
>
> Marco
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Marco A. Harrendorf (marcokarlo) said :
#2

Hello Olivier,

thank you very much. This solved my question.

Best regards,

Marco

Revision history for this message
Marco A. Harrendorf (marcokarlo) said :
#3

Hello Olivier,

I am sorry I have to reopen this question since the IREGI package was not included in the compile.py python script.
Can you please update your compile.py Python script so that also the IREGI package is built in advance?

Thanks,

Marco

Revision history for this message
Best Hua-Sheng Shao (erdissshaw) said :
#4

Hi Marco,

I have added make_IREGI in ./bin/compile.py but in version 2.3.1. The simply thing you can compile it yourself is going to ./vendor/IREGI/src and compile it with

> make

and wait. It should be fine if you are using gfortran.

Cheers,

Hua-Sheng

Revision history for this message
Marco Harrendorf (marco-harrendorf-deactivatedaccount) said :
#5

Thanks