[Rivet] Suggestion: change to compare-histos default behaviour

Andy Buckley andy.buckley at ed.ac.uk
Tue Jul 27 11:48:45 BST 2010


Hi everyone,

I've encountered quite a few confused new Rivet users recently who have
tried writing their own MC analysis and then find that compare-histos
will not write out any histogram .dat files from their analysis' .aida
output file. The "correct" solution is to use the --all flag, or one of
its less memorable synonyms, but I think we should actually now change
the default behaviour to be the --all mode.

The reason for the problem, obvious to anyone involved in the
development but opaque to outsiders, is that compare-histos won't write
out plots for which there is only one data line, since it assumes that
this is a symptom of a multi-energy analysis writing out unfilled
histograms for energies other than that used in the current run.

That assumption was reasonable and convenient when we were only writing
analyses with reference data, and when analyses had no way at the init()
histo-booking stage of determining what the run energy was going to be.
Both these assumptions are now wrong: we have lots of MC-only analyses
with no ref data, and Rivet is being widely used as a prototyping and MC
systematics tool for new measurements; and the normal analysis design is
now to only book those histograms which will be used, based on
init()-time knowledge of the beam conditions. Making simple things
simple, and making new users feel in control is, I think, more important
than exact interface backwards compatibility at this stage in Rivet's
lifetime.

So I suggest that for 1.2.2 we (== I) convert compare-histos to always
plot all the histograms in the files it is given, unless explicitly
disabled. I suggest for now that we keep the defunct --all etc. flags
for compatibility, but make them print a "deprecated flag" warning.
Opinions?

Andy

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


More information about the Rivet mailing list