Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #ifndef PHASIC_Channels_Leading_Log_Channels_H
0002 #define PHASIC_Channels_Leading_Log_Channels_H
0003 
0004 #include "PHASIC++/Channels/ISR_Channel_Base.H"
0005 
0006 
0007 namespace PHASIC {
0008   class Leading_Log_Uniform: public ISR_Channel_Base {
0009   protected:
0010     double m_beta, m_factor;
0011     bool   m_zchannel;
0012     size_t m_mode;
0013     ATOOLS::Info_Key m_spkey, m_xkey, m_ykey, m_sgridkey, m_ygridkey;
0014     ATOOLS::Info_Key m_kp1key, m_kp2key;
0015   public:
0016     Leading_Log_Uniform(const double beta,const double factor,
0017             const std::string cinfo,ATOOLS::Integration_Info *info,
0018             const size_t mode=0);
0019     void GeneratePoint(const double *rans);
0020     void GenerateWeight(const int & mode=0);
0021   };
0022   
0023   ////////////////////////////////////////////////////////////////////////
0024 
0025   class Leading_Log_Forward: public ISR_Channel_Base {
0026   protected :
0027     double m_beta, m_factor, m_yexponent;
0028     bool   m_zchannel;
0029     size_t m_mode;
0030     ATOOLS::Info_Key m_spkey, m_xkey, m_ykey, m_sgridkey, m_ygridkey;
0031     ATOOLS::Info_Key m_kp1key, m_kp2key;
0032   public :
0033     Leading_Log_Forward(const double beta,const double factor,const double yexponent,
0034             const std::string cinfo,ATOOLS::Integration_Info *info,
0035             const size_t mode=0);
0036     void GeneratePoint(const double *rans);
0037     void GenerateWeight(const int & mode=0);
0038   };
0039   
0040   ////////////////////////////////////////////////////////////////////////
0041 
0042   class Leading_Log_Backward: public ISR_Channel_Base {
0043   protected :
0044     double m_beta, m_factor, m_yexponent;
0045     bool   m_zchannel;
0046     size_t m_mode;
0047     ATOOLS::Info_Key m_spkey, m_xkey, m_ykey, m_sgridkey, m_ygridkey;
0048     ATOOLS::Info_Key m_kp1key, m_kp2key;
0049   public :
0050     Leading_Log_Backward(const double beta,const double factor,const double yexponent,
0051              const std::string cinfo,ATOOLS::Integration_Info *info,
0052              const size_t mode=0);
0053     void GeneratePoint(const double *rans);
0054     void GenerateWeight(const int & mode=0);
0055   };
0056 
0057   ////////////////////////////////////////////////////////////////////////
0058 
0059   class Leading_Log_Central: public ISR_Channel_Base {
0060   protected:
0061     double m_beta, m_factor;
0062     bool   m_zchannel;
0063     size_t m_mode;
0064     ATOOLS::Info_Key m_spkey, m_xkey, m_ykey, m_sgridkey, m_ygridkey;
0065     ATOOLS::Info_Key m_kp1key, m_kp2key;
0066   public:
0067     Leading_Log_Central(const double beta,const double factor,
0068             const std::string cinfo,ATOOLS::Integration_Info *info,
0069             const size_t mode=0);
0070     void GeneratePoint(const double *rans);
0071     void GenerateWeight(const int & mode=0);
0072   };
0073 
0074   ////////////////////////////////////////////////////////////////////////
0075 
0076   class Leading_Log_YFS: public ISR_Channel_Base {
0077   protected:
0078     double m_beta, m_factor;
0079     bool   m_zchannel;
0080     size_t m_mode;
0081     ATOOLS::Info_Key m_spkey, m_xkey, m_sgridkey;
0082     ATOOLS::Info_Key m_kp1key, m_kp2key;
0083   public:
0084     Leading_Log_YFS(const double beta,const double factor,
0085       const std::string cinfo,ATOOLS::Integration_Info *info);
0086     void GeneratePoint(const double *rans);
0087     void GenerateWeight(const int & mode=0);
0088   };
0089 }
0090 #endif