[Rivet-svn] r3972 - in branches/2012-06-aidarivet: data/anainfo data/plotinfo src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Thu Oct 25 12:25:01 BST 2012


Author: richardn
Date: Thu Oct 25 12:25:01 2012
New Revision: 3972

Log:
added ATLAS top partner search

Added:
   branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1126136.info
      - copied, changed from r3970, branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1190891.info
   branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1126136.plot
      - copied, changed from r3969, branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1186556.plot
   branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1126136.cc
      - copied, changed from r3969, branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc
Modified:
   branches/2012-06-aidarivet/data/anainfo/Makefile.am
   branches/2012-06-aidarivet/data/plotinfo/Makefile.am
   branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc
   branches/2012-06-aidarivet/src/Analyses/Makefile.am

Copied and modified: branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1126136.info (from r3970, branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1190891.info)
==============================================================================
--- branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1190891.info	Mon Oct 22 12:33:05 2012	(r3970, copy source)
+++ branches/2012-06-aidarivet/data/anainfo/ATLAS_2012_I1126136.info	Thu Oct 25 12:25:01 2012	(r3972)
@@ -1,16 +1,14 @@
-Name: ATLAS_2012_I1190891
+Name: ATLAS_2012_I1126136
 Year: 2012
-Summary: 4 or more lepton plus missing transverse energy SUSY search
+Summary: SUSY Top partner search in jets with missing transverse momentum
 Experiment: ATLAS
 Collider: LHC
-InspireID: 1190891
+InspireID: 1126136
 Status: UNVALIDATED
 Authors:
  - Peter Richardson <peter.richardson at durham.ac.uk>
 References:
- - ATLAS-CONF-2012-001
- - ATLAS-CONF-2012-035
- - arXiv:1210.4457
+ - arXiv:1208.1447
 RunInfo:
   BSM signal events at 7000 GeV.
 NumEvents: 25000 for BSM signals
@@ -18,20 +16,20 @@
 Energies: [7000]
 NeedCrossSection: yes
 Description:
-  'Search for R-parity violating SUSY using events with 4 or more leptons in association with
-   missing transverse energy in proton-proton
-   collisions at a centre-of-mass energy of 7 TeV. The data sample has a total
-   integrated luminosity of 4.7 fb$^{-1}$.'
-BibTeX: '@article{Aad:2012kr,
+  'Search for direct pair production of supersymmetric top squarks, assuming the stop_1 decays
+   into a top quark and the lightest supersymmetric particle, and that both top quarks decay
+   to purely hadronic final states. This search has an integrated luminosity 
+   of 4.7 fb$^{-1}$ at $\sqrt{s}=8$\,TeV.'
+BibTeX: '@article{:2012si,
       author         = "Aad, Georges and others",
-      title          = "{Search for R-parity-violating supersymmetry in events
-                        with four or more leptons in sqrt(s) = 7 TeV pp collisions
-                        with the ATLAS detector}",
+      title          = "{Search for a supersymmetric partner to the top quark in
+                        final states with jets and missing transverse momentum at
+                        sqrt(s) = 7 TeV with the ATLAS detector}",
       collaboration  = "ATLAS Collaboration",
       year           = "2012",
-      eprint         = "1210.4457",
+      eprint         = "1208.1447",
       archivePrefix  = "arXiv",
       primaryClass   = "hep-ex",
-      reportNumber   = "CERN-PH-EP-2012-276",
-      SLACcitation   = "%%CITATION = ARXIV:1210.4457;%%",
+      reportNumber   = "CERN-PH-EP-2012-201",
+      SLACcitation   = "%%CITATION = ARXIV:1208.1447;%%",
 }'

Modified: branches/2012-06-aidarivet/data/anainfo/Makefile.am
==============================================================================
--- branches/2012-06-aidarivet/data/anainfo/Makefile.am	Mon Oct 22 13:15:14 2012	(r3971)
+++ branches/2012-06-aidarivet/data/anainfo/Makefile.am	Thu Oct 25 12:25:01 2012	(r3972)
@@ -58,6 +58,7 @@
   ATLAS_2012_CONF_2012_001.info \
   ATLAS_2012_I1112263.info \
   ATLAS_2012_I1125961.info \
