thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
AbstractFFVVVertex.h
1 // -*- C++ -*-
2 #ifndef HELICITY_AbstractFFVVVertex_H
3 #define HELICITY_AbstractFFVVVertex_H
4 //
5 // This is the declaration of the AbstractFFVVVertex class.
6 //
7 
8 #include "VertexBase.h"
9 #include "ThePEG/Helicity/WaveFunction/SpinorWaveFunction.h"
10 #include "ThePEG/Helicity/WaveFunction/SpinorBarWaveFunction.h"
11 #include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
12 #include "AbstractFFVVVertex.fh"
13 
14 namespace ThePEG {
15 namespace Helicity {
16 
22 
23 public:
24 
28  AbstractFFVVVertex() : VertexBase(VertexType::FFVV) {}
29 
43  virtual Complex evaluate(Energy2 q2,const SpinorWaveFunction & sp1,
44  const SpinorBarWaveFunction & sbar2,
45  const VectorWaveFunction & vec3,
46  const VectorWaveFunction & vec4) = 0;
48 
49 public:
50 
57  static void Init();
58 
59 private:
60 
66 
67 };
68 
69 }
70 }
71 
72 #endif /* HELICITY_AbstractFFVVVertex_H */
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition: Complex.h:23
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
The AbstractFFVVVertex class provides a base class for all fermion-fermion-vector-vector vertices in ...
static void Init()
The standard Init function used to initialize the interfaces.
The VertexBase class is the base class for all helicity amplitude vertices.
Definition: VertexBase.h:83
AbstractFFVVVertex & operator=(const AbstractFFVVVertex &)=delete
The assignment operator is private and must never be called.
virtual Complex evaluate(Energy2 q2, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, const VectorWaveFunction &vec4)=0
Members to calculate the helicity amplitude expressions for vertices and off-shell particles...
AbstractFFVVVertex()
Default constructor.