[Rivet-svn] r1741 - in trunk: data/plotinfo src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Wed Aug 5 14:31:59 BST 2009


Author: fsiegert
Date: Wed Aug  5 14:31:59 2009
New Revision: 1741

Log:
Fix some @todo's in the Z+jets analyses by using the generator cross section for histogram normalisation.

Modified:
   trunk/data/plotinfo/D0_2008_S6879055.plot
   trunk/src/Analyses/ALEPH_1991_S2435284.cc
   trunk/src/Analyses/CDF_2008_S7540469.cc
   trunk/src/Analyses/D0_2008_S6879055.cc
   trunk/src/Analyses/D0_2008_S7863608.cc
   trunk/src/Analyses/D0_2009_S8202443.cc

Modified: trunk/data/plotinfo/D0_2008_S6879055.plot
==============================================================================
--- trunk/data/plotinfo/D0_2008_S6879055.plot	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/data/plotinfo/D0_2008_S6879055.plot	Wed Aug  5 14:31:59 2009	(r1741)
@@ -7,19 +7,19 @@
 # END PLOT
 
 # BEGIN PLOT /D0_2008_S6879055/d02-x01-y01
-Title=$p_\perp$ of 1st jet for $N_{\text{jet}} \geq 1$
+Title=$p_\perp$ of 1st jet (not detector-corrected!)
 XLabel=$p_\perp$(1st jet) [GeV]
 YLabel=$1/\sigma \; \text{d}\sigma/\text{d}p_\perp$
 # END PLOT
 
 # BEGIN PLOT /D0_2008_S6879055/d03-x01-y01
-Title=$p_\perp$ of 2nd jet for $N_{\text{jet}} \geq 2$
+Title=$p_\perp$ of 2nd jet (not detector-corrected!)
 XLabel=$p_\perp$(2nd jet) [GeV]
 YLabel=$1/\sigma \; \text{d}\sigma/\text{d}p_\perp$
 # END PLOT
 
 # BEGIN PLOT /D0_2008_S6879055/d04-x01-y01
-Title=$p_\perp$ of 3rd jet for $N_{\text{jet}} \geq 3$
+Title=$p_\perp$ of 3rd jet (not detector-corrected!)
 XLabel=$p_\perp$(3rd jet) [GeV]
 YLabel=$1/\sigma \; \text{d}\sigma/\text{d}p_\perp$
 # END PLOT

Modified: trunk/src/Analyses/ALEPH_1991_S2435284.cc
==============================================================================
--- trunk/src/Analyses/ALEPH_1991_S2435284.cc	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/src/Analyses/ALEPH_1991_S2435284.cc	Wed Aug  5 14:31:59 2009	(r1741)
@@ -20,8 +20,7 @@
   
   void ALEPH_1991_S2435284::init() {
     // Book histogram
-    _histChTot = bookHistogram1D(1, 1, 1, "Total charged multiplicity", "$n_\\text{ch}$", 
-                                 "$2/\\sigma \\, \\mathrm{d}{\\sigma}/\\mathrm{d}{n_\\text{ch}}$");
+    _histChTot = bookHistogram1D(1, 1, 1);
   }
 
 

Modified: trunk/src/Analyses/CDF_2008_S7540469.cc
==============================================================================
--- trunk/src/Analyses/CDF_2008_S7540469.cc	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/src/Analyses/CDF_2008_S7540469.cc	Wed Aug  5 14:31:59 2009	(r1741)
@@ -14,6 +14,7 @@
     : Analysis("CDF_2008_S7540469")
   {
     setBeams(PROTON, ANTIPROTON);
+    setNeedsCrossSection(true);
     
     //full final state
     FinalState fs(-5.0, 5.0);
@@ -29,15 +30,9 @@
 
   // Book histograms
   void CDF_2008_S7540469::init() {
-    _h_jet_multiplicity = bookHistogram1D
-      (1, 1, 1, "Jet multiplicity",
-       "$N_{\\text{jet}}$", "$\\sigma(N_{\\text{jet}})$");
-    _h_jet_pT_cross_section_incl_1jet = bookHistogram1D
-      (2, 1, 1,"Jet $p_\\perp$ for inclusive $N_{\\text{jet}} \\geq 1$",
-       "$p_\\perp$(jet) [GeV]", "$\\text{d}\\sigma/\\text{d}p_\\perp(\\text{jet})$");
-    _h_jet_pT_cross_section_incl_2jet = bookHistogram1D
-      (3, 1, 1,"Jet $p_\\perp$ for inclusive $N_{\\text{jet}} \\geq 2$",
-       "$p_\\perp$(jet) [GeV]", "$\\text{d}\\sigma/\\text{d}p_\\perp(\\text{jet})$");
+    _h_jet_multiplicity = bookHistogram1D(1, 1, 1);
+    _h_jet_pT_cross_section_incl_1jet = bookHistogram1D(2, 1, 1);
+    _h_jet_pT_cross_section_incl_2jet = bookHistogram1D(3, 1, 1);
   }
 
 
@@ -172,15 +167,10 @@
 
   // Finalize
   void CDF_2008_S7540469::finalize() {
-    /// @todo Use the generator cross-section
-    
-    // normalize jet multi to first bin
-    double factor=0.;
-    if (_h_jet_multiplicity->binHeight(0) != 0)
-      factor=7003.0/_h_jet_multiplicity->binHeight(0);
-    scale(_h_jet_multiplicity, factor);
-    normalize(_h_jet_pT_cross_section_incl_1jet, 7839.5);
-    normalize(_h_jet_pT_cross_section_incl_2jet, 1471.35);
+    const double invlumi = crossSection()/femtobarn/sumOfWeights();
+    scale(_h_jet_multiplicity, invlumi);
+    scale(_h_jet_pT_cross_section_incl_1jet, invlumi);
+    scale(_h_jet_pT_cross_section_incl_2jet, invlumi);
   }
 
 }

