thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
AbstractVVVVVertex.h
1 // -*- C++ -*-
2 #ifndef HELICITY_AbstractVVVVVertex_H
3 #define HELICITY_AbstractVVVVVertex_H
4 //
5 // This is the declaration of the AbstractVVVVVertex class.
6 //
7 
8 #include "VertexBase.h"
9 #include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
10 #include "AbstractVVVVVertex.fh"
11 
12 namespace ThePEG {
13 namespace Helicity {
14 
20 
21 public:
22 
26  AbstractVVVVVertex() : VertexBase(VertexType::VVVV) {}
27 
43  virtual Complex evaluate(Energy2 q2, int iopt,
44  const VectorWaveFunction & vec1,
45  const VectorWaveFunction & vec2,
46  const VectorWaveFunction & vec3,
47  const VectorWaveFunction & vec4) = 0;
49 
50 public:
51 
58  static void Init();
59 
60 private:
61 
67 
68 };
69 
70 }
71 }
72 
73 
74 namespace ThePEG {
75 
76 }
77 #endif /* HELICITY_AbstractVVVVVertex_H */
AbstractVVVVVertex()
Default constructor.
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition: Complex.h:23
static void Init()
The standard Init function used to initialize the interfaces.
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
AbstractVVVVVertex & operator=(const AbstractVVVVVertex &)=delete
The assignment operator is private and must never be called.
The VertexBase class is the base class for all helicity amplitude vertices.
Definition: VertexBase.h:83
The AbstractVVVVVertex class is the base class for vector-vector-vector-vector interactions in ThePEG...
virtual Complex evaluate(Energy2 q2, int iopt, const VectorWaveFunction &vec1, const VectorWaveFunction &vec2, const VectorWaveFunction &vec3, const VectorWaveFunction &vec4)=0
Members to calculate the helicity amplitude expressions for vertices and off-shell particles...