File indexing completed on 2025-04-19 09:10:07
0001 #ifndef MODEL__Main__Single_Vertex_H
0002 #define MODEL__Main__Single_Vertex_H
0003
0004 #include "MODEL/Main/Color_Function.H"
0005 #include "ATOOLS/Math/MyComplex.H"
0006 #include "ATOOLS/Math/Kabbala.H"
0007 #include "ATOOLS/Phys/Flavour.H"
0008
0009 namespace MODEL {
0010
0011 class Single_Vertex {
0012 public:
0013
0014 std::vector<ATOOLS::Flavour> in;
0015 std::vector<ATOOLS::Kabbala> cpl;
0016 std::vector<Color_Function> Color;
0017 std::vector<std::string> Lorentz;
0018 std::vector<size_t> id;
0019 std::vector<int> order;
0020
0021 int dec;
0022
0023
0024 Single_Vertex();
0025 ~Single_Vertex();
0026
0027 std::string PID() const;
0028
0029 int Compare(const Single_Vertex *v) const;
0030
0031 bool PureQCD() const;
0032
0033 inline size_t NLegs() const { return in.size(); }
0034 inline void AddParticle(const ATOOLS::Flavour &fl,const int n=-1)
0035 { in.push_back(fl); id.push_back(n>=0?n:in.size()-1); }
0036
0037 inline const Complex &Coupling(const size_t &i) const
0038 { return cpl[i].Value(); }
0039
0040 bool operator==(const Single_Vertex&);
0041
0042 };
0043
0044 std::ostream &operator<<(std::ostream &,const Single_Vertex &);
0045
0046 }
0047
0048 #endif