[Rivet-svn] r3539 - in trunk: data/anainfo data/plotinfo data/refdata src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Fri Jan 13 17:29:07 GMT 2012


Author: holsch
Date: Fri Jan 13 17:29:07 2012
New Revision: 3539

Log:
Add ATLAS inclusive lepton analysis

Added:
   trunk/data/anainfo/ATLAS_2011_I926145.info
   trunk/data/plotinfo/ATLAS_2011_I926145.plot
   trunk/data/refdata/ATLAS_2011_I926145.aida
   trunk/src/Analyses/ATLAS_2011_I926145.cc
Modified:
   trunk/data/anainfo/Makefile.am
   trunk/data/plotinfo/Makefile.am
   trunk/data/refdata/Makefile.am
   trunk/src/Analyses/Makefile.am

Added: trunk/data/anainfo/ATLAS_2011_I926145.info
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/data/anainfo/ATLAS_2011_I926145.info	Fri Jan 13 17:29:07 2012	(r3539)
@@ -0,0 +1,39 @@
+Name: ATLAS_2011_I926145
+Year: 2011
+Summary: Measurement of electron and muon differential cross-section from heavy-flavour decays
+Experiment: ATLAS
+Collider: LHC
+SpiresID: 9185208
+Status: VALIDATED
+Authors:
+ - Paul Bell <paul.bell at cern.ch>
+ - Holger Schulz <holger.schulz at physik.hu-berlin.de>
+References:
+ - CERN-PH-EP-2011-108
+ - arXiv:1109.0525 [hep-ex]
+RunInfo:
+  pp to ele + X or mu + X at 7 TeV, heavy-flavour (bb and cc) production with B/D -> ele or muon
+NumEvents: 1000000
+Beams: [p+, p+]
+Energies: [3500,3500]
+PtCuts: 
+Description:
+  'Measurement of inclusive electron and muon cross sections for
+  $7 < \pT <26$~GeV in  $|\eta| <2.0$, excluding $1.37<|\eta|<1.52$,
+  and muon cross section for $4 < \pT < 100$~GeV in  $|\eta| <2.50$.
+  W/Z/gamma* component must be subtracted to leave the heavy flavour
+  contribution.'
+BibKey: Aad:2011rr
+BibTeX: '@article{Aad:2011rr,
+      author         = "Aad, Georges and others",
+      title          = "{Measurements of the electron and muon inclusive
+                        cross-sections in proton-proton collisions at sqrt(s) = 7
+                        TeV with the ATLAS detector}",
+      collaboration  = "ATLAS Collaboration",
+      year           = "2011",
+      eprint         = "1109.0525",
+      archivePrefix  = "arXiv",
+      primaryClass   = "hep-ex",
+      reportNumber   = "CERN-PH-EP-2011-108",
+      SLACcitation   = "%%CITATION = ARXIV:1109.0525;%%",
+}'

Modified: trunk/data/anainfo/Makefile.am
==============================================================================
--- trunk/data/anainfo/Makefile.am	Thu Jan 12 14:09:33 2012	(r3538)
+++ trunk/data/anainfo/Makefile.am	Fri Jan 13 17:29:07 2012	(r3539)
@@ -33,6 +33,7 @@
   ATLAS_2011_S9212183.info \
   ATLAS_2011_I919017.info \
   ATLAS_2011_I925932.info \
+  ATLAS_2011_I926145.info \
   BELLE_2006_S6265367.info \
   CDF_1988_S1865951.info \
   CDF_1990_S2089246.info \

Added: trunk/data/plotinfo/ATLAS_2011_I926145.plot
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/data/plotinfo/ATLAS_2011_I926145.plot	Fri Jan 13 17:29:07 2012	(r3539)
@@ -0,0 +1,17 @@
+# BEGIN PLOT /ATLAS_2011_I926145/d01-x01-y01
+Title=Electron diff. cross-section $|\eta|<2.0$~excl.~$1.37<|\eta|<1.52$
+XLabel=$p_\perp~[\text{GeV}]$
+YLabel=$\text{d}\sigma/\text{d}p_\perp~[\mu\text{b}/\text{GeV}]$
+# END PLOT
+
+# BEGIN PLOT /ATLAS_2011_I926145/d02-x01-y01
+Title=Muon diff. cross-section $|\eta|<2.0$~excl.~$1.37<|\eta|<1.52$
+XLabel=$p_\perp~[\text{GeV}]$
+YLabel=$\text{d}\sigma/\text{d}p_\perp~[\mu\text{b}/\text{GeV}]$
+# END PLOT
+
+# BEGIN PLOT /ATLAS_2011_I926145/d03-x01-y01
+Title=Muon differential cross-section $|\eta|<2.5$
+XLabel=$p_\perp~[\text{GeV}]$
+YLabel=$\text{d}\sigma/\text{d}p_\perp~[\mu\text{b}/\text{GeV}]$
+# END PLOT

