00001
00002 #include "Rivet/Analysis.hh"
00003 #include "Rivet/RivetAIDA.hh"
00004 #include "Rivet/Tools/Logging.hh"
00005 #include "Rivet/Tools/BinnedHistogram.hh"
00006 #include "Rivet/Projections/FinalState.hh"
00007 #include "Rivet/Projections/FastJets.hh"
00008
00009 namespace Rivet {
00010
00011
00012 class CDF_2001_S4517016 : public Analysis {
00013 public:
00014
00015
00016
00017
00018
00019 CDF_2001_S4517016()
00020 : Analysis("CDF_2001_S4517016")
00021 {
00022 setBeams(PROTON, ANTIPROTON);
00023 setNeedsCrossSection(true);
00024 }
00025
00026
00027
00028
00029 public:
00030
00031
00032
00033
00034
00035 void init() {
00036 FinalState fs(-4.2, 4.2);
00037 addProjection(FastJets(fs, FastJets::CDFJETCLU, 0.7), "Jets");
00038
00039 _h_ET.addHistogram(0.1, 0.7, bookHistogram1D(1, 1, 1));
00040 _h_ET.addHistogram(0.7, 1.4, bookHistogram1D(2, 1, 1));
00041 _h_ET.addHistogram(1.4, 2.1, bookHistogram1D(3, 1, 1));
00042 _h_ET.addHistogram(2.1, 3.0, bookHistogram1D(4, 1, 1));
00043 }
00044
00045
00046
00047 void analyze(const Event& event) {
00048 const double weight = event.weight();
00049
00050 Jets jets = applyProjection<FastJets>(event, "Jets").jetsByEt(10.0*GeV);
00051 if (jets.size()<2) {
00052 vetoEvent;
00053 }
00054 FourMomentum jet1 = jets[0].momentum();
00055 FourMomentum jet2 = jets[1].momentum();
00056 double eta1 = fabs(jet1.eta());
00057 double eta2 = fabs(jet2.eta());
00058 double ET1 = jet1.Et();
00059 double ET2 = jet2.Et();
00060 if (eta1<0.1 || eta1>0.7 || ET1<40.0*GeV) {
00061 vetoEvent;
00062 }
00063 if (eta2<0.1 || eta2>3.0) {
00064 vetoEvent;
00065 }
00066 _h_ET.fill(eta2, ET1, weight);
00067 if (eta2<0.7 && ET2>40.0*GeV) _h_ET.fill(eta1, ET2, weight);
00068 }
00069
00070
00071
00072 void finalize() {
00073 double deta1 = 1.2;
00074 double deta2[4] = {1.2, 1.4, 1.4, 1.8};
00075 int i=0;
00076 foreach (AIDA::IHistogram1D* hist, _h_ET.getHistograms()) {
00077 scale(hist, crossSection()/nanobarn/sumOfWeights()/deta2[i]/deta1);
00078 ++i;
00079 }
00080 }
00081
00082
00083
00084
00085 private:
00086
00087
00088
00089 BinnedHistogram<double> _h_ET;
00090
00091
00092 };
00093
00094
00095
00096
00097 AnalysisBuilder<CDF_2001_S4517016> plugin_CDF_2001_S4517016;
00098
00099
00100 }