[Rivet-svn] r3328 - in branches/2011-07-aida2yoda: data/plotinfo src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Thu Aug 25 11:16:29 BST 2011


Author: hoeth
Date: Thu Aug 25 11:16:29 2011
New Revision: 3328

Log:
merge r3320 from trunk

Modified:
   branches/2011-07-aida2yoda/data/plotinfo/MC_GENERIC.plot
   branches/2011-07-aida2yoda/src/Analyses/MC_GENERIC.cc

Modified: branches/2011-07-aida2yoda/data/plotinfo/MC_GENERIC.plot
==============================================================================
--- branches/2011-07-aida2yoda/data/plotinfo/MC_GENERIC.plot	Thu Aug 25 11:12:57 2011	(r3327)
+++ branches/2011-07-aida2yoda/data/plotinfo/MC_GENERIC.plot	Thu Aug 25 11:16:29 2011	(r3328)
@@ -168,3 +168,44 @@
 LogY=0
 LegendYPos=0.5
 # END PLOT
+
+# BEGIN PLOT /MC_GENERIC/PdfX
+Title=PDF sampling $x$ value distribution
+XLabel=$x$
+YLabel=$1/N_\text{evt} \  \mathrm{d}N_\text{evt}/\mathrm{d}x$
+LogX=1
+LogY=1
+FullRange=1
+LegendXPos=0.1
+LegendYPos=0.5
+# END PLOT
+
+# BEGIN PLOT /MC_GENERIC/PdfXmin
+Title=PDF sampling $x_\text{min}$ value distribution
+XLabel=$x_\text{min}$
+# END PLOT
+
+# BEGIN PLOT /MC_GENERIC/PdfXmax
+Title=PDF sampling $x_\text{max}$ value distribution
+XLabel=$x_\text{max}$
+LegendXPos=0.3
+XMin=0.00005
+# END PLOT
+
+# BEGIN PLOT /MC_GENERIC/PdfQ
+Title=PDF sampling $Q$ value distribution
+XLabel=$Q$
+YLabel=$1/N_\text{evt} \  \mathrm{d}N_\text{evt}/\mathrm{d}Q$
+LogX=0
+LogY=1
+FullRange=1
+LegendYPos=0.9
+# END PLOT
+
+# # BEGIN PLOT /MC_GENERIC/PdfXQ
+# Title=PDF sampling $x, Q$ value distribution
+# XLabel=$x$
+# YLabel=$Q$
+# LogX=0
+# LogY=0
+# # END PLOT

Modified: branches/2011-07-aida2yoda/src/Analyses/MC_GENERIC.cc
==============================================================================
--- branches/2011-07-aida2yoda/src/Analyses/MC_GENERIC.cc	Thu Aug 25 11:12:57 2011	(r3327)
+++ branches/2011-07-aida2yoda/src/Analyses/MC_GENERIC.cc	Thu Aug 25 11:16:29 2011	(r3328)
@@ -71,6 +71,14 @@
 
       _histPhi    = bookHisto1D("Phi", 50, 0, TWOPI);
       _histPhiCh  = bookHisto1D("PhiCh", 50, 0, TWOPI);
+
+      _histPdfX     = bookHisto1D("PdfX", logspace(0.000001, 1.0, 50));
+      _histPdfXmin  = bookHisto1D("PdfXmin", logspace(0.000001, 1.0, 50));
+      _histPdfXmax  = bookHisto1D("PdfXmax", logspace(0.000001, 1.0, 50));
+      _histPdfQ     = bookHisto1D("PdfQ", 50, 0.0, 30.0);
+      // _histPdfXQ = bookHisto2D("PdfXQ", logspace(0.000001, 1.0, 50), linspace(0.0, 30.0, 50));
+      // _histPdfTrackptVsX = bookProfile1D("PdfTrackptVsX", logspace(0.000001, 1.0, 50));
+      // _histPdfTrackptVsQ = bookProfile1D("PdfTrackptVsQ", 50, 0.0, 30.0);
     }
 
 