Modified: trunk/data/plotinfo/Makefile.am
==============================================================================
--- trunk/data/plotinfo/Makefile.am	Thu Jan 12 14:09:33 2012	(r3538)
+++ trunk/data/plotinfo/Makefile.am	Fri Jan 13 17:29:07 2012	(r3539)
@@ -26,6 +26,7 @@
   ATLAS_2011_S9131140.plot \
   ATLAS_2011_I919017.plot  \
   ATLAS_2011_I925932.plot  \
+  ATLAS_2011_I926145.plot  \
   CDF_1988_S1865951.plot \
   CDF_1990_S2089246.plot \
   CDF_1993_S2742446.plot \

Added: trunk/data/refdata/ATLAS_2011_I926145.aida
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/data/refdata/ATLAS_2011_I926145.aida	Fri Jan 13 17:29:07 2012	(r3539)
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE aida SYSTEM "http://aida.freehep.org/schemas/3.3/aida.dtd">
+<aida version="3.3">
+  <implementation version="1.0" package="HepData"/>
+  <dataPointSet name="d01-x01-y01" dimension="2" path="/REF/ATLAS_2011_I926145" title="D(SIG)/DPT in NB/GEV" >
+    <dataPoint>
+      <measurement value="7.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="351.0" errorPlus="57.97413216254298" errorMinus="57.97413216254298"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="9.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="167.0" errorPlus="27.65863337187866" errorMinus="27.65863337187866"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="11.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="67.0" errorPlus="11.180339887498949" errorMinus="11.180339887498949"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="13.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="30.3" errorPlus="4.8270073544588685" errorMinus="4.8270073544588685"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="15.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="15.3" errorPlus="2.23606797749979" errorMinus="2.23606797749979"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="17.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="8.0" errorPlus="1.3341664064126335" errorMinus="1.3341664064126335"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="19.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="4.58" errorPlus="0.7354590403278757" errorMinus="0.7354590403278757"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="21.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="2.75" errorPlus="0.4883646178829912" errorMinus="0.4883646178829912"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="24.0" errorPlus="2.0" errorMinus="2.0"/>
+      <measurement value="1.29" errorPlus="0.215870331449229" errorMinus="0.215870331449229"/>
+    </dataPoint>
+  </dataPointSet>
+  <dataPointSet name="d02-x01-y01" dimension="2" path="/REF/ATLAS_2011_I926145" title="D(SIG)/DPT in NB/GEV" >
+    <dataPoint>
+      <measurement value="7.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="302.0" errorPlus="17.11724276862369" errorMinus="17.11724276862369"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="9.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="142.0" errorPlus="8.06225774829855" errorMinus="8.06225774829855"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="11.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="58.0" errorPlus="3.059411708155671" errorMinus="3.059411708155671"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="13.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="26.1" errorPlus="1.4560219778561034" errorMinus="1.4560219778561034"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="15.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="14.1" errorPlus="0.8544003745317532" errorMinus="0.8544003745317532"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="17.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="7.92" errorPlus="0.41303752856126763" errorMinus="0.41303752856126763"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="19.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="4.52" errorPlus="0.2433105012119288" errorMinus="0.2433105012119288"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="21.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="2.78" errorPlus="0.15297058540778355" errorMinus="0.15297058540778355"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="24.0" errorPlus="2.0" errorMinus="2.0"/>
+      <measurement value="1.37" errorPlus="0.08246211251235322" errorMinus="0.08246211251235322"/>
+    </dataPoint>
+  </dataPointSet>
+  <dataPointSet name="d03-x01-y01" dimension="2" path="/REF/ATLAS_2011_I926145" title="D(SIG)/DPT in NB/GEV" >
+    <dataPoint>
+      <measurement value="4.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="3490.0" errorPlus="230.10649708341572" errorMinus="230.10649708341572"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="5.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="1390.0" errorPlus="90.08884503644167" errorMinus="90.08884503644167"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="6.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="680.0" errorPlus="40.11234224026316" errorMinus="40.11234224026316"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="7.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="364.0" errorPlus="23.08679276123039" errorMinus="23.08679276123039"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="8.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="210.0" errorPlus="13.152946437965905" errorMinus="13.152946437965905"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="9.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="130.0" errorPlus="8.06225774829855" errorMinus="8.06225774829855"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="10.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="84.0" errorPlus="5.0990195135927845" errorMinus="5.0990195135927845"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="11.5" errorPlus="0.5" errorMinus="0.5"/>
+      <measurement value="53.0" errorPlus="3.132091952673165" errorMinus="3.132091952673165"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="13.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="31.0" errorPlus="2.0615528128088303" errorMinus="2.0615528128088303"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="15.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="16.1" errorPlus="1.1704699910719625" errorMinus="1.1704699910719625"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="17.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="9.2" errorPlus="0.6029925372672534" errorMinus="0.6029925372672534"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="19.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="5.3" errorPlus="0.3026549190084311" errorMinus="0.3026549190084311"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="21.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="3.2" errorPlus="0.20223748416156687" errorMinus="0.20223748416156687"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="23.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="1.87" errorPlus="0.13341664064126335" errorMinus="0.13341664064126335"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="25.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="1.2" errorPlus="0.10198039027185571" errorMinus="0.10198039027185571"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="27.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.84" errorPlus="0.07280109889280519" errorMinus="0.07280109889280519"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="29.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.6" errorPlus="0.06324555320336758" errorMinus="0.06324555320336758"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="31.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.43" errorPlus="0.05385164807134505" errorMinus="0.05385164807134505"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="33.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.26" errorPlus="0.044721359549995794" errorMinus="0.044721359549995794"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="35.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.2" errorPlus="0.03605551275463989" errorMinus="0.03605551275463989"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="37.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.13" errorPlus="0.03162277660168379" errorMinus="0.03162277660168379"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="39.0" errorPlus="1.0" errorMinus="1.0"/>
+      <measurement value="0.088" errorPlus="0.03220248437620924" errorMinus="0.03220248437620924"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="42.0" errorPlus="2.0" errorMinus="2.0"/>
+      <measurement value="0.074" errorPlus="0.021931712199461308" errorMinus="0.021931712199461308"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="46.0" errorPlus="2.0" errorMinus="2.0"/>
+      <measurement value="0.056" errorPlus="0.013038404810405297" errorMinus="0.013038404810405297"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="50.0" errorPlus="2.0" errorMinus="2.0"/>
+      <measurement value="0.025" errorPlus="0.008602325267042627" errorMinus="0.008602325267042627"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="56.0" errorPlus="4.0" errorMinus="4.0"/>
+      <measurement value="0.015" errorPlus="0.0036055512754639895" errorMinus="0.0036055512754639895"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="65.0" errorPlus="5.0" errorMinus="5.0"/>
+      <measurement value="0.0083" errorPlus="0.0018384776310850235" errorMinus="0.0018384776310850235"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="75.0" errorPlus="5.0" errorMinus="5.0"/>
+      <measurement value="0.0029" errorPlus="0.001" errorMinus="0.001"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="85.0" errorPlus="5.0" errorMinus="5.0"/>
+      <measurement value="0.0021" errorPlus="7.211102550927978E-4" errorMinus="7.211102550927978E-4"/>
+    </dataPoint>
+    <dataPoint>
+      <measurement value="95.0" errorPlus="5.0" errorMinus="5.0"/>
+      <measurement value="9.0E-4" errorPlus="5.385164807134503E-4" errorMinus="5.385164807134503E-4"/>
+    </dataPoint>
+  </dataPointSet>
+</aida>