+  ATLAS_2012_I1126136.info \
   ATLAS_2012_I1117704.info \
   ATLAS_2012_I1180197.info \
   ATLAS_2012_I1186556.info \
@@ -215,3 +216,4 @@
   UA5_1987_S1640666.info \
   UA5_1988_S1867512.info \
   UA5_1989_S1926373.info
+

Copied and modified: branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1126136.plot (from r3969, branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1186556.plot)
==============================================================================
--- branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1186556.plot	Wed Oct 17 15:47:49 2012	(r3969, copy source)
+++ branches/2012-06-aidarivet/data/plotinfo/ATLAS_2012_I1126136.plot	Thu Oct 25 12:25:01 2012	(r3972)
@@ -1,39 +1,36 @@
-# BEGIN PLOT /ATLAS_2012_I1186556/count_SR_SF
-Title=Number of events in the same-flavour region
+# BEGIN PLOT /ATLAS_2012_I1186556/count_SR_A
+Title=Number of events in the $E_{\mathrm{T}}^{\rm miss}>130\,$GeV
 XLabel=
 YLabel=Number of Events
 LogY=0
 # END PLOT
-# BEGIN PLOT /ATLAS_2012_I1186556/count_SR_OF
-Title=Number of events in the opposite-flavour region
+# BEGIN PLOT /ATLAS_2012_I1186556/count_SR_B
+Title=Number of events in the $E_{\mathrm{T}}^{\rm miss}>260\,$GeV
 XLabel=
 YLabel=Number of Events
 LogY=0
 # END PLOT
-
-# BEGIN PLOT /ATLAS_2012_I1186556/hist_mT2_SF_exp
-Title=$m_{T2}$ for the same-flavour region
-XLabel=$m_{T2}$ [GeV]
-YLabel=$\mathrm{Events}/5 \mathrm{GeV}$
-LogY=1
+# BEGIN PLOT /ATLAS_2012_I1186556/hist_mjjj1
+Title=$m_{jjj}$ for closest-triplet
+XLabel=$m_{jjj}$ [GeV]
+YLabel=$\mathrm{Events}/20 \mathrm{GeV}$
+LogY=0
 # END PLOT
-# BEGIN PLOT /ATLAS_2012_I1186556/hist_mT2_OF_exp
-Title=$m_{T2}$ for the opposite-flavour region
-XLabel=$m_{T2}$ [GeV]
-YLabel=$\mathrm{Events}/5 \mathrm{GeV}$
-LogY=1
+# BEGIN PLOT /ATLAS_2012_I1186556/hist_mjjj2
+Title=$m_{jjj}$ for second-triplet
+XLabel=$m_{jjj}$ [GeV]
+YLabel=$\mathrm{Events}/20 \mathrm{GeV}$
+LogY=0
 # END PLOT
-
-# BEGIN PLOT /ATLAS_2012_I1186556/hist_mT2_SF_MC
-Title=$m_{T2}$ for the same-flavour region
-XLabel=$m_{T2}$ [GeV]
-YLabel=$\mathrm{d}{\sigma}/\mathrm{d}{m_{T2}} [\mathrm{fb/GeV}] $
-
-LogY=1
+# BEGIN PLOT /ATLAS_2012_I1186556/hist_ETmiss
+Title=$E_{\mathrm{T}}^{\rm miss}$
+XLabel=$E_{\mathrm{T}}^{\rm miss}$ [GeV]
+YLabel=$\mathrm{Events}/50 \mathrm{GeV}$
+LogY=0
 # END PLOT
-# BEGIN PLOT /ATLAS_2012_I1186556/hist_mT2_OF_MC
-Title=$m_{T2}$ for the opposite-flavour region
+# BEGIN PLOT /ATLAS_2012_I1186556/hist_mT2
+Title=$m_{T2}$
 XLabel=$m_{T2}$ [GeV]
