[Rivet] Ch, ch, changes...

Andy Buckley andy.buckley at durham.ac.uk
Sat Oct 13 16:38:53 BST 2007


Hi everyone,

With the Rivet session at HERA-LHC giving us a convenient reason to get
Rivet and RivetGun looking as good as possible, I've started another set
of "refactorings" which will eventually make the code structures more
well-defined (e.g. for HepML integration) but in the meantime may cause
minor chaos.


AGILe namespace
---------------

The main thing you may have trouble with is that I've finally started
separating the generator interfaces from the Rivet aspects of RivetGun:
this has required some namespace changes which I've attempted to solve.
Basically, anything in RivetGun which is disconnected from Rivet should
be in the AGILe namespace; anything which is Rivet-dependent goes in the
Rivet namespace, since having a separate RivetGun namespace is just
adding complexity for no reason.

What compiles for me might not work with your modified local checkouts,
though, so doing an svn update is advised. I will also be explicitly
separating the RivetGun and AGILe header areas, which will result in
some header file movement: again, I'll try to sort this out without
affecting anyone too much.


Plans for HERA-LHC
------------------

Since I'm writing, here are a few other issues that I have down as
essential/desirable fixes before HERA-LHC at the end of the month:

Rivet:
 * Eliminate build warnings (a couple of the recently added analyses
generate warnings: doesn't look good).
 * Make AIDA IProfile1D histos convert to IDataPointSet in
AnalysisHandler::finalize().
 * Replace KtJet with FastJet.
 * Sort out pointer problem with Projection dependencies (will require
smart pointers as long-term solution, but we can make it a bit safer in
the meantime).
 * Update to use recent HepMC (IO_ASCII -> IO_ASCII_Extended) and more
robust beam acquisition in Beam projection.

RivetGun:
 * Move generator aspects to AGILe namespace.
 * Break dependence on Rivet::ParticleName (probably just via duplication).
 * Split Herwig and Jimmy (use Jimmy as aux generator cf. AlpGen/Charybdis).
 * Add Generator::clearEvent() for deletion of event pointer if necessary.
 * Refactor setParam implementation to be able to use
Generator::setParam conversion methods without re-declaring them.
 * Update to use recent HepMC (IO_ASCII -> IO_ASCII_Extended).

Cheers,
Andy


More information about the Rivet mailing list