Modified: trunk/data/refdata/Makefile.am
==============================================================================
--- trunk/data/refdata/Makefile.am	Thu Jan 12 14:09:33 2012	(r3538)
+++ trunk/data/refdata/Makefile.am	Fri Jan 13 17:29:07 2012	(r3539)
@@ -31,6 +31,7 @@
   ATLAS_2011_S9131140.aida       \
   ATLAS_2011_I919017.aida        \
   ATLAS_2011_I925932.aida        \
+  ATLAS_2011_I926145.aida        \
   BABAR_2006_S6511112.aida       \
   BELLE_2006_S6265367.aida       \
   CLEO_1997_S3486664.aida        \

Added: trunk/src/Analyses/ATLAS_2011_I926145.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/src/Analyses/ATLAS_2011_I926145.cc	Fri Jan 13 17:29:07 2012	(r3539)
@@ -0,0 +1,187 @@
+// -*- C++ -*-
+#include "Rivet/Analysis.hh"
+#include "Rivet/RivetAIDA.hh"
+#include "Rivet/Tools/Logging.hh"
+#include "Rivet/Projections/FinalState.hh"
+#include "Rivet/Projections/IdentifiedFinalState.hh"
+#include "Rivet/Projections/WFinder.hh"
+#include "Rivet/Projections/ZFinder.hh"
+#include "Rivet/Tools/ParticleIdUtils.hh"
+
+namespace Rivet {
+
+  /// @brief Measurement of electron and muon differential cross section from heavy flavour production
+  ///
+  /// lepton cross sections differential in pT
+  ///
+  /// @author Paul Bell, Holger Schulz
+
+
+  class ATLAS_2011_I926145 : public Analysis {
+  public:
+
+    /// Constructor
+    ATLAS_2011_I926145()
+      : Analysis("ATLAS_2011_I926145")
+    {
+      /// @todo Set whether your finalize method needs the generator cross section
+      setNeedsCrossSection(true);  
+      setBeams(PROTON, PROTON);
+    }
+
+
+  public:
+
+    /// Book histograms and initialise projections before the run
+    void init() {
+
+      ///projection for electrons
+      std::vector<std::pair<double, double> > eta_e;
+      eta_e.push_back(make_pair(-2.00,-1.52));
+      eta_e.push_back(make_pair(-1.37,1.37));
+      eta_e.push_back(make_pair(1.52,2.00));
+      IdentifiedFinalState elecs(eta_e, 7.0*GeV);
+      elecs.acceptId(ELECTRON);
+      elecs.acceptId(POSITRON); 
+      addProjection(elecs, "elecs");
+
+      //projection for muons -- same phase space as above??? Not sure if the crack region has 
+      //to be removed for the muons as well
+      std::vector<std::pair<double, double> > eta_m;
+      //eta_m.push_back(make_pair(-2.00,-1.52));
+      //eta_m.push_back(make_pair(-1.37,1.37));
+      //eta_m.push_back(make_pair(1.52,2.00));
+      //IdentifiedFinalState muons(eta_m, 7.0*GeV);
+      IdentifiedFinalState muons(-2.0, 2.0, 7.0*GeV);
+      muons.acceptId(MUON);
+      muons.acceptId(ANTIMUON);
+      addProjection(muons, "muons");
+
+      //projection for muons full range
+      IdentifiedFinalState muons_full(-2.5, 2.5, 4.0*GeV);
+      muons_full.acceptId(MUON);
+      muons_full.acceptId(ANTIMUON);
+      addProjection(muons_full, "muons_full");
+      
+      //// ZFinder: etaMin, etaMax, pid, minmass, maxmass, dRmax, clusterPhotons, trackPhotons
+      ZFinder zfinder_e(-2.0, 2.0, 0.0, ELECTRON, 66.0*GeV, 116.0*GeV, 0.1, false, false);
+      addProjection(zfinder_e, "ZFinder_e");
+      
+      ZFinder zfinder_mu(-2.0, 2.0, 0.0, MUON, 66.0*GeV, 116.0*GeV, 0.1, false, false);
+      addProjection(zfinder_mu, "ZFinder_mu");
+      
+      ZFinder zfinder_mufull(-2.5, 2.5, 0.0, MUON, 66.0*GeV, 116.0*GeV, 0.1, false, false);
+      addProjection(zfinder_mufull, "ZFinder_mufull");
+
+
+      //// WFinder: etaMin, etaMax, pid, minmass, maxmass, dRmax, clusterPhotons, trackPhotons
+      WFinder wfinder_e(-2.0, 2.0, 0.0*GeV, ELECTRON, 60.0*GeV, 100.0*GeV, 25.0*GeV, 0.2);
+      addProjection(wfinder_e, "WFinder_e");
+      
+      WFinder wfinder_mu(-2.0, 2.0, 0.0*GeV, MUON, 60.0*GeV, 100.0*GeV, 25.0*GeV, 0.2);
+      addProjection(wfinder_mu, "WFinder_mu");
+      
+      WFinder wfinder_mufull(-2.5, 2.5, 0.0*GeV, MUON, 60.0*GeV, 100.0*GeV, 25.0*GeV, 0.2);
+      addProjection(wfinder_mufull, "WFinder_mufull");
+
+
+      // Book histograms  - use autobooking
+      _histPt_elecs      = bookHistogram1D(1 ,1 ,1);
+      _histPt_muons      = bookHistogram1D(2 ,1 ,1); 
+      _histPt_muons_full = bookHistogram1D(3 ,1 ,1); 
+    }
+
+    /// Perform the per-event analysis
+    void analyze(const Event& event) {
+      const double weight = event.weight();
+
+      const FinalState& elecs      = applyProjection<FinalState>(event, "elecs");
+      const FinalState& muons      = applyProjection<FinalState>(event, "muons");
+      const FinalState& muons_full = applyProjection<FinalState>(event, "muons_full");
+      
+      // Veto event if no lepton is present
+      if (elecs.size() == 0 && muons.size() == 0 && muons_full.size() == 0) {
+        vetoEvent;
+      }
+
+      // Check for W and or Z bosons in event
+      //
+      // Z veto
+      const ZFinder& zfinder_e      = applyProjection<ZFinder>(event, "ZFinder_e");
+      const ZFinder& zfinder_mu     = applyProjection<ZFinder>(event, "ZFinder_mu");
+      const ZFinder& zfinder_mufull = applyProjection<ZFinder>(event, "ZFinder_mufull");
+      
+      if (zfinder_e.bosons().size() > 0 || zfinder_mu.bosons().size() > 0 || zfinder_mufull.bosons().size() > 0) {
+          MSG_DEBUG("Num elec Z-bosons found: " << zfinder_e.bosons().size());
+          MSG_DEBUG("Num muon Z-bosons found: " << zfinder_mu.bosons().size());
+          MSG_DEBUG("Num muon Z-bosons found (|eta|<2.5): " << zfinder_mufull.bosons().size());
+          vetoEvent;
+      }
+
+      // W veto
+      const WFinder& wfinder_e      = applyProjection<WFinder>(event, "WFinder_e");
+      const WFinder& wfinder_mu     = applyProjection<WFinder>(event, "WFinder_mu");
+      const WFinder& wfinder_mufull = applyProjection<WFinder>(event, "WFinder_mufull");
+      
+      if (wfinder_e.bosons().size() > 0 || wfinder_mu.bosons().size() > 0 || wfinder_mufull.bosons().size() > 0) {
+          MSG_DEBUG("Num elec W-bosons found: " << wfinder_e.bosons().size());
+          MSG_DEBUG("Num muon W-bosons found: " << wfinder_mu.bosons().size());
+          MSG_DEBUG("Num muon W-bosons found (|eta|<2.5): " << wfinder_mufull.bosons().size());
+          vetoEvent;
+      }
+
+      
+      // Electron histogram
+      if (elecs.size() > 0) {
+        foreach (const Particle& ele, elecs.particles()) {
+          if (ele.momentum().pT()*GeV < 26.0) {
+            _histPt_elecs->fill(ele.momentum().pT()*GeV, weight);
+          }
+        }
+      }
+      
+      // Muon histogram
+      if (muons.size() > 0) {
+        foreach (const Particle& muo, muons.particles()) {
+          if (muo.momentum().pT()*GeV < 26.0) {
+            _histPt_muons->fill(muo.momentum().pT()*GeV, weight);
+          }
+        }
+      }
+      
+      // Muon full histogram
+      if (muons_full.size() > 0) {
+        foreach (const Particle& muo, muons_full.particles()) {
+          if (muo.momentum().pT()*GeV < 100.0) {
+            _histPt_muons_full->fill(muo.momentum().pT()*GeV, weight);
+          }
+        }
+      }
+    }
+
+    /// Normalise histograms etc., after the run
+    void finalize() {
+
+      // Data cross-section is given in nb! x-sections in rivet are in pb!
+      scale(_histPt_elecs,      crossSection()/nanobarn/sumOfWeights());
+      scale(_histPt_muons,      crossSection()/nanobarn/sumOfWeights());
+      scale(_histPt_muons_full, crossSection()/nanobarn/sumOfWeights());
+    }
+
+
+
+  private:
+
+    /// @name Histograms
+    AIDA::IHistogram1D *_histPt_elecs;
+    AIDA::IHistogram1D *_histPt_muons;
+    AIDA::IHistogram1D *_histPt_muons_full;
+  };
+
+
+
+  // This global object acts as a hook for the plugin system
+  AnalysisBuilder<ATLAS_2011_I926145> plugin_ATLAS_2011_I926145;
+
+
+}

Modified: trunk/src/Analyses/Makefile.am
==============================================================================
--- trunk/src/Analyses/Makefile.am	Thu Jan 12 14:09:33 2012	(r3538)
+++ trunk/src/Analyses/Makefile.am	Fri Jan 13 17:29:07 2012	(r3539)
@@ -61,8 +61,10 @@
     ATLAS_2011_S9128077.cc \
     ATLAS_2011_S9131140.cc \
     ATLAS_2011_S9212183.cc \
-    ATLAS_2011_I919017.cc  \
-    ATLAS_2011_I925932.cc
+    ATLAS_2011_I919017.cc \
+    ATLAS_2011_I925932.cc \
+    ATLAS_2011_I926145.cc
+
 if ENABLE_UNVALIDATED
 RivetATLASAnalyses_la_SOURCES += \
     ATLAS_2010_CONF_2010_049.cc \


More information about the Rivet-svn mailing list