-YLabel=$\mathrm{d}{\sigma}/\mathrm{d}{m_{T2}} [\mathrm{fb/GeV}] $
-LogY=1
+YLabel=$\mathrm{Events}/\mathrm{GeV}$
+LogY=0
 # END PLOT

Modified: branches/2012-06-aidarivet/data/plotinfo/Makefile.am
==============================================================================
--- branches/2012-06-aidarivet/data/plotinfo/Makefile.am	Mon Oct 22 13:15:14 2012	(r3971)
+++ branches/2012-06-aidarivet/data/plotinfo/Makefile.am	Thu Oct 25 12:25:01 2012	(r3972)
@@ -53,6 +53,7 @@
   ATLAS_2012_CONF_2012_001.plot \
   ATLAS_2012_I1112263.plot \
   ATLAS_2012_I1125961.plot \
+  ATLAS_2012_I1126136.plot \
   ATLAS_2012_I1117704.plot \
   ATLAS_2012_I1180197.plot \
   ATLAS_2012_I1082009.plot \

Copied and modified: branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1126136.cc (from r3969, branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc)
==============================================================================
--- branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc	Wed Oct 17 15:47:49 2012	(r3969, copy source)
+++ branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1126136.cc	Thu Oct 25 12:25:01 2012	(r3972)
@@ -9,12 +9,13 @@
 #include "Rivet/Projections/IdentifiedFinalState.hh"
 #include "Rivet/Projections/VetoedFinalState.hh"
 #include "Rivet/Projections/FastJets.hh"
+#include "Rivet/Tools/ParticleIdUtils.hh"
 #include "Rivet/Tools/RivetMT2.hh"
 
 namespace Rivet {
 
 
-  class ATLAS_2012_I1186556 : public Analysis {
+  class ATLAS_2012_I1126136 : public Analysis {
   public:
 
     /// @name Constructors etc.
@@ -22,8 +23,8 @@
 
     /// Constructor
 
-    ATLAS_2012_I1186556()
-      : Analysis("ATLAS_2012_I1186556")
+    ATLAS_2012_I1126136()
+      : Analysis("ATLAS_2012_I1126136")
     {    }
 
     //@}
@@ -55,22 +56,19 @@
       VetoedFinalState vfs;
       vfs.addVetoPairId(MUON);
       addProjection(FastJets(vfs, FastJets::ANTIKT, 0.4),
-                   "AntiKtJets04");
-
-      // all tracks (to do deltaR with leptons)
-      addProjection(ChargedFinalState(-3.0,3.0,1.*GeV),"cfs");
+		    "AntiKtJets04");
 
       // for pTmiss
       addProjection(VisibleFinalState(-4.9,4.9),"vfs");
 
       // Book histograms
-      _count_SR_SF     = bookHistogram1D("count_SR_SF"    , 1, 0., 1.);
-      _count_SR_OF     = bookHistogram1D("count_SR_OF"    , 1, 0., 1.);
+      _count_SR_A     = bookHistogram1D("count_SR_A"    , 1, 0., 1.);
+      _count_SR_B     = bookHistogram1D("count_SR_B"    , 1, 0., 1.);
       					                 
-      _hist_mT2_SF_exp = bookHistogram1D("hist_mT2_SF_exp", 40 , 0., 200. );
-      _hist_mT2_OF_exp = bookHistogram1D("hist_mT2_OF_exp", 40 , 0., 200. );
-      _hist_mT2_SF_MC  = bookHistogram1D("hist_mT2_SF_MC" , 500, 0., 1000.);
-      _hist_mT2_OF_MC  = bookHistogram1D("hist_mT2_OF_MC" , 500, 0., 1000.);
+      _hist_mjjj1  = bookHistogram1D("hist_mjjj1" , 30 , 0.   , 600.  );
+      _hist_mjjj2  = bookHistogram1D("hist_mjjj2" , 30 , 0.   , 600.  );
+      _hist_ETmiss = bookHistogram1D("hist_ETmiss", 20 , 100. , 600.  );
+      _hist_mT2    = bookHistogram1D("hist_mT2"   , 200, 0.   , 1000. );
 
     }
 
@@ -78,6 +76,17 @@
     void analyze(const Event& event) {
       const double weight = event.weight();
 
+      // pTmiss
+      FourMomentum pTmiss;
+      foreach ( const Particle & p,
+                applyProjection<VisibleFinalState>(event, "vfs").particles() ) {
+        pTmiss -= p.momentum();
+      }
+      double ETmiss = pTmiss.perp();
+
+      // require eTmiss > 150
+      if(ETmiss<150.) vetoEvent;
+
       // get the candiate jets
       Jets cand_jets;
       foreach ( const Jet& jet,
@@ -86,9 +95,7 @@
           cand_jets.push_back(jet);
         }
       }
-      // charged tracks for isolation
-      ParticleVector chg_tracks =
-        applyProjection<ChargedFinalState>(event, "cfs").particles();
+
       // find the electrons
       ParticleVector cand_e;
       foreach( const Particle & e,
@@ -102,9 +109,11 @@
             break;
           }
         }