Modified: trunk/src/Analyses/D0_2008_S6879055.cc
==============================================================================
--- trunk/src/Analyses/D0_2008_S6879055.cc	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/src/Analyses/D0_2008_S6879055.cc	Wed Aug  5 14:31:59 2009	(r1741)
@@ -51,17 +51,10 @@
 
   // Book histograms
   void D0_2008_S6879055::init() {
-    _crossSectionRatio = bookHistogram1D
-      (1, 1, 1, "Inclusive jet multiplicity",
-       "$N_{\\text{jet}}$", "$\\sigma(Z \\, + \\geq N_{\\text{jet}}\\;\\text{jets}) / \\sigma(Z \\; \\text{inclusive})$");
-    const string xlabel = "$p_\\perp$";
-    const string ylabel = "$1/\\sigma \\; \\text{d}\\sigma/\\text{d}p_\\perp$";
-    _pTjet1 = bookHistogram1D
-      (2, 1, 1, "$p_\\perp$ of 1st jet for $N_{\\text{jet}} \\geq 1$", xlabel+"(1st jet) [GeV]", ylabel);
-    _pTjet2 = bookHistogram1D
-      (3, 1, 1, "$p_\\perp$ of 2nd jet for $N_{\\text{jet}} \\geq 2$", xlabel+"(2nd jet) [GeV]", ylabel);
-    _pTjet3 = bookHistogram1D
-      (4, 1, 1, "$p_\\perp$ of 3rd jet for $N_{\\text{jet}} \\geq 3$", xlabel+"(3rd jet) [GeV]", ylabel);
+    _crossSectionRatio = bookHistogram1D(1, 1, 1);
+    _pTjet1 = bookHistogram1D(2, 1, 1);
+    _pTjet2 = bookHistogram1D(3, 1, 1);
+    _pTjet3 = bookHistogram1D(4, 1, 1);
   }
 
 
@@ -146,6 +139,8 @@
     _crossSectionRatio->scale(1.0/_crossSectionRatio->binHeight(0));
 
     // Normalise jet pT's to integral of data
+    // there is no other way to do this, because these quantities are not
+    // detector corrected
     normalize(_pTjet1, 10439.0);
     normalize(_pTjet2, 1461.5);
     normalize(_pTjet3, 217.0);

Modified: trunk/src/Analyses/D0_2008_S7863608.cc
==============================================================================
--- trunk/src/Analyses/D0_2008_S7863608.cc	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/src/Analyses/D0_2008_S7863608.cc	Wed Aug  5 14:31:59 2009	(r1741)
@@ -12,9 +12,7 @@
     : Analysis("D0_2008_S7863608")
   {
     setBeams(PROTON, ANTIPROTON);
-    
-    /// @todo Use cross-section from generator
-    //setNeedsCrossSection(true);
+    setNeedsCrossSection(true);
 
     ZFinder zfinder(-1.7, 1.7, 15.0*GeV, MUON, 65.0*GeV, 115.0*GeV, 0.2);
     addProjection(zfinder, "ZFinder");
@@ -28,7 +26,6 @@
   // Book histograms
   void D0_2008_S7863608::init() {
 
-    /// @todo Dividing through by measured Z cross-section would be nice...
     _h_jet_pT_cross_section = bookHistogram1D(1, 1, 1);
     _h_jet_y_cross_section = bookHistogram1D(2, 1, 1);
     _h_Z_pT_cross_section = bookHistogram1D(3, 1, 1);
@@ -80,6 +77,8 @@
       // In Z pT
       _h_Z_pT_cross_section->fill(Zmom.pT(), weight);
       _h_Z_y_cross_section->fill(fabs(Zmom.rapidity()), weight);
+
+      _h_total_cross_section->fill(1960.0, weight);
     }
   }
 
@@ -87,12 +86,12 @@
 
   // Finalize
   void D0_2008_S7863608::finalize() {
-    /// @todo Use the generator cross-section
-    //_h_total_cross_section->fill(crossSection());
-    normalize(_h_jet_pT_cross_section, 18.7);
-    normalize(_h_jet_y_cross_section, 18.7);
-    normalize(_h_Z_pT_cross_section, 18.7);
-    normalize(_h_Z_y_cross_section, 18.7);
+    const double invlumi = crossSection()/sumOfWeights();
+    scale(_h_total_cross_section, invlumi);
+    scale(_h_jet_pT_cross_section, invlumi);
+    scale(_h_jet_y_cross_section, invlumi);
+    scale(_h_Z_pT_cross_section, invlumi);
+    scale(_h_Z_y_cross_section, invlumi);
   }
 
 }

Modified: trunk/src/Analyses/D0_2009_S8202443.cc
==============================================================================
--- trunk/src/Analyses/D0_2009_S8202443.cc	Tue Aug  4 18:01:35 2009	(r1740)
+++ trunk/src/Analyses/D0_2009_S8202443.cc	Wed Aug  5 14:31:59 2009	(r1741)
@@ -15,9 +15,6 @@
   {
     setBeams(PROTON, ANTIPROTON);
     
-    /// @todo Use cross-section from generator
-    //setNeedsCrossSection(true);
-
     // Leptons in constrained tracking acceptance
     std::vector<std::pair<double, double> > etaRanges;
     etaRanges.push_back(make_pair(-2.5, -1.5));


More information about the Rivet-svn mailing list