Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F9501379
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
97 KB
Subscribers
None
View Options
diff --git a/analyses/Makefile.am b/analyses/Makefile.am
--- a/analyses/Makefile.am
+++ b/analyses/Makefile.am
@@ -1,61 +1,62 @@
AUTOMAKE_OPTIONS = -Wno-portability
SHELL := bash -O extglob
if ENABLE_ANALYSES
PLUGIN_DIRS = $(shell ls -d $(srcdir)/plugin*)
PLUGIN_NAMES = $(notdir $(subst plugin,,$(PLUGIN_DIRS)))
PLUGIN_LIBS = $(patsubst %,Rivet%Analyses.so,$(PLUGIN_NAMES))
PLUGIN_DATAFILES = $(shell ls $(abs_srcdir)/plugin*/*.{info,plot,yoda})
CLEANFILES = $(PLUGIN_LIBS)
EXTRA_DIST = $(PLUGIN_DIRS)
%.so:
@+echo && RIVET_BUILDPLUGIN_BEFORE_INSTALL=1 bash $(top_builddir)/bin/rivet-buildplugin -j2 $@ $^ -I$(top_builddir)/include
RivetALICEAnalyses.so: $(filter-out $(srcdir)/pluginALICE/tmp*.cc, $(wildcard $(srcdir)/pluginALICE/*.cc))
RivetATLASAnalyses.so: $(filter-out $(srcdir)/pluginATLAS/tmp*.cc, $(wildcard $(srcdir)/pluginATLAS/*.cc))
RivetBABARAnalyses.so: $(filter-out $(srcdir)/pluginBABAR/tmp*.cc, $(wildcard $(srcdir)/pluginBABAR/*.cc))
RivetBELLEAnalyses.so: $(filter-out $(srcdir)/pluginBELLE/tmp*.cc, $(wildcard $(srcdir)/pluginBELLE/*.cc))
RivetBESAnalyses.so: $(filter-out $(srcdir)/pluginBES/tmp*.cc, $(wildcard $(srcdir)/pluginBES/*.cc))
RivetCDFAnalyses.so: $(filter-out $(srcdir)/pluginCDF/tmp*.cc, $(wildcard $(srcdir)/pluginCDF/*.cc))
+RivetCESRAnalyses.so: $(filter-out $(srcdir)/pluginCESR/tmp*.cc, $(wildcard $(srcdir)/pluginCESR/*.cc))
RivetCMSAnalyses.so: $(filter-out $(srcdir)/pluginCMS/tmp*.cc, $(wildcard $(srcdir)/pluginCMS/*.cc))
RivetD0Analyses.so: $(filter-out $(srcdir)/pluginD0/tmp*.cc, $(wildcard $(srcdir)/pluginD0/*.cc))
RivetFrascatiAnalyses.so: $(filter-out $(srcdir)/pluginFrascati/tmp*.cc, $(wildcard $(srcdir)/pluginFrascati/*.cc))
RivetHERAAnalyses.so: $(filter-out $(srcdir)/pluginHERA/tmp*.cc, $(wildcard $(srcdir)/pluginHERA/*.cc))
RivetLEPAnalyses.so: $(filter-out $(srcdir)/pluginLEP/tmp*.cc, $(wildcard $(srcdir)/pluginLEP/*.cc))
RivetLHCbAnalyses.so: $(filter-out $(srcdir)/pluginLHCb/tmp*.cc, $(wildcard $(srcdir)/pluginLHCb/*.cc))
RivetLHCfAnalyses.so: $(filter-out $(srcdir)/pluginLHCf/tmp*.cc, $(wildcard $(srcdir)/pluginLHCf/*.cc))
RivetMCAnalyses.so: $(filter-out $(srcdir)/pluginMC/tmp*.cc, $(wildcard $(srcdir)/pluginMC/*.cc))
RivetNovosibirskAnalyses.so: $(filter-out $(srcdir)/pluginNovosibirsk/tmp*.cc, $(wildcard $(srcdir)/pluginNovosibirsk/*.cc))
RivetOrsayAnalyses.so: $(filter-out $(srcdir)/pluginOrsay/tmp*.cc, $(wildcard $(srcdir)/pluginOrsay/*.cc))
RivetMiscAnalyses.so: $(filter-out $(srcdir)/pluginMisc/tmp*.cc, $(wildcard $(srcdir)/pluginMisc/*.cc))
RivetPetraAnalyses.so: $(filter-out $(srcdir)/pluginPetra/tmp*.cc, $(wildcard $(srcdir)/pluginPetra/*.cc))
RivetRHICAnalyses.so: $(filter-out $(srcdir)/pluginRHIC/tmp*.cc, $(wildcard $(srcdir)/pluginRHIC/*.cc))
RivetSPSAnalyses.so: $(filter-out $(srcdir)/pluginSPS/tmp*.cc, $(wildcard $(srcdir)/pluginSPS/*.cc))
RivetTOTEMAnalyses.so: $(filter-out $(srcdir)/pluginTOTEM/tmp*.cc, $(wildcard $(srcdir)/pluginTOTEM/*.cc))
RivetTristanAnalyses.so: $(filter-out $(srcdir)/pluginTristan/tmp*.cc, $(wildcard $(srcdir)/pluginTristan/*.cc))
all-local: $(PLUGIN_LIBS) $(PLUGIN_DATAFILES)
mkdir -p $(builddir)/data
$(LN_S) -f $(abs_srcdir)/plugin*/*.{info,plot,yoda} $(builddir)/data
clean-local:
rm -rf data
install-exec-local: $(PLUGIN_LIBS)
$(INSTALL) $^ $(DESTDIR)$(libdir)
install-data-local: $(PLUGIN_DATAFILES)
@echo "Installing analysis data files..."
$(mkdir_p) $(DESTDIR)$(pkgdatadir)
cp $(abs_srcdir)/plugin*/*.{info,plot,yoda} $(DESTDIR)$(pkgdatadir)/
#@$(install_sh_DATA) $^ $(DESTDIR)$(pkgdatadir)
uninstall-local:
cd $(DESTDIR)$(libdir) && rm -f $(PLUGIN_LIBS)
@echo "Uninstalling analysis data files..."
rm -f $(DESTDIR)$(pkgdatadir)/*.{info,plot,yoda}
endif
diff --git a/analyses/pluginCESR/CLEOC_2008_I777917.cc b/analyses/pluginCESR/CLEOC_2008_I777917.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEOC_2008_I777917.cc
@@ -0,0 +1,363 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+#include "Rivet/Projections/UnstableParticles.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEOC_2008_I777917 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEOC_2008_I777917);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+ declare(UnstableParticles(), "UFS");
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ _c_muons = bookCounter("/TMP/sigma_muons");
+ _c_D0D0 = bookCounter("/TMP/sigma_D0D0");
+ _c_DpDm = bookCounter("/TMP/sigma_DpDm");
+ _c_DsDs = bookCounter("/TMP/sigma_DsDs");
+ _c_D0D0S = bookCounter("/TMP/sigma_D0D0S");
+ _c_DpDmS = bookCounter("/TMP/sigma_DpDmS");
+ _c_DsDsS = bookCounter("/TMP/sigma_DsDsS");
+ _c_D0SD0S = bookCounter("/TMP/sigma_D0SD0S");
+ _c_DpSDmS = bookCounter("/TMP/sigma_DpSDmS");
+ _c_DsSDsS = bookCounter("/TMP/sigma_DsSDsS");
+ _c_DD = bookCounter("/TMP/sigma_DD");
+ _c_DDX = bookCounter("/TMP/sigma_DDX");
+ _c_DSDpi = bookCounter("/TMP/sigma_DSDpi");
+ _c_DSDSpi = bookCounter("/TMP/sigma_DSDSpi");
+ }
+
+ void findChildren(const Particle & p,map<long,int> & nRes, int &ncount) {
+ foreach(const Particle &child, p.children()) {
+ if(child.children().empty()) {
+ nRes[child.pdgId()]-=1;
+ --ncount;
+ }
+ else
+ findChildren(child,nRes,ncount);
+ }
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+ // total hadronic and muonic cross sections
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ _c_muons->fill(event.weight());
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ // identified final state with D mesons
+ const FinalState& ufs = apply<UnstableParticles>(event, "UFS");
+ for(unsigned int ix=0;ix<ufs.particles().size();++ix) {
+ const Particle& p1 = ufs.particles()[ix];
+ int id1 = abs(p1.pdgId());
+ if(id1 != 411 && id1 != 413 && id1 != 421 && id1 != 423 &&
+ id1 != 431 && id1 != 433)
+ continue;
+ // check fs
+ bool fs = true;
+ foreach(const Particle & child, p1.children()) {
+ if(child.pdgId()==p1.pdgId()) {
+ fs = false;
+ break;
+ }
+ }
+ if(!fs) continue;
+ // find the children
+ map<long,int> nRes = nCount;
+ int ncount = ntotal;
+ findChildren(p1,nRes,ncount);
+ bool matched=false;
+ int sign = p1.pdgId()/id1;
+ // loop over the other fs particles
+ for(unsigned int iy=ix+1;iy<ufs.particles().size();++iy) {
+ const Particle& p2 = ufs.particles()[iy];
+ fs = true;
+ foreach(const Particle & child, p2.children()) {
+ if(child.pdgId()==p2.pdgId()) {
+ fs = false;
+ break;
+ }
+ }
+ if(!fs) continue;
+ if(p2.pdgId()/abs(p2.pdgId())==sign) continue;
+ int id2 = abs(p2.pdgId());
+ if(id2 != 411 && id2 != 413 && id2 != 421 && id2 != 423 &&
+ id2 != 431 && id2 != 433)
+ continue;
+ if(!p2.parents().empty() && p2.parents()[0].pdgId()==p1.pdgId())
+ continue;
+ if((id1==411 || id1==421 || id1==431) && (id2==411 || id2==421 || id2==431 ))
+ _c_DDX->fill(event.weight());
+ map<long,int> nRes2 = nRes;
+ int ncount2 = ncount;
+ findChildren(p2,nRes2,ncount2);
+ if(ncount2==0) {
+ matched=true;
+ for(auto const & val : nRes2) {
+ if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ if(id1==411 && id2==411) {
+ _c_DpDm->fill(event.weight());
+ _c_DD ->fill(event.weight());
+ }
+ else if(id1==421&& id2==421) {
+ _c_D0D0->fill(event.weight());
+ _c_DD ->fill(event.weight());
+ }
+ else if(id1==431&& id2==431) {
+ _c_DsDs->fill(event.weight());
+ }
+ else if(id1==413 && id2==413) {
+ _c_DpSDmS->fill(event.weight());
+ }
+ else if(id1==423&& id2==423) {
+ _c_D0SD0S->fill(event.weight());
+ }
+ else if(id1==433&& id2==433) {
+ _c_DsSDsS->fill(event.weight());
+ }
+ else if((id1==421 && id2==423) ||
+ (id1==423 && id2==421)) {
+ _c_D0D0S->fill(event.weight());
+ }
+ else if((id1==411 && id2==413) ||
+ (id1==413 && id2==411)) {
+ _c_DpDmS->fill(event.weight());
+ }
+ else if((id1==431 && id2==433) ||
+ (id1==433 && id2==431)) {
+ _c_DsDsS->fill(event.weight());
+ }
+ }
+ }
+ else if(ncount2==1) {
+ int ipi=0;
+ if(nRes2[111]==1 && nRes2[211]==0 && nRes[-211]==0 )
+ ipi = 111;
+ else if(nRes2[111]==0 && nRes2[211]==1 && nRes[-211]==0 )
+ ipi = 211;
+ else if(nRes2[111]==0 && nRes2[211]==0 && nRes[-211]==1 )
+ ipi =-211;
+ if(ipi==0) continue;
+ matched=true;
+ for(auto const & val : nRes2) {
+ if(val.first==ipi)
+ continue;
+ else if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ bool Ddecay = false;
+ Particle mother = p1;
+ while (!mother.parents().empty()) {
+ mother = mother.parents()[0];
+ if(PID::isCharmMeson(mother.pdgId()) && mother.pdgId()!=p1.pdgId()) {
+ Ddecay = true;
+ break;
+ }
+ }
+ mother = p2;
+ while (!mother.parents().empty()) {
+ mother = mother.parents()[0];
+ if(PID::isCharmMeson(mother.pdgId()) && mother.pdgId()!=p1.pdgId()) {
+ Ddecay = true;
+ break;
+ }
+ }
+ if(Ddecay) continue;
+ if((id1==413 || id1==423 ) &&
+ (id2==413 || id2==423 )) {
+ _c_DSDSpi->fill(event.weight());
+ }
+ else if((id1==411 || id1==421 ) &&
+ (id2==413 || id2==423 )) {
+ _c_DSDpi->fill(event.weight());
+ }
+ else if((id1==413 || id1==423 ) &&
+ (id2==411 || id2==421 )) {
+ _c_DSDpi->fill(event.weight());
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ // R
+ Scatter1D R = *_c_hadrons/ *_c_muons;
+ double rval = R.point(0).x();
+ pair<double,double> rerr = R.point(0).xErrs();
+ double fact = crossSection()/ sumOfWeights() /nanobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ double sig_c = _c_DDX->val()*fact;
+ double err_c = _c_DDX->err()*fact;
+ double sig_m = _c_muons ->val()*fact;
+ double err_m = _c_muons ->err()*fact;
+ Scatter2D temphisto(refData(6, 1, 2));
+ Scatter2DPtr charm = bookScatter2D(6,1,1);
+ Scatter2DPtr hadrons = bookScatter2D("sigma_hadrons");
+ Scatter2DPtr muons = bookScatter2D("sigma_muons" );
+ Scatter2DPtr mult = bookScatter2D(6,1,2);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/MeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, rval, ex, rerr);
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ charm ->addPoint(x, sig_c, ex, make_pair(err_c,err_c));
+ muons ->addPoint(x, sig_m, ex, make_pair(err_m,err_m));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ charm ->addPoint(x, 0., ex, make_pair(0.,.0));
+ muons ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ for(unsigned int ix=1;ix<6;++ix) {
+ unsigned int imax(0);
+ if (ix<=3) imax = 4;
+ else imax = 3;
+ for(unsigned int iy=1;iy<imax;++iy) {
+ double sigma(0),error(0);
+ if(ix==1) {
+ if(iy==1) {
+ sigma = _c_D0D0->val()/picobarn;
+ error = _c_D0D0->err()/picobarn;
+ }
+ else if(iy==2) {
+ sigma = _c_D0D0S->val()/picobarn;
+ error = _c_D0D0S->err()/picobarn;
+ }
+ else if(iy==3) {
+ sigma = _c_D0SD0S->val()/picobarn;
+ error = _c_D0SD0S->err()/picobarn;
+ }
+ }
+ else if(ix==2) {
+ if(iy==1) {
+ sigma = _c_DpDm->val()/picobarn;
+ error = _c_DpDm->err()/picobarn;
+ }
+ else if(iy==2) {
+ sigma = _c_DpDmS->val()/picobarn;
+ error = _c_DpDmS->err()/picobarn;
+ }
+ else if(iy==3) {
+ sigma = _c_DpSDmS->val()/picobarn;
+ error = _c_DpSDmS->err()/picobarn;
+ }
+ }
+ else if(ix==3) {
+ if(iy==1) {
+ sigma = _c_DsDs->val()/picobarn;
+ error = _c_DsDs->err()/picobarn;
+ }
+ else if(iy==2) {
+ sigma = _c_DsDsS->val()/picobarn;
+ error = _c_DsDsS->err()/picobarn;
+ }
+ else if(iy==3) {
+ sigma = _c_DsSDsS->val()/picobarn;
+ error = _c_DsSDsS->err()/picobarn;
+ }
+ }
+ else if(ix==4) {
+ if(iy==1) {
+ sigma = _c_DSDpi->val()/picobarn;
+ error = _c_DSDpi->err()/picobarn;
+ }
+ else if(iy==2) {
+ sigma = _c_DSDSpi->val()/picobarn;
+ error = _c_DSDSpi->err()/picobarn;
+ }
+ }
+ else if(ix==5) {
+ if(iy==1) {
+ sigma = _c_DD->val()/nanobarn;
+ error = _c_DD->err()/nanobarn;
+ }
+ else if(iy==2) {
+ sigma = _c_DDX->val()/nanobarn;
+ error = _c_DDX->err()/nanobarn;
+ }
+ }
+ sigma *= crossSection()/ sumOfWeights();
+ error *= crossSection()/ sumOfWeights();
+ Scatter2D temphisto(refData(ix, 1, iy));
+ Scatter2DPtr mult = bookScatter2D(ix,1,iy);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/MeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, sigma, ex, make_pair(error,error));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_D0D0, _c_DpDm,_c_DsDs;
+ CounterPtr _c_D0D0S, _c_DpDmS,_c_DsDsS;
+ CounterPtr _c_D0SD0S, _c_DpSDmS,_c_DsSDsS;
+ CounterPtr _c_DD, _c_DDX;
+ CounterPtr _c_DSDpi, _c_DSDSpi;
+ CounterPtr _c_hadrons, _c_muons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEOC_2008_I777917);
+
+
+}
diff --git a/analyses/pluginCESR/CLEOC_2008_I777917.info b/analyses/pluginCESR/CLEOC_2008_I777917.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEOC_2008_I777917.info
@@ -0,0 +1,36 @@
+Name: CLEOC_2008_I777917
+Year: 2008
+Summary: Measurement of charm final-states, the total hadronic cross section and $R$ for energies between 3.92 and 4.26 GeV
+Experiment: CLEOC
+Collider: CESR
+InspireID: 777917
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D80 (2009) 072001, 2009
+RunInfo: e+ e- to hadrons and e+ e- to mu+ mu- (for normalization)
+NeedCrossSection: yes
+Beams: [e-, e+]
+Description:
+ 'Measurement of charm final-states, the total hadronic cross section
+ and $R$ for energies between 3.92 and 4.26 GeV
+ The muonic cross section is also outputted to the yoda file
+ so that ratio $R$ can be recalcuated if runs are combined.'
+BibKey: CroninHennessy:2008yi
+BibTeX: '@article{CroninHennessy:2008yi,
+ author = "Cronin-Hennessy, D. and others",
+ title = "{Measurement of Charm Production Cross Sections in e+e-
+ Annihilation at Energies between 3.97 and 4.26-GeV}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D80",
+ year = "2009",
+ pages = "072001",
+ doi = "10.1103/PhysRevD.80.072001",
+ eprint = "0801.3418",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "CLNS07-2015, CLEO-07-19",
+ SLACcitation = "%%CITATION = ARXIV:0801.3418;%%"
+}'
diff --git a/analyses/pluginCESR/CLEOC_2008_I777917.plot b/analyses/pluginCESR/CLEOC_2008_I777917.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEOC_2008_I777917.plot
@@ -0,0 +1,138 @@
+BEGIN PLOT /CLEOC_2008_I777917/d06-x01-y01
+Title=$\sigma(e^+e^-\to \text{charm})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to \text{charm})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d06-x01-y02
+Title=$R=\sigma(e^+e^-\to \text{hadrons})/\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$R$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/sigma_muons
+Title=$\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to \mu^+\mu^-)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/sigma_hadrons
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d01-x01-y01
+Title=$\sigma(e^+e^-\to D^0\bar{D}^0)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^0\bar{D}^0)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/d01-x01-y02
+Title=$\sigma(e^+e^-\to D^0\bar{D}^{*0} +\text{c.c})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^0\bar{D}^{*0} +\text{c.c} )/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/d01-x01-y03
+Title=$\sigma(e^+e^-\to D^{*0}\bar{D}^{*0})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^{*0}\bar{D}^{*0})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d02-x01-y01
+Title=$\sigma(e^+e^-\to D^+D^-)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^+D^-)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/d02-x01-y02
+Title=$\sigma(e^+e^-\to D^+D^{*-} +\text{c.c})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^+D^{*-} +\text{c.c} )/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/d02-x01-y03
+Title=$\sigma(e^+e^-\to D^{*+}D^{*-})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^{*-}D^{*+})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d03-x01-y01
+Title=$\sigma(e^+e^-\to D_s^+D_s^-)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D_s^+D_s^-)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d03-x01-y02
+Title=$\sigma(e^+e^-\to D_s^+D_s^{*-} +\text{c.c})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D_s^+D_s^{*-} +\text{c.c} )/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d03-x01-y03
+Title=$\sigma(e^+e^-\to D_s^{*+}D_s^{*-})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D_s^{*-}D_s^{*+})/pb$
+LogY=0
+ConnectGaps=1
+XMin=3920
+XMax=4260
+END PLOT
+
+
+
+BEGIN PLOT /CLEOC_2008_I777917/d04-x01-y01
+Title=$\sigma(e^+e^-\to DD^{*}\pi )$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to DD^{*}\pi)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEOC_2008_I777917/d04-x01-y02
+Title=$\sigma(e^+e^-\to D^{*}D^{*}\pi)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D^{*}D^{*}\pi)/pb$
+LogY=0
+ConnectGaps=1
+XMin=3920
+XMax=4260
+END PLOT
+
+
+
+
+BEGIN PLOT /CLEOC_2008_I777917/d05-x01-y01
+Title=$\sigma(e^+e^-\to D\bar{D})$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D\bar{D})/$nb
+LogY=0
+ConnectGaps=1
+END PLOT
+
+BEGIN PLOT /CLEOC_2008_I777917/d05-x01-y02
+Title=$\sigma(e^+e^-\to D\bar{D}+X)$
+XLabel=$\sqrt{s}$/MeV
+YLabel=$\sigma(e^+e^-\to D\bar{D}+X)/$nb
+LogY=0
+ConnectGaps=1
+END PLOT
\ No newline at end of file
diff --git a/analyses/pluginCESR/CLEOC_2008_I777917.yoda b/analyses/pluginCESR/CLEOC_2008_I777917.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEOC_2008_I777917.yoda
@@ -0,0 +1,271 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d01-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 8.600000e+01 2.927456e+01 2.927456e+01
+3.990000e+03 0.000000e+00 0.000000e+00 1.330000e+02 4.143670e+01 4.143670e+01
+4.010000e+03 0.000000e+00 0.000000e+00 7.600000e+01 2.517936e+01 2.517936e+01
+4.030000e+03 0.000000e+00 0.000000e+00 3.340000e+02 7.158911e+01 7.158911e+01
+4.060000e+03 0.000000e+00 0.000000e+00 4.100000e+02 7.421590e+01 7.421590e+01
+4.120000e+03 0.000000e+00 0.000000e+00 3.030000e+02 7.138627e+01 7.138627e+01
+4.140000e+03 0.000000e+00 0.000000e+00 1.770000e+02 4.079216e+01 4.079216e+01
+4.160000e+03 0.000000e+00 0.000000e+00 1.670000e+02 2.912044e+01 2.912044e+01
+4.170000e+03 0.000000e+00 0.000000e+00 1.770000e+02 1.063015e+01 1.063015e+01
+4.180000e+03 0.000000e+00 0.000000e+00 1.790000e+02 3.981206e+01 3.981206e+01
+4.200000e+03 0.000000e+00 0.000000e+00 1.800000e+02 5.557877e+01 5.557877e+01
+4.260000e+03 0.000000e+00 0.000000e+00 8.600000e+01 1.843909e+01 1.843909e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d01-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d01-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 2.280000e+03 1.550484e+02 1.550484e+02
+3.990000e+03 0.000000e+00 0.000000e+00 2.740000e+03 1.824774e+02 1.824774e+02
+4.010000e+03 0.000000e+00 0.000000e+00 3.320000e+03 1.137453e+02 1.137453e+02
+4.015000e+03 0.000000e+00 0.000000e+00 3.840000e+03 3.118493e+02 3.118493e+02
+4.030000e+03 0.000000e+00 0.000000e+00 3.200000e+03 2.130023e+02 2.130023e+02
+4.060000e+03 0.000000e+00 0.000000e+00 2.230000e+03 1.654841e+02 1.654841e+02
+4.120000e+03 0.000000e+00 0.000000e+00 1.400000e+03 1.432794e+02 1.432794e+02
+4.140000e+03 0.000000e+00 0.000000e+00 1.350000e+03 1.100727e+02 1.100727e+02
+4.160000e+03 0.000000e+00 0.000000e+00 1.252000e+03 8.130191e+01 8.130191e+01
+4.170000e+03 0.000000e+00 0.000000e+00 1.272000e+03 4.701064e+01 4.701064e+01
+4.180000e+03 0.000000e+00 0.000000e+00 1.211000e+03 1.007224e+02 1.007224e+02
+4.200000e+03 0.000000e+00 0.000000e+00 1.030000e+03 1.278828e+02 1.278828e+02
+4.260000e+03 0.000000e+00 0.000000e+00 1.080000e+03 6.964194e+01 6.964194e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d01-x01-y03
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d01-x01-y03
+Title: doi:10.17182/hepdata.47185.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.015000e+03 0.000000e+00 0.000000e+00 2.130000e+02 7.653104e+01 7.653104e+01
+4.030000e+03 0.000000e+00 0.000000e+00 2.000000e+03 1.564001e+02 1.564001e+02
+4.060000e+03 0.000000e+00 0.000000e+00 2.290000e+03 1.705520e+02 1.705520e+02
+4.120000e+03 0.000000e+00 0.000000e+00 2.550000e+03 1.952332e+02 1.952332e+02
+4.140000e+03 0.000000e+00 0.000000e+00 2.443000e+03 1.633432e+02 1.633432e+02
+4.160000e+03 0.000000e+00 0.000000e+00 2.566000e+03 1.472990e+02 1.472990e+02
+4.170000e+03 0.000000e+00 0.000000e+00 2.363000e+03 1.126144e+02 1.126144e+02
+4.180000e+03 0.000000e+00 0.000000e+00 2.173000e+03 1.456709e+02 1.456709e+02
+4.200000e+03 0.000000e+00 0.000000e+00 1.830000e+03 1.634534e+02 1.634534e+02
+4.260000e+03 0.000000e+00 0.000000e+00 2.690000e+02 4.396590e+01 4.396590e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d02-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d02-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 1.370000e+02 2.668333e+01 2.668333e+01
+3.990000e+03 0.000000e+00 0.000000e+00 9.000000e+01 2.236068e+01 2.236068e+01
+4.010000e+03 0.000000e+00 0.000000e+00 1.350000e+02 2.280351e+01 2.280351e+01
+4.015000e+03 0.000000e+00 0.000000e+00 3.800000e+01 2.009975e+01 2.009975e+01
+4.030000e+03 0.000000e+00 0.000000e+00 1.960000e+02 3.613862e+01 3.613862e+01
+4.060000e+03 0.000000e+00 0.000000e+00 4.800000e+02 5.923681e+01 5.923681e+01
+4.120000e+03 0.000000e+00 0.000000e+00 3.100000e+02 5.192302e+01 5.192302e+01
+4.140000e+03 0.000000e+00 0.000000e+00 2.000000e+02 3.036445e+01 3.036445e+01
+4.160000e+03 0.000000e+00 0.000000e+00 2.000000e+02 2.284732e+01 2.284732e+01
+4.170000e+03 0.000000e+00 0.000000e+00 1.820000e+02 1.000000e+01 1.000000e+01
+4.180000e+03 0.000000e+00 0.000000e+00 1.970000e+02 2.846050e+01 2.846050e+01
+4.200000e+03 0.000000e+00 0.000000e+00 1.810000e+02 3.687818e+01 3.687818e+01
+4.260000e+03 0.000000e+00 0.000000e+00 9.400000e+01 1.360147e+01 1.360147e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d02-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d02-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 2.230000e+03 1.514497e+02 1.514497e+02
+3.990000e+03 0.000000e+00 0.000000e+00 2.750000e+03 1.821318e+02 1.821318e+02
+4.010000e+03 0.000000e+00 0.000000e+00 3.300000e+03 1.731127e+02 1.731127e+02
+4.015000e+03 0.000000e+00 0.000000e+00 3.703000e+03 3.015825e+02 3.015825e+02
+4.030000e+03 0.000000e+00 0.000000e+00 3.300000e+03 2.128497e+02 2.128497e+02
+4.060000e+03 0.000000e+00 0.000000e+00 2.170000e+03 1.610124e+02 1.610124e+02
+4.120000e+03 0.000000e+00 0.000000e+00 1.560000e+03 1.459623e+02 1.459623e+02
+4.140000e+03 0.000000e+00 0.000000e+00 1.376000e+03 1.086876e+02 1.086876e+02
+4.160000e+03 0.000000e+00 0.000000e+00 1.376000e+03 8.348653e+01 8.348653e+01
+4.170000e+03 0.000000e+00 0.000000e+00 1.285000e+03 4.753946e+01 4.753946e+01
+4.180000e+03 0.000000e+00 0.000000e+00 1.296000e+03 9.749359e+01 9.749359e+01
+4.200000e+03 0.000000e+00 0.000000e+00 1.070000e+03 1.214578e+02 1.214578e+02
+4.260000e+03 0.000000e+00 0.000000e+00 1.022000e+03 6.435060e+01 6.435060e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d02-x01-y03
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d02-x01-y03
+Title: doi:10.17182/hepdata.47185.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.030000e+03 0.000000e+00 0.000000e+00 1.400000e+03 1.823623e+02 1.823623e+02
+4.060000e+03 0.000000e+00 0.000000e+00 2.390000e+03 2.486524e+02 2.486524e+02
+4.120000e+03 0.000000e+00 0.000000e+00 2.280000e+03 2.554858e+02 2.554858e+02
+4.140000e+03 0.000000e+00 0.000000e+00 2.556000e+03 2.298173e+02 2.298173e+02
+4.160000e+03 0.000000e+00 0.000000e+00 2.479000e+03 1.786449e+02 1.786449e+02
+4.170000e+03 0.000000e+00 0.000000e+00 2.357000e+03 1.126144e+02 1.126144e+02
+4.180000e+03 0.000000e+00 0.000000e+00 2.145000e+03 1.994618e+02 1.994618e+02
+4.200000e+03 0.000000e+00 0.000000e+00 1.564000e+03 2.273785e+02 2.273785e+02
+4.260000e+03 0.000000e+00 0.000000e+00 2.370000e+02 5.510898e+01 5.510898e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d03-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d03-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t3
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 1.020000e+02 2.668333e+01 2.668333e+01
+3.990000e+03 0.000000e+00 0.000000e+00 1.330000e+02 3.178050e+01 3.178050e+01
+4.010000e+03 0.000000e+00 0.000000e+00 2.690000e+02 3.354102e+01 3.354102e+01
+4.015000e+03 0.000000e+00 0.000000e+00 2.500000e+02 6.063827e+01 6.063827e+01
+4.030000e+03 0.000000e+00 0.000000e+00 1.740000e+02 3.736308e+01 3.736308e+01
+4.060000e+03 0.000000e+00 0.000000e+00 5.100000e+01 2.816026e+01 2.816026e+01
+4.120000e+03 0.000000e+00 0.000000e+00 2.600000e+01 2.601922e+01 2.601922e+01
+4.140000e+03 0.000000e+00 0.000000e+00 2.500000e+01 2.002498e+01 2.002498e+01
+4.170000e+03 0.000000e+00 0.000000e+00 3.400000e+01 3.605551e+00 3.605551e+00
+4.180000e+03 0.000000e+00 0.000000e+00 7.000000e+00 1.603122e+01 1.603122e+01
+4.200000e+03 0.000000e+00 0.000000e+00 1.500000e+01 2.202272e+01 2.202272e+01
+4.260000e+03 0.000000e+00 0.000000e+00 4.700000e+01 2.220360e+01 2.220360e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d03-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d03-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t3
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.120000e+03 0.000000e+00 0.000000e+00 4.780000e+02 6.870953e+01 6.870953e+01
+4.140000e+03 0.000000e+00 0.000000e+00 6.840000e+02 6.911584e+01 6.911584e+01
+4.160000e+03 0.000000e+00 0.000000e+00 9.050000e+02 4.924429e+01 4.924429e+01
+4.170000e+03 0.000000e+00 0.000000e+00 9.160000e+02 5.021952e+01 5.021952e+01
+4.180000e+03 0.000000e+00 0.000000e+00 8.890000e+02 7.543209e+01 7.543209e+01
+4.200000e+03 0.000000e+00 0.000000e+00 8.120000e+02 9.259050e+01 9.259050e+01
+4.260000e+03 0.000000e+00 0.000000e+00 3.400000e+01 9.219544e+00 9.219544e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d03-x01-y03
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d03-x01-y03
+Title: doi:10.17182/hepdata.47185.v1/t3
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.260000e+03 0.000000e+00 0.000000e+00 4.400000e+02 4.036087e+01 4.036087e+01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d04-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d04-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t4
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.060000e+03 0.000000e+00 0.000000e+00 1.440000e+02 9.552487e+01 9.552487e+01
+4.120000e+03 0.000000e+00 0.000000e+00 4.500000e+01 8.315047e+01 8.315047e+01
+4.140000e+03 0.000000e+00 0.000000e+00 4.120000e+02 9.984989e+01 9.984989e+01
+4.160000e+03 0.000000e+00 0.000000e+00 3.890000e+02 7.621680e+01 7.621680e+01
+4.170000e+03 0.000000e+00 0.000000e+00 4.400000e+02 5.664804e+01 5.664804e+01
+4.180000e+03 0.000000e+00 0.000000e+00 5.750000e+02 1.150000e+02 1.150000e+02
+4.200000e+03 0.000000e+00 0.000000e+00 7.350000e+02 1.561570e+02 1.561570e+02
+4.260000e+03 0.000000e+00 0.000000e+00 6.380000e+02 1.207394e+02 1.207394e+02
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d04-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d04-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t4
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+4.260000e+03 0.000000e+00 0.000000e+00 3.220000e+02 1.043504e+02 1.043504e+02
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d05-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d05-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t5
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 4.830000e+00 2.420744e-01 2.420744e-01
+3.990000e+03 0.000000e+00 0.000000e+00 5.850000e+00 2.983287e-01 2.983287e-01
+4.010000e+03 0.000000e+00 0.000000e+00 7.100000e+00 2.692582e-01 2.692582e-01
+4.015000e+03 0.000000e+00 0.000000e+00 7.940000e+00 4.854894e-01 4.854894e-01
+4.030000e+03 0.000000e+00 0.000000e+00 1.060000e+01 4.341659e-01 4.341659e-01
+4.060000e+03 0.000000e+00 0.000000e+00 1.016000e+01 4.500000e-01 4.500000e-01
+4.120000e+03 0.000000e+00 0.000000e+00 8.950000e+00 4.465423e-01 4.465423e-01
+4.140000e+03 0.000000e+00 0.000000e+00 9.220000e+00 3.894868e-01 3.894868e-01
+4.160000e+03 0.000000e+00 0.000000e+00 9.330000e+00 3.280244e-01 3.280244e-01
+4.170000e+03 0.000000e+00 0.000000e+00 9.030000e+00 2.531798e-01 2.531798e-01
+4.180000e+03 0.000000e+00 0.000000e+00 8.670000e+00 3.612478e-01 3.612478e-01
+4.200000e+03 0.000000e+00 0.000000e+00 7.420000e+00 4.031129e-01 4.031129e-01
+4.260000e+03 0.000000e+00 0.000000e+00 4.270000e+00 2.126029e-01 2.126029e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d05-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d05-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t5
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 4.910000e+00 2.408319e-01 2.408319e-01
+3.990000e+03 0.000000e+00 0.000000e+00 5.930000e+00 2.831960e-01 2.831960e-01
+4.010000e+03 0.000000e+00 0.000000e+00 7.050000e+00 2.860070e-01 2.860070e-01
+4.015000e+03 0.000000e+00 0.000000e+00 7.620000e+00 4.220190e-01 4.220190e-01
+4.030000e+03 0.000000e+00 0.000000e+00 1.087000e+01 4.640043e-01 4.640043e-01
+4.060000e+03 0.000000e+00 0.000000e+00 9.980000e+00 4.280187e-01 4.280187e-01
+4.120000e+03 0.000000e+00 0.000000e+00 9.130000e+00 4.177320e-01 4.177320e-01
+4.140000e+03 0.000000e+00 0.000000e+00 9.110000e+00 3.720215e-01 3.720215e-01
+4.160000e+03 0.000000e+00 0.000000e+00 9.100000e+00 3.354102e-01 3.354102e-01
+4.170000e+03 0.000000e+00 0.000000e+00 9.090000e+00 3.080584e-01 3.080584e-01
+4.180000e+03 0.000000e+00 0.000000e+00 8.700000e+00 3.522783e-01 3.522783e-01
+4.200000e+03 0.000000e+00 0.000000e+00 7.450000e+00 3.606938e-01 3.606938e-01
+4.260000e+03 0.000000e+00 0.000000e+00 4.200000e+00 1.720465e-01 1.720465e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d06-x01-y01
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d06-x01-y01
+Title: doi:10.17182/hepdata.47185.v1/t6
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 4.910000e+00 3.269557e-01 3.269557e-01
+3.990000e+03 0.000000e+00 0.000000e+00 5.870000e+00 3.676955e-01 3.676955e-01
+4.010000e+03 0.000000e+00 0.000000e+00 7.210000e+00 4.176123e-01 4.176123e-01
+4.015000e+03 0.000000e+00 0.000000e+00 7.880000e+00 4.661545e-01 4.661545e-01
+4.030000e+03 0.000000e+00 0.000000e+00 1.130000e+01 6.087693e-01 6.087693e-01
+4.060000e+03 0.000000e+00 0.000000e+00 9.980000e+00 5.481788e-01 5.481788e-01
+4.120000e+03 0.000000e+00 0.000000e+00 9.430000e+00 5.124451e-01 5.124451e-01
+4.140000e+03 0.000000e+00 0.000000e+00 9.580000e+00 5.546170e-01 5.546170e-01
+4.160000e+03 0.000000e+00 0.000000e+00 9.620000e+00 5.281098e-01 5.281098e-01
+4.170000e+03 0.000000e+00 0.000000e+00 9.450000e+00 4.981967e-01 4.981967e-01
+4.180000e+03 0.000000e+00 0.000000e+00 9.070000e+00 4.850773e-01 4.850773e-01
+4.200000e+03 0.000000e+00 0.000000e+00 8.370000e+00 4.522168e-01 4.522168e-01
+4.260000e+03 0.000000e+00 0.000000e+00 4.340000e+00 2.801785e-01 2.801785e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEOC_2008_I777917/d06-x01-y02
+IsRef: 1
+Path: /REF/CLEOC_2008_I777917/d06-x01-y02
+Title: doi:10.17182/hepdata.47185.v1/t6
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.970000e+03 0.000000e+00 0.000000e+00 3.360000e+00 6.403124e-02 6.403124e-02
+3.990000e+03 0.000000e+00 0.000000e+00 3.550000e+00 7.810250e-02 7.810250e-02
+4.010000e+03 0.000000e+00 0.000000e+00 3.880000e+00 8.944272e-02 8.944272e-02
+4.015000e+03 0.000000e+00 0.000000e+00 3.950000e+00 1.131371e-01 1.131371e-01
+4.030000e+03 0.000000e+00 0.000000e+00 4.740000e+00 1.389244e-01 1.389244e-01
+4.060000e+03 0.000000e+00 0.000000e+00 4.340000e+00 1.118034e-01 1.118034e-01
+4.120000e+03 0.000000e+00 0.000000e+00 4.210000e+00 1.166190e-01 1.166190e-01
+4.140000e+03 0.000000e+00 0.000000e+00 4.180000e+00 1.077033e-01 1.077033e-01
+4.160000e+03 0.000000e+00 0.000000e+00 4.180000e+00 1.044031e-01 1.044031e-01
+4.170000e+03 0.000000e+00 0.000000e+00 4.200000e+00 1.004988e-01 1.004988e-01
+4.180000e+03 0.000000e+00 0.000000e+00 4.170000e+00 1.077033e-01 1.077033e-01
+4.200000e+03 0.000000e+00 0.000000e+00 3.770000e+00 9.433981e-02 9.433981e-02
+4.260000e+03 0.000000e+00 0.000000e+00 3.060000e+00 4.472136e-02 4.472136e-02
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_1983_I188803.cc b/analyses/pluginCESR/CLEO_1983_I188803.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188803.cc
@@ -0,0 +1,87 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_1983_I188803 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_1983_I188803);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ vetoEvent;
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ double fact = crossSection()/ sumOfWeights() /nanobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr mult = bookScatter2D(2, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ }
+ else {
+ mult->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_1983_I188803);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_1983_I188803.info b/analyses/pluginCESR/CLEO_1983_I188803.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188803.info
@@ -0,0 +1,33 @@
+Name: CLEO_1983_I188803
+Year: 1983
+Summary: Measurement of hadronic cross section at the $\Upsilon(1S)$, 9.461 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 188803
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D57 (1998) 1350-1358, 1998
+RunInfo: e+ e- to hadrons
+NeedCrossSection: yes
+Beams: [e-, e+]
+Description:
+ 'Measurement of the hadronic cross section in $e^+e^-$ collisions by CLEO at the $\Upsilon(1S)$, 9.461 GeV.'
+BibKey: Giles:1983eq
+BibTeX: '@article{Giles:1983eq,
+ author = "Giles, R. and others",
+ title = "{A Measurement of the Branching Fraction of the Decay
+ $\Upsilon$ (1s) $\to \tau^+ \tau^-$}",
+ booktitle = "{11th International Symposium on Lepton and Photon
+ Interactions at High Energies Ithaca, New York, August
+ 4-9, 1983}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev. Lett.",
+ volume = "50",
+ year = "1983",
+ pages = "877",
+ doi = "10.1103/PhysRevLett.50.877",
+ reportNumber = "CLNS-83-556, CLEO-83-02",
+ SLACcitation = "%%CITATION = PRLTA,50,877;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_1983_I188803.plot b/analyses/pluginCESR/CLEO_1983_I188803.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188803.plot
@@ -0,0 +1,9 @@
+BEGIN PLOT /CLEO_1983_I188803/d02-x01-y01
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/nb$
+LogY=0
+ConnectGaps=1
+XMin=9
+XMax=10
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_1983_I188803.yoda b/analyses/pluginCESR/CLEO_1983_I188803.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188803.yoda
@@ -0,0 +1,19 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1983_I188803/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1983_I188803/d01-x01-y01
+Title: doi:10.17182/hepdata.20525.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+9.460000e+00 0.000000e+00 0.000000e+00 1.628000e+02 7.900000e+00 7.900000e+00
+1.057700e+01 0.000000e+00 0.000000e+00 7.500000e+01 1.600000e+00 1.600000e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1983_I188803/d02-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1983_I188803/d02-x01-y01
+Title: doi:10.17182/hepdata.20525.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+9.460000e+00 0.000000e+00 0.000000e+00 2.160000e+01 1.303840e+00 1.303840e+00
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_1983_I188805.cc b/analyses/pluginCESR/CLEO_1983_I188805.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188805.cc
@@ -0,0 +1,86 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_1983_I188805 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_1983_I188805);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ declare(FinalState(), "FS");
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ vetoEvent;
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ // R
+ double fact = crossSection()/ sumOfWeights() /nanobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D(1,1,1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ }
+ else {
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_1983_I188805);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_1983_I188805.info b/analyses/pluginCESR/CLEO_1983_I188805.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188805.info
@@ -0,0 +1,33 @@
+Name: CLEO_1983_I188805
+Year: 1983
+Summary: Measurement of the hadronic cross section between9.46 and 10.355 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 188805
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev.Lett. 50 (1983) 807
+RunInfo: e+e- to hadrons
+NeedCrossSection: yes
+Beams: [e-, e+]
+Description:
+ 'Measurement of the hadronic cross section between 9.46 and 10.355 GeV'
+BibKey: Andrews:1983es
+BibTeX: '@article{Andrews:1983es,
+ author = "Andrews, D. and others",
+ title = "{A Measurement of the Leptonic Branching Ratios of the
+ $\Upsilon$ (1s), $\Upsilon$ (2s), and $\Upsilon$ (3s)}",
+ booktitle = "{11th International Symposium on Lepton and Photon
+ Interactions at High Energies Ithaca, New York, August
+ 4-9, 1983}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev. Lett.",
+ volume = "50",
+ year = "1983",
+ pages = "807",
+ doi = "10.1103/PhysRevLett.50.807",
+ reportNumber = "CLNS-83-555, CLEO-83-01",
+ SLACcitation = "%%CITATION = PRLTA,50,807;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_1983_I188805.plot b/analyses/pluginCESR/CLEO_1983_I188805.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188805.plot
@@ -0,0 +1,7 @@
+BEGIN PLOT /CLEO_1983_I188805/d01-x01-y01
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/$nb
+LogY=0
+ConnectGaps=1
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_1983_I188805.yoda b/analyses/pluginCESR/CLEO_1983_I188805.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1983_I188805.yoda
@@ -0,0 +1,11 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1983_I188805/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1983_I188805/d01-x01-y01
+Title: doi:10.17182/hepdata.20536.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+9.460000e+00 0.000000e+00 0.000000e+00 2.150000e+01 8.246211e-01 8.246211e-01
+1.002300e+01 0.000000e+00 0.000000e+00 7.060000e+00 3.023243e-01 3.023243e-01
+1.035500e+01 0.000000e+00 0.000000e+00 4.810000e+00 1.931321e-01 1.931321e-01
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_1984_I193577.cc b/analyses/pluginCESR/CLEO_1984_I193577.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1984_I193577.cc
@@ -0,0 +1,98 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_1984_I193577 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_1984_I193577);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ _c_muons = bookCounter("/TMP/sigma_muons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ _c_muons->fill(event.weight());
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ Scatter1D R = *_c_hadrons/ *_c_muons;
+ double rval = R.point(0).x();
+ pair<double,double> rerr = R.point(0).xErrs();
+ double fact = crossSection()/ sumOfWeights() /picobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ double sig_m = _c_muons ->val()*fact;
+ double err_m = _c_muons ->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D("sigma_hadrons");
+ Scatter2DPtr muons = bookScatter2D("sigma_muons" );
+ Scatter2DPtr mult = bookScatter2D(1, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, rval, ex, rerr);
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ muons ->addPoint(x, sig_m, ex, make_pair(err_m,err_m));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ muons ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons, _c_muons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_1984_I193577);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_1984_I193577.info b/analyses/pluginCESR/CLEO_1984_I193577.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1984_I193577.info
@@ -0,0 +1,34 @@
+Name: CLEO_1984_I193577
+Year: 1984
+Summary: Measurement of $R$ for 10.49 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 193577
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev.D29 (1984) 1285
+RunInfo: e+ e- to hadrons and e+ e- to mu+ mu- (for normalization)
+NeedCrossSection: no
+Beams: [e-, e+]
+Description:
+ 'Measurement of $R$ in $e^+e^-$ collisions by CLEO for 10.49 GeV.
+ The individual hadronic and muonic cross sections are also outputted to the yoda file
+ so that ratio $R$ can be recalcuated if runs are combined.'
+Keywords: []
+BibKey: Giles:1983vq
+BibTeX: '@article{Giles:1983vq,
+ author = "Giles, R. and others",
+ title = "{The Total Cross-section for Electron - Positron
+ Annihilation Into Hadron Final States in the $\Upsilon$
+ Energy Region}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D29",
+ year = "1984",
+ pages = "1285",
+ doi = "10.1103/PhysRevD.29.1285",
+ reportNumber = "CLNS-83/586, CLEO-83-10",
+ SLACcitation = "%%CITATION = PHRVA,D29,1285;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_1984_I193577.plot b/analyses/pluginCESR/CLEO_1984_I193577.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1984_I193577.plot
@@ -0,0 +1,27 @@
+BEGIN PLOT /CLEO_1984_I193577/d01-x01-y01
+Title=$R=\sigma(e^+e^-\to \text{hadrons})/\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$R$
+LogY=0
+ConnectGaps=1
+XMin=10.
+XMax=11.
+END PLOT
+BEGIN PLOT /CLEO_1984_I193577/sigma_hadrons
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+XMin=10.
+XMax=11.
+END PLOT
+BEGIN PLOT /CLEO_1984_I193577/sigma_muons
+Title=$\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \mu^+\mu^-)/pb$
+LogY=0
+ConnectGaps=1
+XMin=10.
+XMax=11.
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_1984_I193577.yoda b/analyses/pluginCESR/CLEO_1984_I193577.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1984_I193577.yoda
@@ -0,0 +1,9 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1984_I193577/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1984_I193577/d01-x01-y01
+Title: doi:10.17182/hepdata.23768.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.049000e+01 0.000000e+00 0.000000e+00 3.770000e+00 3.429446e-01 3.429446e-01
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_1998_I445351.cc b/analyses/pluginCESR/CLEO_1998_I445351.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1998_I445351.cc
@@ -0,0 +1,99 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_1998_I445351 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_1998_I445351);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ _c_muons = bookCounter("/TMP/sigma_muons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ _c_muons->fill(event.weight());
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ Scatter1D R = *_c_hadrons/ *_c_muons;
+ double rval = R.point(0).x();
+ pair<double,double> rerr = R.point(0).xErrs();
+ double fact = crossSection()/ sumOfWeights() /picobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ double sig_m = _c_muons ->val()*fact;
+ double err_m = _c_muons ->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D("sigma_hadrons");
+ Scatter2DPtr muons = bookScatter2D("sigma_muons" );
+ Scatter2DPtr mult = bookScatter2D(1, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, rval, ex, rerr);
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ muons ->addPoint(x, sig_m, ex, make_pair(err_m,err_m));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ muons ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons, _c_muons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_1998_I445351);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_1998_I445351.info b/analyses/pluginCESR/CLEO_1998_I445351.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1998_I445351.info
@@ -0,0 +1,35 @@
+Name: CLEO_1998_I445351
+Year: 1998
+Summary: Measurement of $R$ at 10.52 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 445351
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D57 (1998) 1350-1358, 1998
+RunInfo: e+ e- to hadrons and e+ e- to mu+ mu- (for normalization)
+NeedCrossSection: yes
+Beams: [e-, e+]
+Description:
+ 'Measurement of $R$ in $e^+e^-$ collisions by CLEO for 10.52 GeV.
+ The individual hadronic and muonic cross sections are also outputted to the yoda file
+ so that ratio $R$ can be recalcuated if runs are combined.'
+BibKey: Ammar:1997sk
+BibTeX: '@article{Ammar:1997sk,
+ author = "Ammar, R. and others",
+ title = "{A Measurement of the total cross-section for e+ e- --->
+ hadrons at s**(1/2) = 10.52-GeV}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D57",
+ year = "1998",
+ pages = "1350-1358",
+ doi = "10.1103/PhysRevD.57.1350",
+ eprint = "hep-ex/9707018",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "SLAC-PUB-9765, CLNS-97-1493, CLEO-97-14",
+ SLACcitation = "%%CITATION = HEP-EX/9707018;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_1998_I445351.plot b/analyses/pluginCESR/CLEO_1998_I445351.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1998_I445351.plot
@@ -0,0 +1,27 @@
+BEGIN PLOT /CLEO_1998_I445351/d01-x01-y01
+Title=$R=\sigma(e^+e^-\to \text{hadrons})/\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$R$
+LogY=0
+ConnectGaps=1
+XMin=10
+XMax=11
+END PLOT
+BEGIN PLOT /CLEO_1998_I445351/sigma_hadrons
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+XMin=10
+XMax=11
+END PLOT
+BEGIN PLOT /CLEO_1998_I445351/sigma_muons
+Title=$\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \mu^+\mu^-)/pb$
+LogY=0
+ConnectGaps=1
+XMin=10
+XMax=11
+END PLOT
\ No newline at end of file
diff --git a/analyses/pluginCESR/CLEO_1998_I445351.yoda b/analyses/pluginCESR/CLEO_1998_I445351.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1998_I445351.yoda
@@ -0,0 +1,19 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1998_I445351/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1998_I445351/d01-x01-y01
+Title: doi:10.17182/hepdata.47132.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.052000e+01 0.000000e+00 0.000000e+00 3.560000e+00 7.071068e-02 7.071068e-02
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1998_I445351/d02-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1998_I445351/d02-x01-y01
+Title: doi:10.17182/hepdata.47132.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.052000e+01 0.000000e+00 0.000000e+00 2.000000e-01 6.082763e-02 6.082763e-02
+9.120000e+01 0.000000e+00 0.000000e+00 1.300000e-01 3.041381e-02 3.041381e-02
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_1999_I474676.cc b/analyses/pluginCESR/CLEO_1999_I474676.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1999_I474676.cc
@@ -0,0 +1,124 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+#include "Rivet/Projections/UnstableParticles.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_1999_I474676 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_1999_I474676);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ declare(FinalState(), "FS");
+ declare(UnstableParticles(), "UFS");
+ _nUps2pipi = bookCounter("TMP/nUps2pipi");
+ _nUps3pipi = bookCounter("TMP/nUps3pipi");
+ }
+
+ void findChildren(const Particle & p,map<long,int> & nRes, int &ncount) {
+ foreach(const Particle &child, p.children()) {
+ if(child.children().empty()) {
+ --nRes[child.pdgId()];
+ --ncount;
+ }
+ else
+ findChildren(child,nRes,ncount);
+ }
+ }
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ const FinalState& ufs = apply<FinalState>(event, "UFS");
+ foreach (const Particle& p, ufs.particles()) {
+ if(p.children().empty()) continue;
+ if(p.pdgId() != 100553 &&
+ p.pdgId() != 200553 ) continue;
+ map<long,int> nRes = nCount;
+ int ncount = ntotal;
+ findChildren(p,nRes,ncount);
+ if(ncount!=2) continue;
+ bool matched = true;
+ for(auto const & val : nRes) {
+ if(abs(val.first)==211) {
+ if(val.second!=1) {
+ matched = false;
+ break;
+ }
+ }
+ else if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ if(p.pdgId()==100553)
+ _nUps2pipi->fill(event.weight());
+ if(p.pdgId()==200553)
+ _nUps3pipi->fill(event.weight());
+ }
+ }
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ double fact = crossSection()/ sumOfWeights() /picobarn;
+ for(unsigned int ix=1;ix<3;++ix) {
+ double sigma,error;
+ if(ix==1) {
+ sigma = _nUps3pipi->val()*fact;
+ error = _nUps3pipi->err()*fact;
+ }
+ else if(ix==2) {
+ sigma = _nUps2pipi->val()*fact;
+ error = _nUps2pipi->err()*fact;
+ }
+ Scatter2D temphisto(refData(1, 1, ix));
+ Scatter2DPtr mult = bookScatter2D(1, 1, ix);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult->addPoint(x, sigma, ex, make_pair(error,error));
+ }
+ else {
+ mult->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+ }
+ //@}
+
+ /// @name Histograms
+ //@{
+ CounterPtr _nUps2pipi,_nUps3pipi;
+ //@}
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_1999_I474676);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_1999_I474676.info b/analyses/pluginCESR/CLEO_1999_I474676.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1999_I474676.info
@@ -0,0 +1,35 @@
+Name: CLEO_1999_I474676
+Year: 1999
+Summary: Cross Section for $e^+e^-\to\Upsilon(2,3S)\pi^+\pi^-$ at 10.52, 10.58 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 474676
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D59 (1999) 052003, 1999
+RunInfo: e+e- to hadrons
+NeedCrossSection: yes
+Beams: [e+,e-]
+Luminosity_fb:
+Description:
+ 'Measurement of the cross section for $e^+e^-\to\Upsilon(2,3S)\pi^+\pi^-$ at 10.52 and 10.58 by CLEO.'
+Keywords: []
+BibKey: Glenn:1998bd
+BibTeX: '@article{Glenn:1998bd,
+ author = "Glenn, S. and others",
+ title = "{Upsilon dipion transitions at energies near the
+ upsilon(4S)}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D59",
+ year = "1999",
+ pages = "052003",
+ doi = "10.1103/PhysRevD.59.052003",
+ eprint = "hep-ex/9808008",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "SLAC-REPRINT-1998-097, CLNS-98-1576, CLEO-98-12",
+ SLACcitation = "%%CITATION = HEP-EX/9808008;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_1999_I474676.plot b/analyses/pluginCESR/CLEO_1999_I474676.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1999_I474676.plot
@@ -0,0 +1,16 @@
+BEGIN PLOT /CLEO_1999_I474676/d01-x01-y01
+Title=$\sigma(e^+e^-\to \pi^+\pi^-\Upsilon(3S))$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \pi^+\pi^-\Upsilon(3S))$/pb
+ConnectGaps=1
+XMin=10.
+XMax=11.
+END PLOT
+BEGIN PLOT /CLEO_1999_I474676/d01-x01-y02
+Title=$\sigma(e^+e^-\to \pi^+\pi^-\Upsilon(2S))$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \pi^+\pi^-\Upsilon(2S))$/pb
+ConnectGaps=1
+XMin=10.
+XMax=11.
+END PLOT
\ No newline at end of file
diff --git a/analyses/pluginCESR/CLEO_1999_I474676.yoda b/analyses/pluginCESR/CLEO_1999_I474676.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_1999_I474676.yoda
@@ -0,0 +1,20 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1999_I474676/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_1999_I474676/d01-x01-y01
+Title: doi:10.17182/hepdata.47202.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.052000e+01 0.000000e+00 0.000000e+00 2.730000e+01 5.590170e+00 5.590170e+00
+1.058000e+01 0.000000e+00 0.000000e+00 1.750000e+01 3.400000e+00 3.400000e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_1999_I474676/d01-x01-y02
+IsRef: 1
+Path: /REF/CLEO_1999_I474676/d01-x01-y02
+Title: doi:10.17182/hepdata.47202.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.052000e+01 0.000000e+00 0.000000e+00 1.630000e+01 2.220360e+00 2.220360e+00
+1.058000e+01 0.000000e+00 0.000000e+00 1.550000e+01 1.838478e+00 1.838478e+00
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginMisc/CLEO_2004_S5809304.cc b/analyses/pluginCESR/CLEO_2004_S5809304.cc
rename from analyses/pluginMisc/CLEO_2004_S5809304.cc
rename to analyses/pluginCESR/CLEO_2004_S5809304.cc
diff --git a/analyses/pluginMisc/CLEO_2004_S5809304.info b/analyses/pluginCESR/CLEO_2004_S5809304.info
rename from analyses/pluginMisc/CLEO_2004_S5809304.info
rename to analyses/pluginCESR/CLEO_2004_S5809304.info
diff --git a/analyses/pluginMisc/CLEO_2004_S5809304.plot b/analyses/pluginCESR/CLEO_2004_S5809304.plot
rename from analyses/pluginMisc/CLEO_2004_S5809304.plot
rename to analyses/pluginCESR/CLEO_2004_S5809304.plot
diff --git a/analyses/pluginMisc/CLEO_2004_S5809304.yoda b/analyses/pluginCESR/CLEO_2004_S5809304.yoda
rename from analyses/pluginMisc/CLEO_2004_S5809304.yoda
rename to analyses/pluginCESR/CLEO_2004_S5809304.yoda
diff --git a/analyses/pluginCESR/CLEO_2006_I691720.cc b/analyses/pluginCESR/CLEO_2006_I691720.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I691720.cc
@@ -0,0 +1,223 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FastJets.hh"
+#include "Rivet/Projections/UnstableParticles.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_2006_I691720 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_2006_I691720);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+ declare(UnstableParticles(), "UFS");
+
+ // Book histograms
+ for(unsigned int ix=1;ix<18;++ix) {
+ stringstream ss;
+ ss << "TMP/n" << ix;
+ _nMeson[ix]= bookCounter(ss.str());
+ }
+ }
+
+ void findChildren(const Particle & p,map<long,int> & nRes, int &ncount) {
+ foreach(const Particle &child, p.children()) {
+ if(child.children().empty()) {
+ nRes[child.pdgId()]-=1;
+ --ncount;
+ }
+ else
+ findChildren(child,nRes,ncount);
+ }
+ }
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ if(ntotal==3) {
+ if(nCount[211]==1 && nCount[-211]==1 && nCount[111]==1)
+ _nMeson[1]->fill(event.weight());
+ }
+ const FinalState& ufs = apply<FinalState>(event, "UFS");
+ for(unsigned int ix=0;ix<ufs.particles().size();++ix) {
+ const Particle& p1 = ufs.particles()[ix];
+ if(p1.children().empty()) continue;
+ if(p1.pdgId()!=113 && abs(p1.pdgId())!=313) continue;
+ map<long,int> nRes = nCount;
+ int ncount = ntotal;
+ findChildren(p1,nRes,ncount);
+ if(p1.pdgId()==113 || p1.pdgId()==223 || p1.pdgId()==10113) {
+ if(ncount!=1) continue;
+ bool matched = true;
+ for(auto const & val : nRes) {
+ if(abs(val.first)==111 && val.second!=1) {
+ matched = false;
+ break;
+ }
+ else if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ if(p1.pdgId()==113) {
+ _nMeson[2]->fill(event.weight());
+ _nMeson[3]->fill(event.weight());
+ }
+ else if(p1.pdgId()==223) {
+ _nMeson[5]->fill(event.weight());
+ }
+ else if(p1.pdgId()==10113) {
+ _nMeson[15]->fill(event.weight());
+ }
+ }
+ }
+ else if(p1.pdgId()==abs(113) || abs(p1.pdgId())==10113) {
+ if(ncount!=1) continue;
+ bool matched = true;
+ int ipi = p1.pdgId()>0 ? -211 : 211;
+ for(auto const & val : nRes) {
+ if(abs(val.first)==ipi && val.second!=1) {
+ matched = false;
+ break;
+ }
+ else if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ if(p1.pdgId()==abs(113)) {
+ _nMeson[2]->fill(event.weight());
+ _nMeson[4]->fill(event.weight());
+ }
+ else {
+ _nMeson[15]->fill(event.weight());
+ _nMeson[17]->fill(event.weight());
+ }
+ }
+ }
+ else if(p1.pdgId()==abs(323)) {
+ if(ncount!=1) continue;
+ bool matched = true;
+ int iK = p1.pdgId()==323 ? -321 : 321;
+ for(auto const & val : nRes) {
+ if(abs(val.first)==iK && val.second!=1) {
+ matched = false;
+ break;
+ }
+ else if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(matched) {
+ _nMeson[14]->fill(event.weight());
+ }
+ }
+ // second unstable particle
+ if(abs(p1.pdgId())!=313 && p1.pdgId()!=113 && p1.pdgId()!=223 &&
+ p1.pdgId()!=333 && p1.pdgId()!=221 && p1.pdgId()!=331)
+ continue;
+ for(unsigned int iy=ix+1;iy<ufs.particles().size();++iy) {
+ const Particle& p2 = ufs.particles()[iy];
+ map<long,int> nRes2 = nRes;
+ int ncount2 = ncount;
+ findChildren(p2,nRes2,ncount2);
+ if(ncount!=0) continue;
+ bool matched=true;
+ for(auto const & val : nRes2) {
+ if(val.second!=0) {
+ matched = false;
+ break;
+ }
+ }
+ if(!matched) continue;
+ if( (p1.pdgId()==113 && p2.pdgId()==221) ||
+ (p2.pdgId()==113 && p1.pdgId()==221) )
+ _nMeson[7]->fill(event.weight());
+ else if( (p1.pdgId()==223 && p2.pdgId()==221) ||
+ (p2.pdgId()==223 && p1.pdgId()==221) )
+ _nMeson[8]->fill(event.weight());
+ else if( (p1.pdgId()==333 && p2.pdgId()==221) ||
+ (p2.pdgId()==333 && p1.pdgId()==221) )
+ _nMeson[9]->fill(event.weight());
+ else if( (p1.pdgId()==113 && p2.pdgId()==331) ||
+ (p2.pdgId()==113 && p1.pdgId()==331) )
+ _nMeson[10]->fill(event.weight());
+ else if( (p1.pdgId()==223 && p2.pdgId()==331) ||
+ (p2.pdgId()==223 && p1.pdgId()==331) )
+ _nMeson[11]->fill(event.weight());
+ else if( (p1.pdgId()==333 && p2.pdgId()==331) ||
+ (p2.pdgId()==333 && p1.pdgId()==331) )
+ _nMeson[12]->fill(event.weight());
+ else if( (p1.pdgId()==313 && p2.pdgId()==-313) ||
+ (p2.pdgId()==313 && p1.pdgId()==-313) )
+ _nMeson[13]->fill(event.weight());
+ }
+ }
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ for(unsigned int ix=1;ix<18;++ix) {
+ if(ix==6||ix==16) continue;
+ double sigma = _nMeson[ix]->val();
+ double error = _nMeson[ix]->err();
+ sigma *= crossSection()/ sumOfWeights() /picobarn;
+ error *= crossSection()/ sumOfWeights() /picobarn;
+ Scatter2D temphisto(refData(1, 1, ix));
+ Scatter2DPtr mult = bookScatter2D(1, 1, ix);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult->addPoint(x, sigma, ex, make_pair(error,error));
+ }
+ else {
+ mult->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _nMeson[18];
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_2006_I691720);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_2006_I691720.info b/analyses/pluginCESR/CLEO_2006_I691720.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I691720.info
@@ -0,0 +1,36 @@
+Name: CLEO_2006_I691720
+Year: 2006
+Summary: Cross section for light hadron production at 3.671 and 3.773 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 691720
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D73 (2006) 012002, 2006
+RunInfo: e+e- to hadrons
+NeedCrossSection: yes
+Beams: [e+, e-]
+Description:
+ 'Cross section for $e^+e^-\to \pi^+\pi^-\pi^0$, $\rho^0\pi^0$, $\rho^\pm\pi^\mp$,
+ $\omega\pi^0$, $\rho^0\eta$, $\omega\eta$, $\phi\eta$, $\rho^0\eta^\prime$,
+ $\omega\eta^\prime$, $\phi\eta^\prime$, $K^{*0}\bar{K}^{*0}$,
+ $K^{*\pm} K^\mp$, $b_1^0\pi^0$, $b_1^\pm\pi^\mp$ at 3.671 and 3.773 GeV'
+Keywords: []
+BibKey: Adams:2005ks
+BibTeX: '@article{Adams:2005ks,
+ author = "Adams, G. S. and others",
+ title = "{Decay of the psi(3770) to light hadrons}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D73",
+ year = "2006",
+ pages = "012002",
+ doi = "10.1103/PhysRevD.73.012002",
+ eprint = "hep-ex/0509011",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "CLNS-05-1933, CLEO-05-21",
+ SLACcitation = "%%CITATION = HEP-EX/0509011;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_2006_I691720.plot b/analyses/pluginCESR/CLEO_2006_I691720.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I691720.plot
@@ -0,0 +1,120 @@
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y01
+Title=$\sigma(e^+e^-\to \pi^+\pi^-\pi^0)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \pi^+\pi^-\pi^0)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y02
+Title=$\sigma(e^+e^-\to \rho^0\pi^0,\rho^\pm\pi^\mp)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \rho^0\pi^0)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y03
+Title=$\sigma(e^+e^-\to \rho^0\pi^0)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \rho^0\pi^0)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y04
+Title=$\sigma(e^+e^-\to \rho^\pm\pi^\mp)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \rho^\pm\pi^\mp)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y05
+Title=$\sigma(e^+e^-\to \omega\pi^0)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \omega\pi^0)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y07
+Title=$\sigma(e^+e^-\to \rho^0\eta)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \rho^0\eta)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y08
+Title=$\sigma(e^+e^-\to \omega\eta)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \omega\eta)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y09
+Title=$\sigma(e^+e^-\to \phi\eta)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \phi\eta)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y10
+Title=$\sigma(e^+e^-\to \rho^0\eta^\prime)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \rho^0\eta^\prime)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y11
+Title=$\sigma(e^+e^-\to \omega\eta^\prime)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \omega\eta^\prime)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y12
+Title=$\sigma(e^+e^-\to \phi\eta^\prime)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \phi\eta^\prime)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y13
+Title=$\sigma(e^+e^-\to K^{*0}\bar{K}^{*0})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to K^{*0}\bar{K}^{*0})$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y14
+Title=$\sigma(e^+e^-\to K^{*\pm} K^\mp)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to K^{*\pm} K^\mp)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y15
+Title=$\sigma(e^+e^-\to b_1^0\pi^0, b_1^\pm\pi^\mp)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to )$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
+BEGIN PLOT /CLEO_2006_I691720/d01-x01-y17
+Title=$\sigma(e^+e^-\to b_1^\pm\pi^\mp)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to b_1^\pm\pi^\mp)$/pb
+ConnectGaps=1
+XMin=3.6
+XMax=3.8
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_2006_I691720.yoda b/analyses/pluginCESR/CLEO_2006_I691720.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I691720.yoda
@@ -0,0 +1,163 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y01
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 1.310000e+01 2.701851e+00 2.831960e+00
+3.773000e+00 0.000000e+00 0.000000e+00 7.400000e+00 1.264911e+00 1.264911e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y02
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y02
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 8.000000e+00 1.664332e+00 1.923538e+00
+3.773000e+00 0.000000e+00 0.000000e+00 4.400000e+00 5.830952e-01 5.830952e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y03
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y03
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 3.100000e+00 8.944272e-01 1.077033e+00
+3.773000e+00 0.000000e+00 0.000000e+00 1.300000e+00 2.828427e-01 2.828427e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y04
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y04
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 4.800000e+00 1.300000e+00 1.581139e+00
+3.773000e+00 0.000000e+00 0.000000e+00 3.200000e+00 4.242641e-01 4.242641e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y05
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y05
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 1.520000e+01 2.830194e+00 3.176476e+00
+3.773000e+00 0.000000e+00 0.000000e+00 1.460000e+01 1.615549e+00 1.615549e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y06
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y06
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y07
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y07
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 1.000000e+01 2.147091e+00 2.416609e+00
+3.773000e+00 0.000000e+00 0.000000e+00 1.030000e+01 1.118034e+00 1.118034e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y08
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y08
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 2.300000e+00 1.118034e+00 1.868154e+00
+3.773000e+00 0.000000e+00 0.000000e+00 4.000000e-01 2.236068e-01 2.236068e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y09
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y09
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 2.100000e+00 1.216553e+00 1.910497e+00
+3.773000e+00 0.000000e+00 0.000000e+00 4.500000e+00 7.071068e-01 7.071068e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y10
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y10
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 2.100000e+00 1.612452e+00 4.704253e+00
+3.773000e+00 0.000000e+00 0.000000e+00 3.800000e+00 8.944272e-01 9.848858e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y11
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y11
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.773000e+00 0.000000e+00 0.000000e+00 6.000000e-01 6.708204e-01 1.000000e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y12
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y12
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.773000e+00 0.000000e+00 0.000000e+00 2.500000e+00 1.170470e+00 1.552417e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y13
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y13
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 2.350000e+01 4.981967e+00 5.547071e+00
+3.773000e+00 0.000000e+00 0.000000e+00 2.350000e+01 3.289377e+00 3.289377e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y14
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y14
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 1.000000e+00 8.602325e-01 1.208305e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y15
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y15
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 7.900000e+00 3.080584e+00 3.584690e+00
+3.773000e+00 0.000000e+00 0.000000e+00 6.300000e+00 1.655295e+00 1.655295e+00
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y16
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y16
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I691720/d01-x01-y17
+IsRef: 1
+Path: /REF/CLEO_2006_I691720/d01-x01-y17
+Title: doi:10.17182/hepdata.52474.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.671000e+00 0.000000e+00 0.000000e+00 4.200000e+00 1.341641e+00 1.708801e+00
+3.773000e+00 0.000000e+00 0.000000e+00 4.700000e+00 7.211103e-01 7.211103e-01
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_2006_I700665.cc b/analyses/pluginCESR/CLEO_2006_I700665.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I700665.cc
@@ -0,0 +1,87 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_2006_I700665 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_2006_I700665);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ declare(FinalState(), "FS");
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ unsigned int nCharged(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ if(PID::isCharged(p.pdgId())) ++nCharged;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ vetoEvent;
+ // everything else
+ else {
+ _c_hadrons->fill(event.weight());
+ }
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ double fact = crossSection()/ sumOfWeights() /nanobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D(1, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ }
+ else {
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_2006_I700665);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_2006_I700665.info b/analyses/pluginCESR/CLEO_2006_I700665.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I700665.info
@@ -0,0 +1,37 @@
+Name: CLEO_2006_I700665
+Year: 2006
+Summary: Hadronic cross section at 3.773 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 700665
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev.Lett. 96 (2006) 092002, 2006
+RunInfo: e+ e- to hadrons
+NeedCrossSection: yes
+Beams: [e-, e+]
+Description:
+ 'Haronic cross section at 3.773 measured by CLEO.'
+Keywords: []
+BibKey: Besson:2005kzr
+BibTeX: '@article{Besson:2005kzr,
+ author = "Besson, D. and others",
+ title = "{Measurement of $\sigma(e^+e^- \to \psi(3770) \to
+ hadrons)$ at $E_{c.m.}$ = 3773 MeV}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev. Lett.",
+ volume = "96",
+ year = "2006",
+ pages = "092002",
+ doi = "10.1103/PhysRevLett.96.092002,
+ 10.1103/PhysRevLett.104.159901",
+ note = "[Erratum: Phys. Rev. Lett.104,159901(2010)]",
+ eprint = "1004.1358",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "CLNS-05-1939, CLEO-05-27, hep-ex/0512038",
+ SLACcitation = "%%CITATION = ARXIV:1004.1358;%%"
+}
+'
diff --git a/analyses/pluginCESR/CLEO_2006_I700665.plot b/analyses/pluginCESR/CLEO_2006_I700665.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I700665.plot
@@ -0,0 +1,9 @@
+BEGIN PLOT /CLEO_2006_I700665/d01-x01-y01
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+XMin=3.
+XMax=4.
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_2006_I700665.yoda b/analyses/pluginCESR/CLEO_2006_I700665.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2006_I700665.yoda
@@ -0,0 +1,9 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2006_I700665/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_2006_I700665/d01-x01-y01
+Title: doi:10.17182/hepdata.47194.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+3.773000e+00 0.000000e+00 0.000000e+00 6.380000e+00 3.104835e-01 4.177320e-01
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CLEO_2007_I753556.cc b/analyses/pluginCESR/CLEO_2007_I753556.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2007_I753556.cc
@@ -0,0 +1,101 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CLEO_2007_I753556 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CLEO_2007_I753556);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ _c_muons = bookCounter("/TMP/sigma_muons");
+
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ _c_muons->fill(event.weight());
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ Scatter1D R = *_c_hadrons/ *_c_muons;
+ double rval = R.point(0).x();
+ pair<double,double> rerr = R.point(0).xErrs();
+ double fact = crossSection()/ sumOfWeights() /picobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ double sig_m = _c_muons ->val()*fact;
+ double err_m = _c_muons ->err()*fact;
+ Scatter2D temphisto(refData(1, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D("sigma_hadrons");
+ Scatter2DPtr muons = bookScatter2D("sigma_muons" );
+ Scatter2DPtr mult = bookScatter2D(1, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, rval, ex, rerr);
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ muons ->addPoint(x, sig_m, ex, make_pair(err_m,err_m));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ muons ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons, _c_muons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CLEO_2007_I753556);
+
+
+}
diff --git a/analyses/pluginCESR/CLEO_2007_I753556.info b/analyses/pluginCESR/CLEO_2007_I753556.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2007_I753556.info
@@ -0,0 +1,36 @@
+Name: CLEO_2007_I753556
+Year: 2007
+Summary: Measurement of $R$ for energies between 6.964 and 10.538 GeV
+Experiment: CLEO
+Collider: CESR
+InspireID: 753556
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev. D76 (2007) 072008, 2007
+RunInfo: e+ e- to hadrons and e+ e- to mu+ mu- (for normalization)
+NeedCrossSection: no
+Beams: [e-, e+]
+Description:
+ 'Measurement of $R$ in $e^+e^-$ collisions by CLEO for energies between 6.964 and 10.538 GeV.
+ The individual hadronic and muonic cross sections are also outputted to the yoda file
+ so that ratio $R$ can be recalcuated if runs are combined.'
+Keywords: []
+BibKey: Besson:2007aa
+BibTeX: '@article{Besson:2007aa,
+ author = "Besson, D. and others",
+ title = "{Measurement of the Total Hadronic Cross Section in e+e-
+ Annihilations below 10.56-GeV}",
+ collaboration = "CLEO",
+ journal = "Phys. Rev.",
+ volume = "D76",
+ year = "2007",
+ pages = "072008",
+ doi = "10.1103/PhysRevD.76.072008",
+ eprint = "0706.2813",
+ archivePrefix = "arXiv",
+ primaryClass = "hep-ex",
+ reportNumber = "CLNS-07-1998, CLEO-07-7",
+ SLACcitation = "%%CITATION = ARXIV:0706.2813;%%"
+}'
diff --git a/analyses/pluginCESR/CLEO_2007_I753556.plot b/analyses/pluginCESR/CLEO_2007_I753556.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2007_I753556.plot
@@ -0,0 +1,21 @@
+BEGIN PLOT /CLEO_2007_I753556/d01-x01-y01
+Title=$R=\sigma(e^+e^-\to \text{hadrons})/\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$R$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEO_2007_I753556/sigma_hadrons
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CLEO_2007_I753556/sigma_muons
+Title=$\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \mu^+\mu^-)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
diff --git a/analyses/pluginCESR/CLEO_2007_I753556.yoda b/analyses/pluginCESR/CLEO_2007_I753556.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CLEO_2007_I753556.yoda
@@ -0,0 +1,15 @@
+BEGIN YODA_SCATTER2D_V2 /REF/CLEO_2007_I753556/d01-x01-y01
+IsRef: 1
+Path: /REF/CLEO_2007_I753556/d01-x01-y01
+Title: doi:10.17182/hepdata.47183.v1/t1
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+6.964000e+00 0.000000e+00 0.000000e+00 3.597000e+00 6.883313e-02 6.883313e-02
+7.380000e+00 0.000000e+00 0.000000e+00 3.550000e+00 6.422616e-02 6.422616e-02
+8.380000e+00 0.000000e+00 0.000000e+00 3.576000e+00 6.756478e-02 6.756478e-02
+9.432000e+00 0.000000e+00 0.000000e+00 3.510000e+00 7.582875e-02 7.582875e-02
+9.996000e+00 0.000000e+00 0.000000e+00 3.497000e+00 7.720751e-02 7.720751e-02
+1.033000e+01 0.000000e+00 0.000000e+00 3.491000e+00 8.015610e-02 8.015610e-02
+1.053800e+01 0.000000e+00 0.000000e+00 3.591000e+00 8.306022e-02 8.306022e-02
+END YODA_SCATTER2D_V2
diff --git a/analyses/pluginCESR/CUSB_1982_I180613.cc b/analyses/pluginCESR/CUSB_1982_I180613.cc
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CUSB_1982_I180613.cc
@@ -0,0 +1,99 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/Projections/FinalState.hh"
+
+namespace Rivet {
+
+
+ /// @brief Add a short analysis description here
+ class CUSB_1982_I180613 : public Analysis {
+ public:
+
+ /// Constructor
+ DEFAULT_RIVET_ANALYSIS_CTOR(CUSB_1982_I180613);
+
+
+ /// @name Analysis methods
+ //@{
+
+ /// Book histograms and initialise projections before the run
+ void init() {
+ // Initialise and register projections
+ declare(FinalState(), "FS");
+
+ // Book histograms
+ _c_hadrons = bookCounter("/TMP/sigma_hadrons");
+ _c_muons = bookCounter("/TMP/sigma_muons");
+ }
+
+
+ /// Perform the per-event analysis
+ void analyze(const Event& event) {
+ const FinalState& fs = apply<FinalState>(event, "FS");
+
+ map<long,int> nCount;
+ int ntotal(0);
+ foreach (const Particle& p, fs.particles()) {
+ nCount[p.pdgId()] += 1;
+ ++ntotal;
+ }
+ // mu+mu- + photons
+ if(nCount[-13]==1 and nCount[13]==1 &&
+ ntotal==2+nCount[22])
+ _c_muons->fill(event.weight());
+ // everything else
+ else
+ _c_hadrons->fill(event.weight());
+ }
+
+
+ /// Normalise histograms etc., after the run
+ void finalize() {
+ Scatter1D R = *_c_hadrons/ *_c_muons;
+ double rval = R.point(0).x();
+ pair<double,double> rerr = R.point(0).xErrs();
+ double fact = crossSection()/ sumOfWeights() /picobarn;
+ double sig_h = _c_hadrons->val()*fact;
+ double err_h = _c_hadrons->err()*fact;
+ double sig_m = _c_muons ->val()*fact;
+ double err_m = _c_muons ->err()*fact;
+ Scatter2D temphisto(refData(3, 1, 1));
+ Scatter2DPtr hadrons = bookScatter2D("sigma_hadrons");
+ Scatter2DPtr muons = bookScatter2D("sigma_muons" );
+ Scatter2DPtr mult = bookScatter2D(3, 1, 1);
+ for (size_t b = 0; b < temphisto.numPoints(); b++) {
+ const double x = temphisto.point(b).x();
+ pair<double,double> ex = temphisto.point(b).xErrs();
+ pair<double,double> ex2 = ex;
+ if(ex2.first ==0.) ex2. first=0.0001;
+ if(ex2.second==0.) ex2.second=0.0001;
+ if (inRange(sqrtS()/GeV, x-ex2.first, x+ex2.second)) {
+ mult ->addPoint(x, rval, ex, rerr);
+ hadrons->addPoint(x, sig_h, ex, make_pair(err_h,err_h));
+ muons ->addPoint(x, sig_m, ex, make_pair(err_m,err_m));
+ }
+ else {
+ mult ->addPoint(x, 0., ex, make_pair(0.,.0));
+ hadrons->addPoint(x, 0., ex, make_pair(0.,.0));
+ muons ->addPoint(x, 0., ex, make_pair(0.,.0));
+ }
+ }
+ }
+
+ //@}
+
+
+ /// @name Histograms
+ //@{
+ CounterPtr _c_hadrons, _c_muons;
+ //@}
+
+
+ };
+
+
+ // The hook for the plugin system
+ DECLARE_RIVET_PLUGIN(CUSB_1982_I180613);
+
+
+}
diff --git a/analyses/pluginCESR/CUSB_1982_I180613.info b/analyses/pluginCESR/CUSB_1982_I180613.info
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CUSB_1982_I180613.info
@@ -0,0 +1,31 @@
+Name: CUSB_1982_I180613
+Year: 1982
+Summary: Measurement of $R$ for energies between 10.34 and 11.6 GeV
+Experiment: CUSB
+Collider: CESR
+InspireID: 180613
+Status: VALIDATED
+Authors:
+ - Peter Richardson <peter.richardson@durham.ac.uk>
+References:
+ - Phys.Rev.Lett. 48 (1982) 906-910, 1982
+RunInfo: e+ e- to hadrons and e+ e- to mu+ mu- (for normalization)
+NeedCrossSection: no
+Beams: [e-, e+]
+Description:
+ 'Measurement of $R$ in $e^+e^-$ collisions by CUSB for energies between 10.34 and 11.6 GeV.
+ The individual hadronic and muonic cross sections are also outputted to the yoda file
+ so that ratio $R$ can be recalcuated if runs are combined.'
+Keywords: []
+BibKey: Rice:1982br
+BibTeX: '@article{Rice:1982br,
+ author = "Rice, E. and others",
+ title = "{SEARCH FOR STRUCTURE IN SIGMA (E+ E- ---> HADRONS)
+ BETWEEN S**(1/2) = 10.34-GEV AND 11.6-GEV}",
+ journal = "Phys. Rev. Lett.",
+ volume = "48",
+ year = "1982",
+ pages = "906-910",
+ doi = "10.1103/PhysRevLett.48.906",
+ SLACcitation = "%%CITATION = PRLTA,48,906;%%"
+}'
diff --git a/analyses/pluginCESR/CUSB_1982_I180613.plot b/analyses/pluginCESR/CUSB_1982_I180613.plot
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CUSB_1982_I180613.plot
@@ -0,0 +1,21 @@
+BEGIN PLOT /CUSB_1982_I180613/d03-x01-y01
+Title=$R=\sigma(e^+e^-\to \text{hadrons})/\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$R$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CUSB_1982_I180613/sigma_hadrons
+Title=$\sigma(e^+e^-\to \text{hadrons})$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \text{hadrons})/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
+BEGIN PLOT /CUSB_1982_I180613/sigma_muons
+Title=$\sigma(e^+e^-\to \mu^+\mu^-)$
+XLabel=$\sqrt{s}$/GeV
+YLabel=$\sigma(e^+e^-\to \mu^+\mu^-)/pb$
+LogY=0
+ConnectGaps=1
+END PLOT
diff --git a/analyses/pluginCESR/CUSB_1982_I180613.yoda b/analyses/pluginCESR/CUSB_1982_I180613.yoda
new file mode 100644
--- /dev/null
+++ b/analyses/pluginCESR/CUSB_1982_I180613.yoda
@@ -0,0 +1,39 @@
+BEGIN YODA_SCATTER1D_V2 /REF/CUSB_1982_I180613/d01-x01-y01
+IsRef: 1
+Path: /REF/CUSB_1982_I180613/d01-x01-y01
+Title: doi:10.17182/hepdata.20593.v1/t1
+Type: Scatter1D
+---
+# xval xerr- xerr+
+END YODA_SCATTER1D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CUSB_1982_I180613/d02-x01-y01
+IsRef: 1
+Path: /REF/CUSB_1982_I180613/d02-x01-y01
+Title: doi:10.17182/hepdata.20593.v1/t2
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.043000e+01 9.000000e-02 9.000000e-02 2.290000e+00 2.576669e-01 2.576669e-01
+1.109000e+01 5.100000e-01 5.100000e-01 2.540000e+00 2.867839e-01 2.867839e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CUSB_1982_I180613/d03-x01-y01
+IsRef: 1
+Path: /REF/CUSB_1982_I180613/d03-x01-y01
+Title: doi:10.17182/hepdata.20593.v1/t3
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.043000e+01 9.000000e-02 9.000000e-02 3.540000e+00 3.989298e-01 3.989298e-01
+1.109000e+01 5.100000e-01 5.100000e-01 3.850000e+00 4.333373e-01 4.333373e-01
+END YODA_SCATTER2D_V2
+BEGIN YODA_SCATTER2D_V2 /REF/CUSB_1982_I180613/d04-x01-y01
+IsRef: 1
+Path: /REF/CUSB_1982_I180613/d04-x01-y01
+Title: doi:10.17182/hepdata.20593.v1/t4
+Type: Scatter2D
+---
+# xval xerr- xerr+ yval yerr- yerr+
+1.043000e+01 9.000000e-02 9.000000e-02 8.194000e-01 1.000000e-03 1.000000e-03
+1.055000e+01 3.000000e-02 3.000000e-02 7.353000e-01 4.300000e-03 4.300000e-03
+1.109000e+01 5.100000e-01 5.100000e-01 8.135000e-01 1.300000e-03 1.300000e-03
+END YODA_SCATTER2D_V2
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Feb 23, 2:25 PM (15 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4486551
Default Alt Text
(97 KB)
Attached To
rRIVETHG rivethg
Event Timeline
Log In to Comment