-	if ( e_near_jet ) continue;
-	cand_e.push_back(e);
+      	if ( e_near_jet ) continue;
+      	cand_e.push_back(e);
       }
+
+      // find the muons
       ParticleVector cand_mu;
       foreach( const Particle & mu,
                applyProjection<IdentifiedFinalState>(event, "muons").particlesByPt()) {
@@ -117,100 +126,165 @@
           }
         }
         if ( mu_near_jet ) continue;
-	cand_mu.push_back(mu);
-      }
-      // pTcone around muon track
-      ParticleVector recon_mu;
-      foreach ( const Particle & mu, cand_mu ) {
-        double pTinCone = -mu.momentum().pT();
-        foreach ( const Particle & track, chg_tracks ) {
-          if ( deltaR(mu.momentum(),track.momentum()) < 0.2 )
-            pTinCone += track.momentum().pT();
-        }
-        if ( pTinCone < 1.8*GeV ) recon_mu.push_back(mu);
-      }
-      // pTcone around electron track
-      ParticleVector recon_e;
-      foreach ( const Particle & e, cand_e ) {
-        double pTinCone = -e.momentum().pT();
-        foreach ( const Particle & track, chg_tracks ) {
-          if ( deltaR(e.momentum(),track.momentum()) < 0.2 )
-            pTinCone += track.momentum().pT();
-        }
-        if ( pTinCone < 0.1 * e.momentum().pT() ) recon_e.push_back(e);
+      	cand_mu.push_back(mu);
       }
 
-      // pTmiss
-      FourMomentum pTmiss;
-      foreach ( const Particle & p,
-                applyProjection<VisibleFinalState>(event, "vfs").particles() ) {
-        pTmiss -= p.momentum();
-      }
+      // veto events with leptons
+      if( ! cand_e.empty() || ! cand_mu.empty() )
+	vetoEvent;
 
       // discard jets that overlap with electrons
       Jets recon_jets;
       foreach ( const Jet& jet, cand_jets ) {
-        if(fabs(jet.momentum().eta())>2.5||
-           jet.momentum().perp()<20.) continue;
-	bool away_from_e = true;
-	foreach ( const Particle & e, cand_e ) {
-	  if ( deltaR(e.momentum(),jet.momentum()) < 0.2 ) {
-	    away_from_e = false;
-	    break;
-	  }
-	}
-	if ( away_from_e ) recon_jets.push_back( jet );
+        if(fabs(jet.momentum().eta())>2.8 ||
+           jet.momentum().perp()<30.) continue;
+      	bool away_from_e = true;
+      	foreach ( const Particle & e, cand_e ) {
+      	  if ( deltaR(e.momentum(),jet.momentum()) < 0.2 ) {
+      	    away_from_e = false;
+      	    break;
+      	  }
+      	}
+      	if ( away_from_e ) recon_jets.push_back( jet );
       }
 
