Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-19 09:09:41

0001 #ifndef Analysis_Observables_CD_Parameters_H
0002 #define Analysis_Observables_CD_Parameters_H
0003 
0004 #include "AddOns/Analysis/Observables/Primitive_Observable_Base.H"
0005 #include "AddOns/Analysis/Observables/Momentum_Tensor.H"
0006 
0007 namespace ANALYSIS {
0008 
0009   struct CD_Parameter_Data {
0010     friend std::ostream& operator<<( std::ostream&, const CD_Parameter_Data &);
0011     double        cparameter, dparameter;
0012     CD_Parameter_Data(double cpara,double dpara);
0013   };
0014 
0015 
0016   class CD_Parameter_Calculator : public Analysis_Object {
0017     Momentum_Tensor m_tensor;
0018     std::string m_key, m_listname;
0019   public:
0020     CD_Parameter_Calculator(const std::string & listname);
0021     void Evaluate(const ATOOLS::Blob_List & ,double weight, double ncount);
0022     void EvaluateNLOcontrib(double value, double ncount);
0023     void EvaluateNLOevt();
0024     Analysis_Object * GetCopy() const;    
0025   };
0026 
0027   class C_Parameter : public Primitive_Observable_Base {
0028     std::string m_key;
0029   public:
0030     C_Parameter(int type, double xmin, double xmax, int nbin, std::string listname);
0031     void Evaluate(const ATOOLS::Blob_List & ,double weight, double ncount);
0032     void EvaluateNLOcontrib(double weight, double ncount);
0033     void EvaluateNLOevt();
0034     Primitive_Observable_Base * Copy() const;
0035   };
0036 
0037   class D_Parameter : public Primitive_Observable_Base {
0038     std::string m_key;
0039   public:
0040     D_Parameter(int type, double xmin, double xmax, int nbin, std::string listname);
0041     void Evaluate(const ATOOLS::Blob_List & ,double weight, double ncount);
0042     void EvaluateNLOcontrib(double weight, double ncount);
0043     void EvaluateNLOevt();
0044     Primitive_Observable_Base * Copy() const;
0045   };
0046 
0047 
0048   inline CD_Parameter_Data::CD_Parameter_Data(double cpara,double dpara)
0049     : cparameter(cpara), dparameter(dpara)
0050   {
0051   }
0052   
0053 } // namespace ANALYSIS
0054 #endif