agile is hosted by Hepforge, IPPP Durham


Now THAT'S agile

AGILe is A Generator Interface Library (& executable), i.e. a uniform object oriented C++ interface for a variety of Fortran-based Monte Carlo event generators. The role of AGILe is to provide a standard steering interface for Fortran generator codes which usually do not come with an executable, usually need to be recompiled to change parameter settings, and cannot write output into the C++ HepMC event record: AGILe remedies all of these defects.

The agile-runmc executable provides a very powerful yet simple command-line interface for steering a variety of generators: out of the box, AGILe can load generators from the LCG Genser repository as installed on the CERN AFS filesystem. The currently supported generators are:

  • PYTHIA, with LHEF reader support for POWHEG etc.
  • HERWIG (+ JIMMY), with LHEF reader support for POWHEG etc.
  • Charybdis (+ PYTHIA/HERWIG(+JIMMY))
  • Cascade
  • Rapgap
  • (We'd really an MC@NLO interface... can anyone help?)

MCnet studentships!

Would you like to work on a short project involving Monte Carlo event generators?

MCnet offers 3-6 month fully funded studentships for current PhD students.

See for more information!

C++ generators are not supported, as they can all produce HepMC natively (and because they are harder to interface reliably or to support multiple versions due to header files introducing an extra sensitivity to interface fluctuations). Having said that, we also provide Sacrifice, an interface to Pythia 8 that can be configured in a similar manner to AGILe and works well with Rivet.

AGILe was originally developed for use by the Rivet MC validation toolkit, but is more generally useable as a generator interfacing layer, for use by anyone who wants a quick, easy and flexible system for steering Fortran generators and producing events in HepMC format.

As the use of C++ generators which natively output HepMC and have more user friendly interfaces increases, there is less need for AGILe. We have no problem with that – indeed we welcome it! AGILe is still useful while Fortran shower generators continue to be used, but core development has effectively ceased since 2011. We are very happy to accept patches for bug fixes, feature improvements, or which add interface code for new Fortran generators.

There is no intention to add AGILe steering support for any C++ shower generators, for a variety of reasons. In particular, we tried it before and it was more trouble than the effort was worth! It is one thing to interface a generator whose interface has not changed in years, quite another to support one whose header files change with every release. But please report your desires for nicer features to the active developers of the C++ generator codes!)

The stable release of AGILe is version 1.4.1, released on 10 Sept 2013. This version is just a minor patch for library loading on Mac OS X.