-      // put leptons into 1 vector and order by pT
-      ParticleVector leptons(recon_e.begin(),recon_e.end());
-      leptons.insert(leptons.begin(),recon_mu.begin(),recon_mu.end());
-      std::sort(leptons.begin(),leptons.end(),cmpParticleByPt);
-
-      // exactly two leptons
-      if(leptons.size() !=2) vetoEvent;
+      // find b jets
+      Jets tight_bjets,loose_bjets;
+      foreach(const Jet & jet, recon_jets) {
+	if(!jet.containsBottom() && jet.momentum().eta()>2.5) continue;
+	double prob = rand()/static_cast<double>(RAND_MAX);
+	if(prob <= 0.60) tight_bjets.push_back(jet);
+	if(prob <= 0.75) loose_bjets.push_back(jet);
+      }
 
-      // hardest lepton pT greater the 25 (20) e(mu)
-      if( (abs(leptons[0].pdgId())==ELECTRON && leptons[0].momentum().perp()<25.) ||
-	  (abs(leptons[0].pdgId())==ELECTRON && leptons[0].momentum().perp()<20.)) 
+      // require >=1 tight or >=2 loose b-jets
+      if( ! ( !tight_bjets.empty() || loose_bjets.size()>=2) )
 	vetoEvent;
 
-      // require opposite sign
-      if(leptons[0].pdgId()*leptons[1].pdgId()>0) vetoEvent;
+      // must be at least 6 jets with pT>30
+      if(recon_jets.size()<6 ) vetoEvent;
 
-      // and invariant mass > 20
-      double mll = (leptons[0].momentum()+leptons[1].momentum()).mass();
-      if(mll<20.) vetoEvent;
-
-      // two jets 1st pT > 50 and second pT> 25
-      if(recon_jets.size()<2 || recon_jets[0].momentum().perp()<50. ||
-	 recon_jets[1].momentum().perp()<25.) vetoEvent;
+      // hardest > 130
+      if(recon_jets[0].momentum().perp() < 130. ) vetoEvent;
 
-      // calculate mT2
-      double m_T2 = mT2::mT2( leptons[0].momentum(),leptons[1].momentum(),
-			      pTmiss,0.0 ); // zero mass invisibles
+      // three hardest jets must be separated from etmiss
+      for(unsigned int ix=0;ix<3;++ix) {
+	if(deltaPhi(recon_jets[ix].momentum(),pTmiss)<0.2*PI)
+	  vetoEvent;
+      }
+
+      // remove events with tau like jets
+      for(unsigned int ix=3;ix<recon_jets.size();++ix) {
+	// skip jets seperated from eTmiss
+	if(deltaPhi(recon_jets[ix].momentum(),pTmiss)>=0.2*PI)
+	  continue;
+	// check the number of tracks between 1 and 4
+	unsigned int ncharged=0;
+	foreach ( const Particle & particle, recon_jets[ix].particles()) {
+	  if(PID::threeCharge(particle.pdgId())!=0) ++ncharged;
+	}
+	if(ncharged==0 || ncharged>4) continue;
+	// calculate transverse mass and reject if < 100
+	double mT = 2.*recon_jets[ix].momentum().perp()*ETmiss
+	  -recon_jets[ix].momentum().x()*pTmiss.x()
+	  -recon_jets[ix].momentum().y()*pTmiss.y();
+	if(mT<100.) vetoEvent;
+      }
+
+      // if 2 loose b-jets apply mT cut
+      if(loose_bjets.size()>=2) {
+	// find b-jet closest to eTmiss
+	double minR(1e30);
+	unsigned int ijet(0);
+	for(unsigned int ix=0;ix<loose_bjets.size();++ix) {
+	  double dR = deltaR(loose_bjets[ix].momentum(),pTmiss);
+	  if(dR<minR) {
+	    minR=dR;
+	    ijet = ix;
+	  }
+	}
+	double  mT = 2.*loose_bjets[ijet].momentum().perp()*ETmiss
+	  -loose_bjets[ijet].momentum().x()*pTmiss.x()
+	  -loose_bjets[ijet].momentum().y()*pTmiss.y();
+	if(mT<170.) vetoEvent;
+      }
 
