Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #ifndef AMEGIC_Main_Process_Group_H
0002 #define AMEGIC_Main_Process_Group_H
0003 
0004 #include "AMEGIC++/Main/Amegic_Base.H"
0005 #include "PHASIC++/Process/Process_Group.H"
0006 
0007 namespace MODEL { class Model_Base; }
0008 
0009 namespace AMEGIC {
0010 
0011   class Topology;
0012   class Process_Base;
0013   class Amplitude_Handler;
0014   class Helicity;
0015   class Amegic_Model;
0016 
0017   class Process_Group: public Amegic_Base, public PHASIC::Process_Group {
0018 
0019   protected :
0020 
0021     Topology * p_top;
0022     ATOOLS::Vec4D* p_testmoms;
0023 
0024     Amegic_Model* p_model;
0025     std::string m_mfname;
0026 
0027     std::vector<AMEGIC::Process_Base *> m_umprocs, m_errprocs;
0028     std::list<std::string>              *p_channellibnames;
0029     std::set<std::string>               m_whitelist;
0030 
0031   public :
0032 
0033     // constructor
0034     Process_Group();
0035 
0036     // destructor
0037     ~Process_Group();
0038 
0039     // member functions
0040     bool FillIntegrator(PHASIC::Phase_Space_Handler *const psh);
0041     void EndOptimize();
0042 
0043     PHASIC::Process_Base *GetProcess(const PHASIC::Process_Info &pi) const;
0044     bool Initialize(PHASIC::Process_Base *const proc);
0045 
0046     AMEGIC::Process_Base *Partner() const;
0047 
0048     bool SetUpIntegrator();
0049     int  InitAmplitude(Amegic_Model *model,Topology *top);
0050 
0051     Amplitude_Handler *GetAmplitudeHandler(); 
0052     Helicity *GetHelicity();
0053     bool NewLibs();
0054     std::string PSLibName();
0055     void SetPrintGraphs(std::string gpath);
0056 
0057     void WriteMappingFile();
0058     void Minimize();
0059 
0060     void PrintProcessSummary(int=0); 
0061 
0062     // inline functions
0063     inline void SetMFname(const std::string &name) { m_mfname=name; }
0064 
0065     void FillAlphaHistogram(ATOOLS::Histogram*,double);
0066   };
0067 }
0068 
0069 #endif
0070 
0071