[Rivet] Fwd: Running RAPGAP with RIVET

Andy Buckley andy.buckley at ed.ac.uk
Mon Apr 26 20:35:31 BST 2010


Holger, can you look into this please? Both of you, you should be able
to edit the fillEvent method in the src/Rapgap/Rapgap.cc file to print
out the momenta in the HepMC event just after it's been filled by the
IO_HEPEVT helper. Sorry, I don't personally have a version of Rapgap
installed (or time to get one and test it!)

In the current head version there is an extra protection with newer
versions of HepMC to convert the units from GeV to MeV if needed, but I
doubt that that is causing the problem.

Cheers,
Andy


On 26/04/10 15:00, Tim Martin wrote:
> Hi all again,
> 
> I was busy last week and have only recently got round to looking at
> the fifo's made by rapgap->agile
> 
> Sadly there may be another problem! I have attached 1 event from
> rapgap steered with pp, ep and a pythia6 event. With rapgap, the
> particles and vertexes appear to be there but the 4-momenta are all
> zero?
> 
> Can I ask again if anyone has any ideas where along the line the data
> has been lost? If I just run rapgap I do see what look like sensible
> 4-vecs printed to screen in the human readable summary.
> 
> Cheers, Tim.
> 
> On 16 April 2010 17:40, Holger Schulz <holger.schulz at physik.hu-berlin.de> wrote:
>> Tim Martin wrote:
>>>
>>> Sucess!
>>>
>>> That last step did it, I now have hepmc_rapGap.fifo.
>>>
>>
>> Phew, that's a relief :)
>> Thanks for your patience, I think we should/will
>> use this experience and try to make rapgap available
>> in genser. If there is growing need for Rapgap, maybe
>> we can convince Hannes to write a function such that
>> we can set rapgap parameters the usual AGILe way,
>> so stay tuned :)
>>
>> Cheers,
>> Holger
>>>
>>> To summarise for myself and for anyone else who wants to try this in the
>>> future:
>>>
>>> *Got RapGap pre-compiled from Hannes Jung
>>> cp -r ~jung/public/rapgap/ ~/scratch0/
>>>
>>> *Made the shared library
>>> cd ~/scratch0/rapgap/Lib
>>> mkdir temp
>>> cd temp
>>> ar -x ../librapgap32.a
>>> gcc -shared *.o ../../rapgap-3.202-beta-0.1/bases51/*.o
>>> ../../rapgap-3.202-beta-0.1/misc/*.o -o ../librapgap32.so
>>>
>>> *Installed RIVET and BOOST (was not liking CERN's boost install for
>>> some reason) from the bootstrap provided on the RIVET web page
>>> cd /tmp
>>> wget http://svn.hepforge.org/rivet/bootstrap/rivet-bootstrap
>>> chmod +x rivet-bootstrap
>>> ./rivet-bootstrap --prefix=$HOME/scratch0/local --install-boost
>>>
>>> *Got the head of AGILe from SVN
>>> svn co http://svn.hepforge.org/agile/trunk
>>> *Reverted src/Core/Loader.cc to r700
>>> *Added 'baselibs.push_back(GenLibInfo("libpythia6_dummy", "pythia6",
>>> "421"));' after line 361
>>> *Set rapgap path
>>> export AGILE_GEN_PATH=$HOME/scratch0/rapgap
>>> *Configured & installed AGILe with
>>> autoreconf -i --force
>>> chmod +x configure
>>> ./configure --prefix=$HOME/scratch0/local
>>> --with-lcgtag=slc4_amd64_gcc34
>>> --with-hepmc=/afs/cern.ch/sw/lcg/external/HepMC/2.05.00/slc4_amd64_gcc34
>>> --with-boost=$HOME/scratch0/local --enable-pyext
>>> make -j2 && make -j2 install
>>>
>>> *Ran with
>>> agile-runmc Rapgap:32 -n 100000 -o hepmc_rapGap.fifo <
>>> ~tam/scratch0/rapgap/share/steer-pp-rapidity-gap
>>>
>>> Once again, many thanks for all your help getting me to this point,
>>> now to look at the distributions :)
>>> Cheers,
>>> Tim.
>>>
>>> On 16 April 2010 16:01, Holger Schulz <holger.schulz at physik.hu-berlin.de>
>>> wrote:
>>>
>>>>
>>>> Hi Tim,
>>>>
>>>> I think you need to link also to the objects in the folder
>>>> misc and bases51 (vzero is in misc) when you create
>>>> librapgap32.so.
>>>> Can you give it a try?
>>>>
>>>> Holger
>>>>
>>>>
>>>> Tim Martin wrote:
>>>>
>>>>>
>>>>> Thanks Andy, Holger.
>>>>>
>>>>>
>>>>>
>>>>>>>
>>>>>>> it's _dummy, not _dummies. And the test done to put the generator in
>>>>>>> the
>>>>>>>
>>>>>>>
>>>>>
>>>>> A little progress, I changed the line I inserted into the old Loder.cc
>>>>> to
>>>>>
>>>>> baselibs.push_back(GenLibInfo("libpythia6_dummy", "pythia6", "421"));
>>>>>
>>>>> And we get further! Pythia now initialises, but then
>>>>>
>>>>> AGILe.Rapgap: INFO  Calling PTIME...
>>>>> python: symbol lookup error:
>>>>> /afs/cern.ch/user/t/tamartin/scratch0/rapgap/lib/librapgap32.so:
>>>>> undefined symbol: vzero_
>>>>>
>>>>> Full log att.
>>>>> Tim.
>>>>>
>>>>> On 16 April 2010 15:17, Holger Schulz
>>>>> <holger.schulz at physik.hu-berlin.de>
>>>>> wrote:
>>>>>
>>>>>
>>>>>>
>>>>>> Andy Buckley wrote:
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> On 16/04/10 12:01, Tim Martin wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Hi Andy,
>>>>>>>>
>>>>>>>> I tried the new Loder.cc reautoconf'd, configured and made. AGILe did
>>>>>>>> not then find RAPGAP as an option to run.
>>>>>>>>
>>>>>>>> Interestingly, I reverted back to r700, re-installed, got the old
>>>>>>>> error back then added the one line below
>>>>>>>>
>>>>>>>> baselibs.push_back(GenLibInfo("libpythia6", "pythia6", "421"));
>>>>>>>> //L361
>>>>>>>> baselibs.push_back(GenLibInfo("libpythia6_dummies", "pythia6",
>>>>>>>> "421"));  //L362 - Tim addition
>>>>>>>>
>>>>>>>> Once more, after compilation, rapgap was not found.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> I probably arsed up how the rapgap library finding is done. In
>>>>>>> particular, I think my rewrite hack would have been looking for
>>>>>>> .../32/.../librapgap.so rather than librapgap32.so. I'm in a training
>>>>>>> course all day with virtually no internet access (this is a 15 min
>>>>>>> coffee break!)... Holger, can you try my hacked version and make it
>>>>>>> work
>>>>>>> for you again?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Ok I will try and tell you when it's done. I will be stuck in a meeting
>>>>>> and won't be able to work on that until 6pm CERN time.
>>>>>>
>>>>>> Holger
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> Then Tim can try adding the libpythia6_dummy finding line again. Note:
>>>>>>> it's _dummy, not _dummies. And the test done to put the generator in
>>>>>>> the
>>>>>>> list is just checking to see if those libraries can be *found*, not
>>>>>>> that
>>>>>>> they successfully load and cover all symbol requirements: we used to
>>>>>>> do
>>>>>>> the latter, but it introduced a very subtle problem! So that you're
>>>>>>> not
>>>>>>> getting a RapGap variant in the list with my hack implies that my hack
>>>>>>> is not looking for the right path to the Rapgap library... Holger can
>>>>>>> (I
>>>>>>> hope) fix that. That adding the _dummies line to r700 makes Rapgap
>>>>>>> disappear from the gens list is because the library isn't called
>>>>>>> *_dummies!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> I'm getting...
>>>>>>>>
>>>>>>>> nm -CD libpythia6.so | grep pytime
>>>>>>>> U pytime_
>>>>>>>>
>>>>>>>> nm -CD libpythia6_dummy.so | grep pytime
>>>>>>>> 00000000000016a0 T pytime_
>>>>>>>>
>>>>>>>> nm librapgap32.so | grep pytime
>>>>>>>> *nothing*
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Okay, so Rapgap doesn't contain this dummy function. I think
>>>>>>> libpythia_dummy needs to be loaded as well: Holger didn't notice this
>>>>>>> because he has a version of the Pythia library which already contains
>>>>>>> all the dummy functions, but the Genser libs do not.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> As for running rapgap without AGILe, it produces a few event
>>>>>>>> summaries
>>>>>>>> (I presume it will output all with changes to steering) along with
>>>>>>>> all
>>>>>>>> the other assorted MC output (~tamartin/public/rapgapout), I tried
>>>>>>>> piping it straight into rivet and manually snipping out the event
>>>>>>>> summaries bit and running over the file but both times just says:
>>>>>>>>
>>>>>>>> streaming input: end of stream found setting badbit.
>>>>>>>> Failed to initialise on event file -
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Yeah, it's not writing HepMC -- that's why it can't be read in. You
>>>>>>> could hack Rapgap itself to write out HepMC, but that would involve
>>>>>>> getting familiar with Fortran/C++ intercommunication, which is exactly
>>>>>>> the convenience problem that AGILe is meant to solve. So let's
>>>>>>> persevere: I think it shouldn't take much longer!
>>>>>>>
>>>>>>> Andy
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>  ------------------------------------------------------------------------
>>>>>
>>>>> _______________________________________________
>>>>> Rivet mailing list
>>>>> Rivet at projects.hepforge.org
>>>>> http://www.hepforge.org/lists/listinfo/rivet
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>
>>
> 
> 
> 


-- 
Dr Andy Buckley
SUPA Advanced Research Fellow
Particle Physics Experiment Group, University of Edinburgh


More information about the Rivet mailing list