-      // same flavour region
-      if(leptons[0].pdgId()==-leptons[1].pdgId()) {
-	// remove Z region
-	if(mll>71.&&mll<111.) vetoEvent;
-	// require at least 1 b jet
-	unsigned int n_b=0;
-	for(unsigned int ix=0;ix<recon_jets.size();++ix) {
-	   if(recon_jets[ix].containsBottom() && rand()/static_cast<double>(RAND_MAX)>=0.60)
-	     ++n_b;
+      // 1 tight b-jet apply mT cut
+      if(tight_bjets.size()==1) {
+	for(unsigned int ix=0;ix<4;++ix) {
+	  double mT = 2.*recon_jets[ix].momentum().perp()*ETmiss
+	    -recon_jets[ix].momentum().x()*pTmiss.x()
+	    -recon_jets[ix].momentum().y()*pTmiss.y();
+	  if(mT<175.) vetoEvent;
 	}
-	if(n_b==0) vetoEvent;
-	_hist_mT2_SF_exp->fill(m_T2,weight);
-	_hist_mT2_SF_MC ->fill(m_T2,weight);
-	if(m_T2>120.) _count_SR_SF->fill(0.5,weight);
-      }
-      // opposite flavour region
-      else {
-	_hist_mT2_OF_exp->fill(m_T2,weight);
-	_hist_mT2_OF_MC ->fill(m_T2,weight);
-	if(m_T2>120.) _count_SR_OF->fill(0.5,weight);
       }
+
+      // find the closest triplet of jets in (eta,phi)
+      unsigned int j1(0),j2(0),j3(0);
+      double minR2(1e30);
+      for(unsigned int i1=0;i1<recon_jets.size();++i1) {
+	for(unsigned int i2=i1+1;i2<recon_jets.size();++i2) {
+	  for(unsigned int i3=i2+1;i3<recon_jets.size();++i3) {
+	    double delR2 = 
+	      sqr(deltaR(recon_jets[i1].momentum(),recon_jets[i2].momentum())) +
+	      sqr(deltaR(recon_jets[i1].momentum(),recon_jets[i3].momentum())) +
+	      sqr(deltaR(recon_jets[i2].momentum(),recon_jets[i3].momentum()));
+	    if(delR2<minR2) {
+	      minR2=delR2;
+	      j1=i1;
+	      j2=i2;
+	      j3=i3;
+	    }
+	  }
+	}
+      }
+      // 4-momentum and mass of first triplet
+      FourMomentum pjjj1 = recon_jets[j1].momentum() + 
+	recon_jets[j2].momentum()+ recon_jets[j3].momentum();
+      double mjjj1 = pjjj1.mass();
+
+      // find the second triplet
+      unsigned int j4(0),j5(0),j6(0);
+      minR2=0.;
+      for(unsigned int i1=0;i1<recon_jets.size();++i1) {
+	if(i1==j1||i1==j2||i1==j3) continue;
+	for(unsigned int i2=i1+1;i2<recon_jets.size();++i2) {
+	  if(i2==j1||i2==j2||i2==j3) continue;
+	  for(unsigned int i3=i2+1;i3<recon_jets.size();++i3) {
+	    if(i3==j1||i3==j2||i3==j3) continue;
+	    double delR2 = 
+	      sqr(deltaR(recon_jets[i1].momentum(),recon_jets[i2].momentum())) +
+	      sqr(deltaR(recon_jets[i1].momentum(),recon_jets[i3].momentum())) +
+	      sqr(deltaR(recon_jets[i2].momentum(),recon_jets[i3].momentum()));
+	    if(delR2<minR2) {
+	      minR2=delR2;
+	      j4=i1;
+	      j5=i2;
+	      j6=i3;
+	    }
+	  }
+	}
+      }
+
+      // 4-momentum and mass of first triplet
+      FourMomentum pjjj2 = recon_jets[j4].momentum() + 
+	recon_jets[j5].momentum()+ recon_jets[j6].momentum();
+      double mjjj2 = pjjj2.mass();
+
+      _hist_mjjj1->fill(mjjj1,weight);
+      _hist_mjjj2->fill(mjjj2,weight);
+      // require triplets in 80<mjjj<270
+      if(mjjj1<80.||mjjj1>270.||mjjj2<80.||mjjj2>270.)
+	vetoEvent;
+
+      // counts in signal regions
+      _count_SR_A->fill(0.5,weight);
+      if(ETmiss>260.) _count_SR_B->fill(0.5,weight);
+
+      _hist_ETmiss->fill(ETmiss,weight);
+      double m_T2 = mT2::mT2( pjjj1,pjjj2,
+			      pTmiss,0.0 ); // zero mass invisibles
+      _hist_mT2->fill(m_T2,weight);
     }
     //@}
 
@@ -218,12 +292,12 @@
     void finalize() {
 
       double norm = 4.7* crossSection()/sumOfWeights()/femtobarn;
-      scale(_count_SR_SF    ,   norm);
-      scale(_count_SR_OF    ,   norm);
-      scale(_hist_mT2_SF_exp,5.*norm);
-      scale(_hist_mT2_OF_exp,5.*norm);
-      scale(_hist_mT2_SF_MC ,   norm/4.7);
-      scale(_hist_mT2_OF_MC ,   norm/4.7);
+      scale(_count_SR_A ,     norm );
+      scale(_count_SR_B ,     norm );
+      scale(_hist_mjjj1 , 20.*norm );
+      scale(_hist_ETmiss, 50.*norm );
+      scale(_hist_mjjj2 , 20.*norm );
+      scale(_hist_mT2   ,     norm );
 
     }
 
@@ -231,18 +305,18 @@
 
     /// @name Histograms
     //@{
-    AIDA::IHistogram1D* _count_SR_SF;
-    AIDA::IHistogram1D* _count_SR_OF;
+    AIDA::IHistogram1D* _count_SR_A;
+    AIDA::IHistogram1D* _count_SR_B;
 
-    AIDA::IHistogram1D* _hist_mT2_SF_exp;
-    AIDA::IHistogram1D* _hist_mT2_OF_exp;
-    AIDA::IHistogram1D* _hist_mT2_SF_MC;
-    AIDA::IHistogram1D* _hist_mT2_OF_MC;
+    AIDA::IHistogram1D* _hist_mjjj1;
+    AIDA::IHistogram1D* _hist_mjjj2;
+    AIDA::IHistogram1D* _hist_ETmiss;
+    AIDA::IHistogram1D* _hist_mT2;   
     //@}
 
   };
 
   // The hook for the plugin system