@@ -84,6 +92,19 @@
         _histAllPIDs->fill(abs(gp->pdg_id()), weight);
       }
 
+      // Print and plot PDF info
+      if (event.genEvent().pdf_info() != 0) {
+        HepMC::PdfInfo pdfi = *event.genEvent().pdf_info();
+        MSG_DEBUG("PDF Q = " << pdfi.scalePDF() << " for (id, x) = "
+                  << "(" << pdfi.id1() << ", " << pdfi.x1() << ") "
+                  << "(" << pdfi.id2() << ", " << pdfi.x2() << ")");
+        _histPdfX->fill(pdfi.x1(), weight);
+        _histPdfX->fill(pdfi.x2(), weight);
+        _histPdfXmin->fill(std::min(pdfi.x1(), pdfi.x2()), weight);
+        _histPdfXmax->fill(std::max(pdfi.x1(), pdfi.x2()), weight);
+        _histPdfQ->fill(pdfi.scalePDF(), weight); // always in GeV?
+      }
+
       // Charged + neutral final state
       const FinalState& cnfs = applyProjection<FinalState>(event, "FS");
       MSG_DEBUG("Total multiplicity = " << cnfs.size());
@@ -131,6 +152,15 @@
         _histPtCh->fill(p.momentum().pT()/GeV, weight);
         _histECh->fill(p.momentum().E()/GeV, weight);
         _histPhiCh->fill(p.momentum().phi(), weight);
+
+        // if (event.genEvent().pdf_info() != 0) {
+        //   if (fabs(eta) < 2.5 && p.momentum().pT() > 10*GeV) {
+        //     HepMC::PdfInfo pdfi = *event.genEvent().pdf_info();
+        //     _histPdfTrackptVsX->fill(pdfi.x1(), p.momentum().pT()/GeV, weight);
+        //     _histPdfTrackptVsX->fill(pdfi.x2(), p.momentum().pT()/GeV, weight);
+        //     _histPdfTrackptVsQ->fill(pdfi.scalePDF(), p.momentum().pT()/GeV, weight);
+        //   }
+        // }
       }
 
 
@@ -179,6 +209,11 @@
       scale(_histPhi, 1/sumOfWeights());
       scale(_histPhiCh, 1/sumOfWeights());
 
+      scale(_histPdfX, 1/sumOfWeights());
+      scale(_histPdfXmin, 1/sumOfWeights());
+      scale(_histPdfXmax, 1/sumOfWeights());
+      scale(_histPdfQ, 1/sumOfWeights());
+
       // \todo YODA divide
       // histogramFactory().divide(histoPath("EtaPMRatio"), *_tmphistEtaPlus, *_tmphistEtaMinus);
       // histogramFactory().divide(histoPath("EtaChPMRatio"), *_tmphistEtaChPlus, *_tmphistEtaChMinus);
@@ -197,17 +232,19 @@
     Histo1DPtr _tmphistRapPlus, _tmphistRapMinus;
     Histo1DPtr _tmphistRapChPlus, _tmphistRapChMinus;
 
+    /// @name Histograms
     //@{
-    /// Histograms
     Histo1DPtr _histMult, _histMultCh;
     Histo1DPtr _histStablePIDs, _histDecayedPIDs, _histAllPIDs;
     Histo1DPtr _histEtaPi, _histEtaK, _histEtaLambda;
-    Profile1DPtr  _histEtaSumEt;
+    Profile1DPtr _histEtaSumEt;
     Histo1DPtr _histEta, _histEtaCh;
     Histo1DPtr _histRapidity, _histRapidityCh;
     Histo1DPtr _histPt, _histPtCh;
     Histo1DPtr _histE, _histECh;
     Histo1DPtr _histPhi, _histPhiCh;
+    Histo1DPtr _histPdfX, _histPdfXmin, _histPdfXmax, _histPdfQ;
+    // Profile1DPtr _histPdfTrackptVsX, _histPdfTrackptVsQ;
     //@}
 
   };


More information about the Rivet-svn mailing list