|
[Rivet-svn] r2290 - in trunk: . data/anainfo docblackhole at projects.hepforge.org blackhole at projects.hepforge.orgMon Mar 1 22:37:14 GMT 2010
Author: buckley Date: Mon Mar 1 22:37:13 2010 New Revision: 2290 Log: Manual, analysis info, and manual scripts updates Added: trunk/data/anainfo/BELLE_2006_S6265367.info Modified: trunk/ChangeLog trunk/data/anainfo/D0_2007_S7075677.info trunk/data/anainfo/H1_1994_S2919893.info trunk/data/anainfo/MC_LEADINGJETS.info trunk/data/anainfo/MC_WJETS.info trunk/data/anainfo/MC_ZJETS.info trunk/data/anainfo/Makefile.am trunk/data/anainfo/PDG_HADRON_MULTIPLICITIES_RATIOS.info trunk/doc/Makefile.am trunk/doc/mk-analysis-html trunk/doc/mk-analysis-latex trunk/doc/preamble.tex trunk/doc/rivet-manual.tex Modified: trunk/ChangeLog ============================================================================== --- trunk/ChangeLog Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/ChangeLog Mon Mar 1 22:37:13 2010 (r2290) @@ -1,5 +1,9 @@ 2010-03-01 Andy Buckley <andy at insectnation.org> + * Updates to manual, manual generation scripts, analysis info etc. + + * Add HepData URL to metadata print-out with rivet --show-analysis + * Fix average Et plot in UA1 analysis to only apply to the tracker acceptance (but to include neutral particle contributions, i.e. the region of the calorimeter in the tracker acceptance). Added: trunk/data/anainfo/BELLE_2006_S6265367.info ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/data/anainfo/BELLE_2006_S6265367.info Mon Mar 1 22:37:13 2010 (r2290) @@ -0,0 +1,23 @@ +Name: BELLE_2006_S6265367 +Summary: Charm hadrons from fragmentation and B decays on the $\Upsilon(4S)$ +Status: VALIDATED +Authors: + - Jan Eike von Seggern <jan.eike.von.seggern at physik.hu-berlin.de> +References: + - Phys.Rev.D73:032002,2006. + - arXiv:hep-ex/0506068 + - doi:10.1103/PhysRevD.73.032002 +RunInfo: + $e^+ e^-$ analysis on the $\Upsilon(4S)$ resonance, with CoM boost -- 8.0~GeV~($e^−$) and 3.5~GeV~($e^+$) +NumEvents: 1000000 +PtCuts: [0] +Description: + Analysis of charm quark fragmentation at 10.6 GeV, based on a data + sample of 103 fb collected by the Belle detector at the KEKB accelerator. + Fragmentation into charm is studied for the main charmed hadron ground states, + namely $D^0$, $D^+$, $D^+_s$ and $\Lambda_c^+$, as well as the excited states + $D^{*0}$ and $D^{*+}$. This analysis can be used to constrain charm fragmentation + in Monte Carlo generators. Additionally, we determine the average number of + these charmed hadrons produced per B decay at the $\Upsilon(4S)$ resonance + and measure the distribution of their production angle in $e^+ e^-$ annihilation + events and in B decays. Modified: trunk/data/anainfo/D0_2007_S7075677.info ============================================================================== --- trunk/data/anainfo/D0_2007_S7075677.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/D0_2007_S7075677.info Mon Mar 1 22:37:13 2010 (r2290) @@ -19,5 +19,6 @@ NumEvents: 1000000 PtCuts: [0] Description: - Cross sections as a function of boson rapidity in $\p \bar{p}$ collisions at - $\sqrt{s}$ = 1.96 TeV, based on an integrated luminosity of $0.4~\text{fb}^{-1}$. + Cross sections as a function of boson rapidity in $p \bar{p}$ + collisions at $\sqrt{s}$ = 1.96 TeV, based on an integrated luminosity + of $0.4~\text{fb}^{-1}$. Modified: trunk/data/anainfo/H1_1994_S2919893.info ============================================================================== --- trunk/data/anainfo/H1_1994_S2919893.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/H1_1994_S2919893.info Mon Mar 1 22:37:13 2010 (r2290) @@ -11,7 +11,7 @@ - Z.Phys.C63:377-390,1994 - doi:10.1007/BF01580319 RunInfo: - e- p / e+ p deep inelastic scattering, + $e^- p$ / $e^+ p$ deep inelastic scattering, 820~GeV protons colliding with 26.7~GeV electrons NumEvents: 1000000 PtCuts: [0] Modified: trunk/data/anainfo/MC_LEADINGJETS.info ============================================================================== --- trunk/data/anainfo/MC_LEADINGJETS.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/MC_LEADINGJETS.info Mon Mar 1 22:37:13 2010 (r2290) @@ -4,10 +4,9 @@ Authors: - Andy Buckley <andy.buckley at cern.ch> RunInfo: - "* LHC pp QCD interactions at 0.9, 10 or 14 TeV. - * Particles with $c \tau > {}$10 mm should be set stable. - * Several $pT^\text{min}$ cutoffs are probably required to fill the - profile histograms." + LHC pp QCD interactions at 0.9, 10 or 14 TeV. Particles with + $c \tau > 10$ mm should be set stable. Several $p_\perp^\text{min}$ + cutoffs are probably required to fill the profile histograms. NumEvents: 1000000 PtCuts: [0] Description: Modified: trunk/data/anainfo/MC_WJETS.info ============================================================================== --- trunk/data/anainfo/MC_WJETS.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/MC_WJETS.info Mon Mar 1 22:37:13 2010 (r2290) @@ -1,14 +1,15 @@ Name: MC_WJETS -Summary: Monte Carlo validation observables for W[e nu] + jets production +Summary: Monte Carlo validation observables for $W[e \, \nu]$ + jets production Status: VALIDATED Authors: - Frank Siegert <frank.siegert at durham.ac.uk> References: RunInfo: - $e \nu$ + jets analysis. + $e \, \nu$ + jets analysis. NumEvents: 1000000 PtCuts: [0] Description: Available observables are W mass, pT of jets 1-4, jet multiplicity, - Delta eta (W, jet1), Delta R (jet2, jet3), Differential jet - rates 0->1, 1->2, 2->3, 3->4, Integrated 0--4 jet rates + $\Delta\eta(W, \text{jet1})$, $\Delta R(\text{jet2}, \text{jet3})$, + differential jet rates 0->1, 1->2, 2->3, 3->4, integrated 0--4 jet + rates. Modified: trunk/data/anainfo/MC_ZJETS.info ============================================================================== --- trunk/data/anainfo/MC_ZJETS.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/MC_ZJETS.info Mon Mar 1 22:37:13 2010 (r2290) @@ -1,5 +1,5 @@ Name: MC_ZJETS -Summary: Monte Carlo validation observables for Z[e+ e-] + jets production +Summary: Monte Carlo validation observables for $Z[e^+ \, e^-]$ + jets production Status: VALIDATED Authors: - Frank Siegert <frank.siegert at durham.ac.uk> @@ -11,5 +11,6 @@ PtCuts: [0] Description: Available observables are Z mass, pT of jets 1-4, jet multiplicity, - Delta eta (Z, jet1), Delta R (jet2, jet3), Differential jet - rates 0->1, 1->2, 2->3, 3->4, Integrated 0--4 jet rates + $\Delta\eta(Z, \text{jet1})$, $\Delta R(\text{jet2}, \text{jet3})$, + differential jet rates 0->1, 1->2, 2->3, 3->4, integrated 0--4 jet + rates. Modified: trunk/data/anainfo/Makefile.am ============================================================================== --- trunk/data/anainfo/Makefile.am Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/Makefile.am Mon Mar 1 22:37:13 2010 (r2290) @@ -2,6 +2,7 @@ ALEPH_1991_S2435284.info \ ALEPH_1996_S3486095.info \ ALEPH_1996_S3196992.info \ + BELLE_2006_S6265367.info \ CDF_1988_S1865951.info \ CDF_1990_S2089246.info \ CDF_1991_S2313472.info \ Modified: trunk/data/anainfo/PDG_HADRON_MULTIPLICITIES_RATIOS.info ============================================================================== --- trunk/data/anainfo/PDG_HADRON_MULTIPLICITIES_RATIOS.info Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/data/anainfo/PDG_HADRON_MULTIPLICITIES_RATIOS.info Mon Mar 1 22:37:13 2010 (r2290) @@ -1,6 +1,6 @@ Name: PDG_HADRON_MULTIPLICITIES_RATIOS Year: 2008 -Summary: Ratios (w.r.t. $pi^+/pi^-$) of hadron multiplicities in hadronic $e^+e^-$ events +Summary: Ratios (w.r.t. $\pi^+/\pi^-$) of hadron multiplicities in hadronic $e^+e^-$ events Experiment: PDG Collider: Various SpiresID: 7857373 @@ -10,14 +10,14 @@ References: - Phys. Lett. B, 667, 1 (2008) RunInfo: - Hadronic events in $e+e-$ collisions + Hadronic events in $e^+ e^-$ collisions NumEvents: 1000000 PtCuts: [0] Description: - Ratios (w.r.t. $\pi^+/\pi^-$) of hadron multiplicities in hadronic $e^+e^-$ + Ratios (w.r.t. $\pi^+/\pi^-$) of hadron multiplicities in hadronic $e^+ e^-$ events, taken from Review of Particle Properties 2008, table 40.1, - page 355. Average hadron multiplicities per hadronic $e^+e^-$ + page 355. Average hadron multiplicities per hadronic $e^+ e^-$ annihilation event at $\sqrt{s} \approx$ 10, 29--35, 91, and - 130--200 GeV,normalised to the pion multiplicity. The numbers are averages + 130--200 GeV, normalised to the pion multiplicity. The numbers are averages from various experiments. Correlations of the systematic uncertainties were considered for the calculation of the averages. Modified: trunk/doc/Makefile.am ============================================================================== --- trunk/doc/Makefile.am Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/doc/Makefile.am Mon Mar 1 22:37:13 2010 (r2290) @@ -28,9 +28,9 @@ if ENABLE_PYEXT -analyses.tex: $(top_srcdir)/include/Rivet/Analyses $(top_srcdir)/data/plotinfo $(top_srcdir)/data/anainfo mk-analysis-latex - LD_LIBRARY_PATH=$(top_srcdir)/src/.libs:$(FASTJETLIBPATH):$(HEPMCLIBPATH):$(LD_LIBRARY_PATH):$(prefix)/lib \ -DYLD_LIBRARY_PATH=$(top_srcdir)/src/.libs:$(FASTJETLIBPATH):$(HEPMCLIBPATH):$(DYLD_LIBRARY_PATH):$(prefix)/lib \ +analyses.tex: $(top_srcdir)/include/Rivet/Analyses $(top_srcdir)/src/Analyses $(top_srcdir)/data/plotinfo $(top_srcdir)/data/anainfo mk-analysis-latex + LD_LIBRARY_PATH=$(top_srcdir)/src/.libs:$(FASTJETLIBPATH):$(HEPMCLIBPATH):$(LD_LIBRARY_PATH) \ +DYLD_LIBRARY_PATH=$(top_srcdir)/src/.libs:$(FASTJETLIBPATH):$(HEPMCLIBPATH):$(DYLD_LIBRARY_PATH) \ RIVET_INFO_PATH=$(top_srcdir)/data/anainfo \ ./mk-analysis-latex analyses.tex Modified: trunk/doc/mk-analysis-html ============================================================================== --- trunk/doc/mk-analysis-html Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/doc/mk-analysis-html Mon Mar 1 22:37:13 2010 (r2290) @@ -29,9 +29,17 @@ if re.match(r"lib\..*-.*-%d\.%d" % (sys.version_info[0], sys.version_info[1]), d): dirs.append(os.path.join(pybuild, d)) sys.path = dirs + sys.path -os.environ["LD_LIBRARY_PATH"] = os.environ["LD_LIBRARY_PATH"] + ":" + \ - os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) -anadirs = glob.glob(os.path.join(os.getcwd(), "..", "src", "Analyses", "*", ".libs")) +try: + os.environ["LD_LIBRARY_PATH"] = os.environ["LD_LIBRARY_PATH"] + ":" + \ + os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) +except: + pass +try: + os.environ["DYLD_LIBRARY_PATH"] = os.environ["DYLD_LIBRARY_PATH"] + ":" + \ + os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) +except: + pass +anadirs = glob.glob(os.path.join(os.getcwd(), "..", "src", "Analyses", ".libs")) #print anadirs os.environ["RIVET_ANALYSIS_PATH"] = ":".join(anadirs) @@ -155,6 +163,10 @@ body = "\n\n".join(pages) outstr = head + toc + body + foot -f = open(OUTFILE, "w") -f.write(outstr) -f.close() + +if OUTFILE == "-": + sys.stdout.write(outstr) +else: + f = open(OUTFILE, "w") + f.write(outstr) + f.close() Modified: trunk/doc/mk-analysis-latex ============================================================================== --- trunk/doc/mk-analysis-latex Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/doc/mk-analysis-latex Mon Mar 1 22:37:13 2010 (r2290) @@ -28,9 +28,17 @@ if re.match(r"lib\..*-.*-%d\.%d" % (sys.version_info[0], sys.version_info[1]), d): dirs.append(os.path.join(pybuild, d)) sys.path = dirs + sys.path -os.environ["LD_LIBRARY_PATH"] = os.environ["LD_LIBRARY_PATH"] + ":" + \ - os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) -anadirs = glob.glob(os.path.join(os.getcwd(), "..", "src", "Analyses", "*", ".libs")) +try: + os.environ["LD_LIBRARY_PATH"] = os.environ["LD_LIBRARY_PATH"] + ":" + \ + os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) +except: + pass +try: + os.environ["DYLD_LIBRARY_PATH"] = os.environ["DYLD_LIBRARY_PATH"] + ":" + \ + os.path.abspath(os.path.join(os.getcwd(), "..", "src", ".libs")) +except: + pass +anadirs = glob.glob(os.path.join(os.getcwd(), "..", "src", "Analyses", ".libs")) #print anadirs os.environ["RIVET_ANALYSIS_PATH"] = ":".join(anadirs) @@ -65,6 +73,7 @@ for aname in sorted(list(all_analyses)): page = "" ana = rivet.AnalysisLoader.getAnalysis(aname) + page += "\\typeout{Handling analysis %s}\n" % aname page += "\\subsection{%s}\n" % aname.replace(r"_", r"\_") page += "\\textbf{%s}\\newline\n" % ana.summary() if ana.experiment(): @@ -90,7 +99,7 @@ page += " \\item %s\n" % s page += "\\end{itemize}\n" else: - page += "\\textbf{No authors listed}\\ \n" + page += "\\textbf{No authors listed}\\\\ \n" if ana.references(): @@ -109,7 +118,7 @@ page += " \\item %s\n" % r page += "\\end{itemize}\n" else: - page += "\\textbf{No references listed}\\ \n" + page += "\\textbf{No references listed}\\\\ \n" if ana.runInfo(): @@ -123,7 +132,7 @@ page += " \\item %s\n" % l page += "\\end{itemize}\n" else: - page += "\\textbf{No run details listed}\\ \n" + page += "\\textbf{No run details listed}\\\\ \n" for para in ana.description().split("\n\n"): @@ -197,6 +206,10 @@ groups["Misc."] + "\n\n" outstr = prefix + body -f = open(OUTFILE, "w") -f.write(outstr) -f.close() + +if OUTFILE == "-": + sys.stdout.write(outstr) +else: + f = open(OUTFILE, "w") + f.write(outstr) + f.close() Modified: trunk/doc/preamble.tex ============================================================================== --- trunk/doc/preamble.tex Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/doc/preamble.tex Mon Mar 1 22:37:13 2010 (r2290) @@ -1,15 +1,14 @@ - \usepackage{xspace,graphicx,mparhack,amsmath} \usepackage{amssymb,url,underscore,fancyvrb,cancel} \usepackage{hepnicenames,hepunits} \usepackage{picinpar,fancybox} \usepackage{microtype,relsize} -\usepackage{rivetversion} %\usepackage{xcolor} %\usepackage{palatino,mathpazo} %\usepackage{utopia} %\usepackage{euler} +\usepackage{rivetversion} \DeclareRobustCommand{\TODO}[1]{\ensuremath{\bigstar}{#1}\xspace} %\DeclareRobustCommand{\TODO}[1]{\textcolor{red!20!black}{\ensuremath{\bigstar}{#1}}\xspace} @@ -18,6 +17,11 @@ %% Bold tt font \DeclareFontShape{OT1}{cmtt}{bx}{n}{<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>cmttb10}{} +%% Auto bold math in bold environments +\makeatletter +\g at addto@macro\bfseries{\boldmath} +\makeatother + \newenvironment{snippet}{\Verbatim}{\endVerbatim} \newcommand{\kbd}[1]{\texttt{#1}\xspace} @@ -55,45 +59,51 @@ \newenvironment{detail}{\begin{window}[0,l,{\bendimg},{}]}{\end{window}\ignorespacesafterend} \newenvironment{dbldetail}{\begin{window}[0,l,{\dblbendimg},{}]}{\end{window}\ignorespacesafterend} -\newenvironment{change}% -{\begin{Sbox}% - \begin{minipage}{0.9\textwidth}% - \window[0,l,{\coneimg},{}] \noindent\hspace{-0.8ex}} - {\par\endwindow% - \end{minipage}% - \end{Sbox}% - \vspace{2mm}% - \noindent% - \begin{center}% - \cornersize{0.1} - \Ovalbox{\TheSbox}% - \end{center}% - \vspace{2mm}% - \ignorespacesafterend} +%% Make narrower and box (box must be able to break over pages) +\newenvironment{change}{\vspace{5mm}\hrule\nobreak\vspace{3mm}\begingroup% + \it\begin{window}[0,l,{\coneimg},{}] + \setlength{\parindent}{0cm}\noindent}{% + \end{window}\endgroup\vspace{3mm}\nobreak\hrule\vspace{5mm}\ignorespacesafterend} + +% \newenvironment{change}% +% {\begin{Sbox}% +% \begin{minipage}{0.9\textwidth}% +% \window[0,l,{\coneimg},{}] \noindent\hspace{-0.8ex}} +% {\par\endwindow% +% \end{minipage}% +% \end{Sbox}% +% \vspace{2mm}% +% \noindent% +% \begin{center}% +% \cornersize{0.1} +% \Ovalbox{\TheSbox}% +% \end{center}% +% \vspace{2mm}% +% \ignorespacesafterend} %% Make narrower and box (box must be able to break over pages) -% \newenvironment{philosophy}{\vspace{5mm}\hrule\nobreak\vspace{3mm}\begingroup% -% \it\begin{window}[0,l,{\thinkimg},{}] -% \setlength{\parindent}{0cm}\noindent}{% -% \end{window}\endgroup\vspace{3mm}\nobreak\hrule\vspace{5mm}\ignorespacesafterend} - -\newenvironment{philosophy}% -{\begin{Sbox}% - \begin{minipage}{0.9\textwidth}% - \it - \window[0,l,{\thinkimg},{}] - \setlength{\parindent}{0cm}\noindent\hspace{-0.8ex}} - {\par\endwindow% - \end{minipage}% - \end{Sbox}% - \vspace{2mm}% - \noindent% - \begin{center}% - \cornersize{0.01} - \Ovalbox{\TheSbox}% - \end{center}% - \vspace{2mm}% - \ignorespacesafterend} +\newenvironment{philosophy}{\vspace{5mm}\hrule\nobreak\vspace{3mm}\begingroup% + \it\begin{window}[0,l,{\thinkimg},{}] + \setlength{\parindent}{0cm}\noindent}{% + \end{window}\endgroup\vspace{3mm}\nobreak\hrule\vspace{5mm}\ignorespacesafterend} + +% \newenvironment{philosophy}% +% {\begin{Sbox}% +% \begin{minipage}{0.9\textwidth}% +% \it +% \window[0,l,{\thinkimg},{}] +% \setlength{\parindent}{0cm}\noindent\hspace{-0.8ex}} +% {\par\endwindow% +% \end{minipage}% +% \end{Sbox}% +% \vspace{2mm}% +% \noindent% +% \begin{center}% +% \cornersize{0.01} +% \Ovalbox{\TheSbox}% +% \end{center}% +% \vspace{2mm}% +% \ignorespacesafterend} \newcommand{\pT}{\ensuremath{p_\perp}\xspace} Modified: trunk/doc/rivet-manual.tex ============================================================================== --- trunk/doc/rivet-manual.tex Mon Mar 1 22:12:15 2010 (r2289) +++ trunk/doc/rivet-manual.tex Mon Mar 1 22:37:13 2010 (r2290) @@ -378,9 +378,9 @@ \paragraph{Conversion to ROOT} Your knee-jerk reaction is probably to want to know how to plot your Rivet -histograms in ROOT\cite{Antcheva:2009zz}. Don't worry; you can recover from this unfortunate behaviour -after only a few months of therapy. For unrepentant ROOT junkies, Rivet installs -an \kbd{aida2root} script, which converts the AIDA records to a \kbd{.root} file +histograms in ROOT\cite{Antcheva:2009zz}. Don't worry: a few months of therapy +can work wonders. For unrepentant ROOT junkies, Rivet installs an +\kbd{aida2root} script, which converts the AIDA records to a \kbd{.root} file full of ROOT \kbd{TGraph}s. One word of warning: a bug in ROOT means that \kbd{TGraph}s do not render properly from file because the axis is not drawn by default. To display the plots correctly in ROOT you will need to pass the @@ -411,32 +411,31 @@ \end{detail} \subsection{Chopping histograms} -\newcommand{\chophisto}{\kbd{rivet-chop-bins }} -In some cases you don't want to keep the complete histograms produced by Rivet. -For generator tuning purposes, for example, you want to get rid of the bins you -already know your generator is incapable of describing. You can use the script -\chophisto to specify those bin-ranges you want to keep individually for each -histogram in a Rivet output-file. The bin-ranges have to be specified using the -corresponding x-values of that histogram. The usage is very simple. You can -specify bin ranges of histograms to keep on the command-line via the \kbd{-b} -switch, which can be given multiple times, e.g. - -\kbd{\chophisto -b /CDF\_2001\_S4751469/d03-x01-y01:5:13 Rivet.aida} will chop -all bins with $x<5$ and $x>13~$ from the histogram -\kbd{/CDF\_2001\_S4751469/d03-x01-y01:5:13} in the file \kbd{Rivet.aida}. In -this case $x$ would be a leading jet \pT. +\newcommand{\chophisto}{\kbd{rivet-chopbins}\xspace} In some cases you don't +want to keep the complete histograms produced by Rivet. For generator tuning +purposes, for example, you want to get rid of the bins you already know your +generator is incapable of describing. You can use the script \chophisto to +specify those bin-ranges you want to keep individually for each histogram in a +Rivet output-file. The bin-ranges have to be specified using the corresponding +x-values of that histogram. The usage is very simple. You can specify bin +ranges of histograms to keep on the command-line via the \kbd{-b} +switch, which can be given multiple times, e.g.\\ +\kbd{\chophisto -b /CDF\_2001\_S4751469/d03-x01-y01:5:13 Rivet.aida}\\ +% +will chop all bins with $x<5$ and $x>13$ from the histogram +\kbd{/CDF\_2001\_S4751469/d03-x01-y01:5:13} in the file \kbd{Rivet.aida}. (In +this particular case, $x$ would be a leading jet \pT.) \subsection{Normalising histograms} \newcommand{\normhisto}{\kbd{rivet-rescale }} Sometimes you want to use histograms normalised to, e.g., the generator cross-section or the area of a reference-data histogram. The script \normhisto was designed for these -purposes. The usage is the following: - -\kbd{\normhisto -O observables -r RIVETDATA -o normalised Rivet.aida} - +purposes. The usage is the following:\\ +\kbd{\normhisto -O observables -r RIVETDATA -o normalised Rivet.aida}\\ +% By default, the normalised histograms are written to file in the AIDA-XML -format. You can also give the {-f} switch on the command line to produce flat -histograms. +format. You can also give the \kbd{-f} switch on the command line to produce +flat histograms. \paragraph{Normalising to reference data} You will need an output-file of Rivet, \kbd{Rivet.aida}, a folder that contains the reference-data histograms @@ -444,36 +443,51 @@ \kbd{observables} that contains the names of the histograms you would like to normalise - those not given in the file will remain un-normalised. These are examples of how your \kbd{observables} file might look like: +% +\begin{snippet} +/CDF_2000_S4155203/d01-x01-y01 +\end{snippet} -\begin{verbatim} /CDF_2000_S4155203/d01-x01-y01 \end{verbatim} If a histogram -{/CDF\_2000\_S4155203/d01-x01-y01} is found in one of the reference-data files -in the folder specified via the \kbd{-r} switch, then this will result in a -histogram of -\\{/CDF\_2000\_S4155203/d01-x01-y01} being normalised to the area of the -corresponding reference-data histogram. You can further specify a certain -range of bins to normalise as such: \begin{verbatim} -/CDF_2000_S4155203/d01-x01-y01:2:35 \end{verbatim} This will chop off the bins +If a histogram \kbd{/CDF\_2000\_S4155203/d01-x01-y01} is found in one of the +reference-data files in the folder specified via the \kbd{-r} switch, then this +will result in a histogram \kbd{/CDF\_2000\_S4155203/d01-x01-y01} being +normalised to the area of the corresponding reference-data histogram. You can +further specify a certain range of bins to normalise: +% +\begin{snippet} +/CDF_2000_S4155203/d01-x01-y01:2:35 +\end{snippet} +% +\noindent will chop off the bins with $x<2$ and $x>35$ of both, the histogram in your \kbd{Rivet.aida} and the reference-data histogram. The remaining MC histogram is then normalised to the remaining area of the reference-data histogram. -\paragraph{Normalising to arbitrary areas} In the file \kbd{observables} you +\paragraph{Normalising to arbitrary areas}% +In the file \kbd{observables} you can further specify an arbitrary number, e.g. a generator cross-section, as -follows: \begin{verbatim} /CDF_2000_S4155203/d01-x01-y01 1.0 \end{verbatim} -This will result in the histogram {/CDF\_2000\_S4155203/d01-x01-y01} being -normalised to one. - -\begin{verbatim} /CDF_2000_S4155203/d01-x01-y01:2:35 1.0 \end{verbatim} - -This will chop off the bins with $x<2$ and $x>35$ of the histogram\\ -{/CDF\_2000\_S4155203/d01-x01-y01} first and normalise the remaining histogram -to one. +follows: +% +\begin{snippet} +/CDF_2000_S4155203/d01-x01-y01 1.0 +\end{snippet} +\noindent will result in the histogram \kbd{/CDF\_2000\_S4155203/d01-x01-y01} being +normalised to 1.0, and +% +\begin{snippet} +/CDF_2000_S4155203/d01-x01-y01:2:35 1.0 +\end{snippet} +% +\noindent will chop off the bins with $x<2$ and $x>35$ of the histogram\\ +\kbd{/CDF\_2000\_S4155203/d01-x01-y01} first and normalise the remaining +histogram to one. -\subsection{Plotting and comparing data} -Rivet comes with three commands --- \kbd{rivet-mkhtml}, \kbd{compare-histos} and \kbd{make-plots} --- -for comparing and plotting data files. These commands produce nice comparison -plots of publication quality from the AIDA format text files. +\subsection{Plotting and comparing data} +Rivet comes with three commands --- \kbd{rivet-mkhtml}, \kbd{compare-histos} and +\kbd{make-plots} --- for comparing and plotting data files. These commands +produce nice comparison plots of publication quality from the AIDA format text +files. The high level program \kbd{rivet-mkhtml} will automatically create a plot webpage from the given AIDA files. It searches for reference data automatically @@ -779,7 +793,7 @@ type-safety, this proliferation of dynamic casting may worry you: the compiler can't possibly check if a projection of the requested name has been registered, nor whether the downcast to the requested concrete type is - legal. These are very legitimate concerns!\\ + legal. These are very legitimate concerns! In truth, we'd like to have this level of extra safety! But in the past, when projections were held as members of \code{ProjectionApplier} classes rather @@ -787,7 +801,7 @@ strong typing were outweighed by more serious and subtle bugs relating to projection lifetime and object ``slicing''. At least when the current approach goes wrong it will throw an unmissable \emph{runtime} error --- until it's - fixed, of course! --- rather than silently do the wrong thing.\\ + fixed, of course! --- rather than silently do the wrong thing. Our problems here are a microcosm of the perpetual language battle between strict and dynamic typing, runtime versus compile time errors. In practice, @@ -799,7 +813,7 @@ at runtime. By pushing \emph{some} checking to the domain of runtime errors, Rivet's code is (we believe) in practice safer, and certainly more clear and elegant. However, we believe that with runtime checking should come a culture - of unit testing, which is not yet in place in Rivet.\\ + of unit testing, which is not yet in place in Rivet. As a final thought, one reason for Rivet's internal complexity is that C++ is just not a very good language for this sort of thing: we are operating on the
More information about the Rivet-svn mailing list |