-  DECLARE_RIVET_PLUGIN(ATLAS_2012_I1186556);
+  DECLARE_RIVET_PLUGIN(ATLAS_2012_I1126136);
 
 }

Modified: branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc
==============================================================================
--- branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc	Mon Oct 22 13:15:14 2012	(r3971)
+++ branches/2012-06-aidarivet/src/Analyses/ATLAS_2012_I1186556.cc	Thu Oct 25 12:25:01 2012	(r3972)
@@ -197,7 +197,7 @@
 	// require at least 1 b jet
 	unsigned int n_b=0;
 	for(unsigned int ix=0;ix<recon_jets.size();++ix) {
-	   if(recon_jets[ix].containsBottom() && rand()/static_cast<double>(RAND_MAX)>=0.60)
+	   if(recon_jets[ix].containsBottom() && rand()/static_cast<double>(RAND_MAX)<=0.60)
 	     ++n_b;
 	}
 	if(n_b==0) vetoEvent;

Modified: branches/2012-06-aidarivet/src/Analyses/Makefile.am
==============================================================================
--- branches/2012-06-aidarivet/src/Analyses/Makefile.am	Mon Oct 22 13:15:14 2012	(r3971)
+++ branches/2012-06-aidarivet/src/Analyses/Makefile.am	Thu Oct 25 12:25:01 2012	(r3972)
@@ -95,6 +95,7 @@
     ATLAS_2012_I1095236.cc \
     ATLAS_2012_I1082009.cc \
     ATLAS_2012_I946427.cc \
+    ATLAS_2012_I1126136.cc \
     ATLAS_2012_I1180197.cc \
     ATLAS_2012_I1186556.cc \
     ATLAS_2012_I1190891.cc \


More information about the Rivet-svn mailing list