Are there plans to support HepMC3?

Asked by Matthew Feickert

Hi. From the latest MG5aMC_PY8_interface (v1.2, from the version publicly browsable at http://madgraph.physics.illinois.edu/Downloads/MG5aMC_PY8_interface/) I can see that MadGraph5 requires HepMC2

```
$ curl -sLO http://madgraph.phys.ucl.ac.be/Downloads/MG5aMC_PY8_interface/MG5aMC_PY8_interface_V1.2.tar.gz
$ mkdir -p MG5aMC_PY8_interface
$ tar -xzvf MG5aMC_PY8_interface_V1.2.tar.gz --directory=MG5aMC_PY8_interface
$ grep "HEPMC" MG5aMC_PY8_interface/compile.py
# When using only original PY8 makefiles, HEPMC2 will be linked dynamically.
# By default, the interface's makefile (which include PY8's ones) will link HEPMC2 statically.
    # First obtain the location of the HEPMC libraries
        HEPMC2LibPath = Makefile_paths['HEPMC2_LIB']
        print( "The specified Pythia8 version does not seem to be installed with HEPMC2 support.")
    # Now copy the static HEPMC library locally so we are guaranteed that it will be compiled
    if not os.path.isfile(pjoin(HEPMC2LibPath,'libHepMC.a')):
        print( "The version of HEPMC2 linked to Pythia8 seems not to include a static library.")
        print( "You can try again with the option --pythia8_makefile but HEPMC2 will need"+\
    shutil.copy(pjoin(HEPMC2LibPath,'libHepMC.a'),pjoin(local_path,'static_library_dependencies'))
            'CUSTOM_STATIC_HEPMC2_LIB=%s'%pjoin(local_path,'static_library_dependencies')],
```

As HepMC2 is no longer developed and the HepMC devs actively encourage use of HepMC3 on the website (http://hepmc.web.cern.ch/hepmc/) are there plans to support HepMC3 in the future?

My guess is that there is some very good reason that at the moment MadGraph5 still requires HepMC2 that I don't understand. I couldn't find any questions on launchpad that already address this point though, so I thought I'd ask.

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,

That package is mainly supported by PY8 author and not by us. And this package is actually not yet pythia8.3 compatible (even if a version pythia8.3 compatible is ready to be released at the same time as the next release of MG5aMC).
We have not yet started to discuss with PY8 author on how to update that package to support HepMC3.
So I actually do not know which minimal version of PY8 is needed for such support (8.3 should be fine for sure but not sure for 8.2)

The support of HepMC3 (or any other format of pythia) is mainly a pythia8 decision, but indeed since the executable needs to link to the associated library we have to do a choice when installing the interface. I do not think that the majority of our Pheno user are yet ready to drop HEPMC2. (experimentalist does not count in this matter since they run Pythia8 in standalone and not via MG5aMC so they can freely choose their favorite output format).

Maybe one option would be to have a second interface that the user can install for the HepMC3 output and then depending of the output file within the pythia8_card select which interface to use, but this will likely take time before being implemented.

Cheers,

Olivier

Revision history for this message
Matthew Feickert (feickert) said :
#2

Thanks for the fast response!

> So I actually do not know which minimal version of PY8 is needed for such support (8.3 should be fine for sure but not sure for 8.2)

Yeah, I'm not sure about _minimal_ required versions, but I can get PYTHIA 8.244 to build from source against HepMC3 v3.2.4 when passing the --with-hepmc3 configure flag.

> Maybe one option would be to have a second interface that the user can install for the HepMC3 output and then depending of the output file within the pythia8_card select which interface to use

Yeah, if the pheno community has reasons to not want to update to HepMC3 I can understand that means you'll need to support it for a long time. It would be nice though to have the ability to choose to use HepMC3 instead.

> but this will likely take time before being implemented.

Sure. Totally understandable. As Launchpad doesn't seem to have any way of tracking development plans I thought I'd just ask to see if this was something on the radar at all, or if there were reasons to avoid this for the indefinite future.

Can you help with this problem?

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

To post a message you must log in.