thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
AbstractFFTVertex.h
1// -*- C++ -*-
2#ifndef HELICITY_AbstractFFTVertex_H
3#define HELICITY_AbstractFFTVertex_H
4//
5// This is the declaration of the AbstractFFTVertex 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/TensorWaveFunction.h"
12#include "AbstractFFTVertex.fh"
13
14namespace ThePEG {
15namespace Helicity {
16
22
23public:
24
25
29 AbstractFFTVertex() : VertexBase(VertexType::FFT) {}
30
44 const SpinorBarWaveFunction & sbar2,
45 const TensorWaveFunction & ten3) = 0;
46
59 virtual TensorWaveFunction evaluate(Energy2 q2, int iopt,tcPDPtr out,
60 const SpinorWaveFunction & sp1,
61 const SpinorBarWaveFunction & sbar2,
62 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
63
76 virtual SpinorWaveFunction evaluate(Energy2 q2,int iopt,tcPDPtr out,
77 const SpinorWaveFunction & sp1,
78 const TensorWaveFunction & ten3,
79 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
80
94 const SpinorBarWaveFunction & sbar2,
95 const TensorWaveFunction& ten3,
96 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
98
99public:
100
107 static void Init();
108
109private:
110
116
117};
118
119}
120}
121
122
123namespace ThePEG {
124
125}
126#endif /* HELICITY_AbstractFFTVertex_H */
The AbstractFFTVertex class is the base class for all fermion-fermion-tensor interactions in ThePEG.
virtual SpinorBarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorBarWaveFunction &sbar2, const TensorWaveFunction &ten3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell barred spinor coming from the vertex.
AbstractFFTVertex & operator=(const AbstractFFTVertex &)=delete
The assignment operator is private and must never be called.
virtual SpinorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const TensorWaveFunction &ten3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell spinor coming from the vertex.
virtual TensorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell tensor coming from the vertex.
AbstractFFTVertex()
Default constructor.
static void Init()
The standard Init function used to initialize the interfaces.
virtual Complex evaluate(Energy2 q2, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const TensorWaveFunction &ten3)=0
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
The VertexBase class is the base class for all helicity amplitude vertices.
Definition: VertexBase.h:83
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
Definition: RCPtr.h:696
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition: Complex.h:23