|
[Rivet] Converting from ROOT to yodaAndy Buckley andy.buckley at cern.chThu Jul 14 21:17:28 BST 2016
Correct, we got rid of that one because the "flat" format is really only intended for data browsing convenience rather than as a robust exchange format. (For that same reason I'm very tempted to deprecate the two flat2* functions that YODA does provide, and get rid of them in version 1.7.0. Dammit, yes I'm going to do that ;-) ) Andy On 14/07/16 19:16, Salvatore Rappoccio wrote: > Thanks Andy, > > So just to completely clarify, we should not use the "root2flat" macro > anymore? > > Cheers, > Sal > > > On Wed, Jul 13, 2016 at 5:15 PM, Andy Buckley <andy.buckley at cern.ch > <mailto:andy.buckley at cern.ch>> wrote: > > Hi Sal & David, > > These scripts are maintained! But they are in YODA rather than > Rivet... and those Rivet releases you're looking at are *really* > old, Sal. > > If you get hold of a recent version of YODA, built with ROOT support > (give --enable-root to the configure script and make sure > root-config is available), then root2yoda will be installed and > should work fine. > > Otherwise feel free to write your own PyROOT/YODA script: that's all > that root2yoda is! > https://yoda.hepforge.org/hg/yoda/file/tip/bin/root2yoda (Note that > the fiddly bit is the ROOT tree walking, which we've abstracted into > the yoda.root submodule) > > And yes, the "flat" format is not designed for robust storage -- I > didn't know but am not really surprised that it falls over on flat > files written/read between Rivet versions 1 and 2. > > Andy > > > > On 13/07/16 21:57, David Bjergaard wrote: > > Hi Sal, > > (Remember me!?) Andy and other devs can advise you better, but > to my knowledge > the way to do this would be with YODA's python interface and > PyROOT. Loop over > the TH1s and populate the YODA histogram appropriately. I don't > know how > complicated your root file structure is, but you could make it > as fancy (or > simple) as needed. ("less `which make-plots`" to get a decent > tutorial on how the > yoda interface works, and PyROOT is its own beast) > > Python docs are here: http://yoda.hepforge.org/pydoc/ I'm pretty > sure the x2yoda > and yoda2x scripts are not being maintained, but again the > authorities know better. > > I don't think there is a "off the shelf" solution since the > whole Rivet stack is > intended to stand separately from ROOT. > > David > > > Salvatore Rappoccio <rappoccio at gmail.com > <mailto:rappoccio at gmail.com>> writes: > > Hi, Andy, All, > > I am trying to convert a file full of histograms from ROOT > to yoda. I > tried to do "root2flat" and then "flat2yoda". I got > "root2flat" from > here: > > http://rivet.hepforge.org/svn/tags/rivet-1.6.0/bin/root2flat > > I didn't see any root2flat in this SVN area : > > http://rivet.hepforge.org/svn/tags/rivet-2.0.0b1/bin/ > > Then tried "flat2yoda" but it looks like the schema for the data > format is not backwards compatible, I get: > > cmslpc32:$ flat2yoda CMS_SMP_16_010_data_ptbin0.dat > Traceback (most recent call last): > File > "/cvmfs/cms.cern.ch/slc6_amd64_gcc530/cms/cmssw/CMSSW_8_0_10/external/slc6_amd64_gcc530/bin/flat2yoda > <http://cms.cern.ch/slc6_amd64_gcc530/cms/cmssw/CMSSW_8_0_10/external/slc6_amd64_gcc530/bin/flat2yoda>", > line 25, in <module> > analysisobjects = yoda.readFLAT(i) > File "yoda/include/IO.pyx", line 150, in yoda.core.readFLAT > (yoda/core.cpp:72398) > yoda.ReadError: Unexpected line in YODA format parsing when > BEGIN > expected > > Any ideas? What should I do here? Where are the most up to date > instructions? > > Cheers, > Sal > > > _______________________________________________ > Rivet mailing list > Rivet at projects.hepforge.org <mailto:Rivet at projects.hepforge.org> > https://www.hepforge.org/lists/listinfo/rivet > > _______________________________________________ > Rivet mailing list > Rivet at projects.hepforge.org <mailto:Rivet at projects.hepforge.org> > https://www.hepforge.org/lists/listinfo/rivet > > > > -- > Dr Andy Buckley, Lecturer / Royal Society University Research Fellow > Particle Physics Expt Group, University of Glasgow > > -- Dr Andy Buckley, Lecturer / Royal Society University Research Fellow Particle Physics Expt Group, University of Glasgow
More information about the Rivet mailing list |