Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #ifndef AMEGIC_String_String_Handler_H
0002 #define AMEGIC_String_String_Handler_H
0003 
0004 #include "ATOOLS/Math/Kabbala.H"
0005 #include "ATOOLS/Math/MyComplex.H"
0006 #include "AMEGIC++/String/String_Generator.H"
0007 #include "AMEGIC++/String/String_Tree.H"
0008 #include "AMEGIC++/String/Values.H"
0009 #include "AMEGIC++/Main/Helicity.H"
0010 
0011 namespace AMEGIC {
0012   class String_Handler {
0013     int                           gen_str,maxgraph,maxhel;
0014     Virtual_String_Generator    * sgen;
0015     int                           own_sgen,own_sk;
0016     int                           working;
0017     sknot                     *** sk;
0018     std::string                ** stringsk;
0019     String_Tree                   stree,sthelp;
0020     Values                      * val;
0021     std::string                   path;
0022     
0023     int m_mode;
0024 
0025     void                       Z_Kill();
0026     void                       KillStrings();
0027     sknot*                     MakeSknotAFill(std::string &);
0028   public:
0029     String_Handler(const int &,Basic_Sfuncs *,std::map<std::string,Complex>*);
0030     String_Handler(Virtual_String_Generator *); 
0031     String_Handler(Virtual_String_Generator *,sknot ***); 
0032     ~String_Handler();  
0033     bool                      SearchValues(const int,std::string &,Basic_Sfuncs *);
0034     void                      Initialize(const int &,const int &);
0035     void                      Set_String(const int &,const int &,const std::string &);
0036     void                      Calculate();
0037     void                      Complete(Helicity *);
0038     void                      Output(Helicity *);
0039     void                      Output(Helicity *,std::string);
0040     sknot ***                 GetSKnots()     { return sk; }
0041     Complex                   Zvalue(int,int); 
0042     Values *                  Set_Values(std::string &,Basic_Sfuncs *);
0043     
0044     Virtual_String_Generator* Get_Generator() { return sgen; }
0045     int                       Is_String()     { return working; }
0046     bool                      IsLibrary()     { return (val!=0); }
0047 
0048     inline int                NumberOfCouplings() { return sgen->NumberOfCouplings(); }
0049     inline int                NumberOfZfuncs()    { return sgen->NumberOfzxl(); }
0050 
0051     int                       LibMode() { return m_mode; }
0052   };
0053 }
0054 
0055 #endif