|
[Rivet-svn] r1977 - in trunk: data/anainfo data/plotinfo src/Analysesblackhole at projects.hepforge.org blackhole at projects.hepforge.orgMon Nov 2 14:15:42 GMT 2009
Author: fsiegert Date: Mon Nov 2 14:15:41 2009 New Revision: 1977 Log: Add diphoton MC analysis for LHC. Added: trunk/data/anainfo/MC_LHC_DIPHOTON.info trunk/data/plotinfo/MC_LHC_DIPHOTON.plot trunk/src/Analyses/MC_LHC_DIPHOTON.cc Modified: trunk/data/anainfo/Makefile.am trunk/data/plotinfo/Makefile.am trunk/src/Analyses/Makefile.am Added: trunk/data/anainfo/MC_LHC_DIPHOTON.info ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/data/anainfo/MC_LHC_DIPHOTON.info Mon Nov 2 14:15:41 2009 (r1977) @@ -0,0 +1,16 @@ +Name: MC_LHC_DIPHOTON +Year: NONE +Summary: Monte Carlo validation observables for diphoton production at LHC +Experiment: MC +Collider: LHC +SpiresID: NONE +Status: NOT TO BE VALIDATED +Authors: + - Frank Siegert <frank.siegert at durham.ac.uk> +References: +RunInfo: + LHC pp -> jet+jet, photon+jet, photon+photon, all with EW+QCD shower +NumEvents: 10000000 +PtCuts: [0] +Description: + Different observables related to the two photons Modified: trunk/data/anainfo/Makefile.am ============================================================================== --- trunk/data/anainfo/Makefile.am Mon Nov 2 12:38:06 2009 (r1976) +++ trunk/data/anainfo/Makefile.am Mon Nov 2 14:15:41 2009 (r1977) @@ -54,6 +54,7 @@ JADE_OPAL_2000_S4300807.info \ MC_LHC_LEADINGJETS.info \ MC_LHC_DIJET.info \ + MC_LHC_DIPHOTON.info \ MC_LHC_PHOTONJETUE.info \ MC_LHC_SUSY.info \ MC_LHC_TTBAR.info \ Added: trunk/data/plotinfo/MC_LHC_DIPHOTON.plot ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/data/plotinfo/MC_LHC_DIPHOTON.plot Mon Nov 2 14:15:41 2009 (r1977) @@ -0,0 +1,17 @@ +# BEGIN PLOT /MC_LHC_DIPHOTON/m_PP +Title=Invariant mass of diphoton pair +XLabel=$M_{\gamma \gamma}$ (GeV/$c^2$) +YLabel=$\mathrm{d}\sigma/\mathrm{d}M_{\gamma \gamma}$ (pb/(GeV/$c^2$)) +# END PLOT + +# BEGIN PLOT /MC_LHC_DIPHOTON/pT_PP +Title=Transverse momentum of diphoton pair +XLabel=$p_{\perp}^{\gamma \gamma}$ (GeV/$c$) +YLabel=$\mathrm{d}\sigma/\mathrm{d}p_{\perp}^{\gamma \gamma}$ (pb/(GeV/$c$)) +# END PLOT + +# BEGIN PLOT /MC_LHC_DIPHOTON/dphi_PP +Title=Azimuthal angle between photons +XLabel=$\Delta\Phi_{\gamma \gamma}$ (rad) +YLabel=$\mathrm{d}\sigma/\mathrm{d}\Delta\Phi_{\gamma \gamma}$ (pb/rad) +# END PLOT Modified: trunk/data/plotinfo/Makefile.am ============================================================================== --- trunk/data/plotinfo/Makefile.am Mon Nov 2 12:38:06 2009 (r1976) +++ trunk/data/plotinfo/Makefile.am Mon Nov 2 14:15:41 2009 (r1977) @@ -53,6 +53,7 @@ JADE_OPAL_2000_S4300807.plot \ MC_LHC_LEADINGJETS.plot \ MC_LHC_DIJET.plot \ + MC_LHC_DIPHOTON.plot \ MC_LHC_PHOTONJETUE.plot \ MC_LHC_ZANALYSIS.plot \ MC_LHC_WANALYSIS.plot \ Added: trunk/src/Analyses/MC_LHC_DIPHOTON.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/src/Analyses/MC_LHC_DIPHOTON.cc Mon Nov 2 14:15:41 2009 (r1977) @@ -0,0 +1,101 @@ +// -*- C++ -*- +#include "Rivet/Analysis.hh" +#include "Rivet/Projections/FinalState.hh" +#include "Rivet/Projections/IdentifiedFinalState.hh" +#include "Rivet/Tools/Logging.hh" + +namespace Rivet { + + + class MC_LHC_DIPHOTON : public Analysis { + public: + + /// Constructor + MC_LHC_DIPHOTON() : Analysis("MC_LHC_DIPHOTON") { + setNeedsCrossSection(true); + } + + + /// @name Analysis methods + //@{ + + void init() { + FinalState fs; + addProjection(fs, "FS"); + + IdentifiedFinalState ifs(-2.0, 2.0, 20.0*GeV); + ifs.acceptId(PHOTON); + addProjection(ifs, "IFS"); + + _h_m_PP = bookHistogram1D("m_PP", 50, 10.0, 500.0); + _h_pT_PP = bookHistogram1D("pT_PP", 50, 0.0, 200.0); + _h_dphi_PP = bookHistogram1D("dphi_PP", 20, 0.0, M_PI); + } + + + void analyze(const Event& event) { + const double weight = event.weight(); + + ParticleVector photons = applyProjection<IdentifiedFinalState>(event, "IFS").particles(); + + if (photons.size() < 2) { + vetoEvent; + } + + // Isolate photons with ET_sum in cone + ParticleVector isolated_photons; + ParticleVector fs = applyProjection<FinalState>(event, "FS").particles(); + foreach (const Particle& photon, photons) { + FourMomentum mom_in_cone; + double eta_P = photon.momentum().eta(); + double phi_P = photon.momentum().phi(); + foreach (const Particle& p, fs) { + if (deltaR(eta_P, phi_P, p.momentum().eta(), p.momentum().phi()) < 0.4) { + mom_in_cone += p.momentum(); + } + } + if (mom_in_cone.Et()-photon.momentum().Et() < 1.0*GeV) { + isolated_photons.push_back(photon); + } + } + + if (isolated_photons.size() != 2) { + vetoEvent; + } + + FourMomentum mom_PP = isolated_photons[0].momentum() + isolated_photons[1].momentum(); + _h_m_PP->fill(mom_PP.mass(), weight); + _h_pT_PP->fill(mom_PP.pT(), weight); + _h_dphi_PP->fill(mapAngle0ToPi(isolated_photons[0].momentum().phi()- + isolated_photons[1].momentum().phi())/M_PI, weight); + } + + + void finalize() { + scale(_h_m_PP, crossSection()/sumOfWeights()); + scale(_h_pT_PP, crossSection()/sumOfWeights()); + scale(_h_dphi_PP, crossSection()/sumOfWeights()); + } + + //@} + + + private: + + /// @name Histograms + //@{ + AIDA::IHistogram1D* _h_m_PP; + AIDA::IHistogram1D* _h_pT_PP; + AIDA::IHistogram1D* _h_dphi_PP; + //@} + + + }; + + + + // This global object acts as a hook for the plugin system + AnalysisBuilder<MC_LHC_DIPHOTON> plugin_MC_LHC_DIPHOTON; + +} + Modified: trunk/src/Analyses/Makefile.am ============================================================================== --- trunk/src/Analyses/Makefile.am Mon Nov 2 12:38:06 2009 (r1976) +++ trunk/src/Analyses/Makefile.am Mon Nov 2 14:15:41 2009 (r1977) @@ -109,6 +109,7 @@ MC_TVT1960_ZJETS.cc \ MC_LHC_LEADINGJETS.cc \ MC_LHC_DIJET.cc \ + MC_LHC_DIPHOTON.cc \ MC_LHC_PHOTONJETUE.cc \ MC_LHC_WANALYSIS.cc \ MC_LHC_ZANALYSIS.cc \
More information about the Rivet-svn mailing list |