Go HEP release 0.1
It’s with great pleasure that we can announce that the Go-HEP
release v0.1
is out:
- Changelog: https://github.com/go-hep/hep/releases/v0.1
- Sources (zip): https://github.com/go-hep/hep/archive/v0.1.zip
- Sources (tar): https://github.com/go-hep/hep/archive/v0.1.tar.gz
What’s new
What’s new? Well, lots of things since it is our very first release.
But since the merge of the github.com/go-hep/xyz
repositories into the mono-repository go-hep/hep
and the introduction of the go-hep.org/x/hep/...
vanity imports, quite a few things.
First: as we have tagged a release, Go-HEP
is now citable.
Thanks to Zenodo, we have a DOI:
Improved ROOT support
Support of ROOT files and reading their content dramatically improved:
- read
TH1x
histograms - read
TH2x
histograms - read
TGraph
,TGraphErrors
andTGraphAsymmErrors
- read (flat)
TTrees
- scan/iterate/select content of
TTrees
- improved the root-ls command display
- introduction of root-srv, a command to browse
ROOT
files’ content. One can also plotTH1x
,TH2x
,TGraph{,{,Asymm}Errors}
and (flat)TTrees
. root-srv
is also served on Google AppEngine:rootio-inspector.appspot.com
. This allows to inspectROOT
files without havingROOT
norGo-HEP
installed.
Improved fads & hbook
go-hep/hbook gained inter-operability with YODA (Yet more Objects for Data Analysis).
hbook
can now save hbook.H1D
, hbook.H2D
, … into YODA
ASCII files and load hbook.H1D
, … from YODA
ASCII files.
Two new commands, yoda2rio and rio2yoda, were also introduced to allow converting YODA
files to rio ones, and back.
This allowed to create a new command: fads-rivet-mc-generic
.
This command reproduces the default MonteCarlo analysis from Rivet: MC_GENERIC.cc.
It was nice to see the results were the same :) (except that fads
was twice faster.)
Miscellaneous
As always, the usual string of fixes, documentation improvements and other things were applied to the repository.
Noteworthy, the sio
package has seen some attention, preparing for a pure-Go lcio
package for inter-operability with the LCIO C++ I/O library for the future linear collider.
Next steps
The plan is to provide support for reading of TTrees
containing user classes.
This implies being able to interact with the ROOT
streamers that are stored in the TFiles
.
That would be a solid v0.2
release.
Release v0.3
(or v0.4
) should also get the first iteration(s) on getting write support for ROOT
files.
On the non-ROOT front, future releases could perhaps integrate the rio
storage with hbook/ntup.Ntuple
so one could get a complete, pure-Go stack with data persistency and an analysis workstation (pawgo
and its web-based equivalent.)
In the meantime, please give v0.1
a spin, file issues, send patches (via pull requests) and/or discuss anything Go-HEP
related on the go-hep mailing list.