Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-05-12 09:05:01

0001 // -*- C++ -*-
0002 #ifndef RIVET_CentralEtHCM_HH
0003 #define RIVET_CentralEtHCM_HH
0004 
0005 #include "Rivet/Particle.hh"
0006 #include "Rivet/Event.hh"
0007 #include "Rivet/Projections/DISFinalState.hh"
0008 
0009 namespace Rivet {
0010 
0011 
0012   /// @brief Summed \f$ E_\perp \f$ of central particles in HCM system.
0013   ///
0014   /// Sum up \f$ E_\perp \f$ of all particles in the hadronic final state in the
0015   /// central rapidity bin of the HCM system.
0016   class CentralEtHCM : public Projection {
0017   public:
0018 
0019     /// The default constructor. Must specify a FinalStateHCM projection
0020     /// object which is guaranteed to live throughout the run.
0021     CentralEtHCM(const DISFinalState& fs)
0022     {
0023       setName("CentralEtHCM");
0024       declare(fs, "FS");
0025     }
0026 
0027     /// Clone on the heap.
0028     RIVET_DEFAULT_PROJ_CLONE(CentralEtHCM);
0029 
0030     /// Import to avoid warnings about overload-hiding
0031     using Projection::operator =;
0032 
0033 
0034   protected:
0035 
0036     /// Apply the projection on to the Event.
0037     void project(const Event& e);
0038 
0039     /// Compare with other projections
0040     CmpState compare(const Projection& p) const {
0041       return mkNamedPCmp(p, "FS");
0042     }
0043 
0044 
0045   public:
0046 
0047     /// The sum of the Et in the central rapidity bin.
0048     double sumEt() const { return _sumet; }
0049 
0050 
0051   protected:
0052 
0053     /// The sum of the Et in the central rapidity bin.
0054     double _sumet;
0055 
0056   };
0057 
0058 }
0059 
0060 
0061 #endif