thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
AbstractFFSVertex.h
1// -*- C++ -*-
2#ifndef HELICITY_AbstractFFSVertex_H
3#define HELICITY_AbstractFFSVertex_H
4//
5// This is the declaration of the AbstractFFSVertex 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/ScalarWaveFunction.h"
12#include "AbstractFFSVertex.fh"
13
14namespace ThePEG {
15namespace Helicity {
16
22
23public:
24
28 AbstractFFSVertex() : VertexBase(VertexType::FFS) {}
29
43 const SpinorBarWaveFunction & sbar2,
44 const ScalarWaveFunction & sca3) = 0;
45
58 virtual SpinorWaveFunction evaluate(Energy2 q2,int iopt,tcPDPtr out,
59 const SpinorWaveFunction & sp1,
60 const ScalarWaveFunction & sca3,
61 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
62
76 const SpinorBarWaveFunction & sbar2,
77 const ScalarWaveFunction & sca3,
78 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
79
92 virtual ScalarWaveFunction evaluate(Energy2 q2,int iopt,tcPDPtr out,
93 const SpinorWaveFunction & sp1,
94 const SpinorBarWaveFunction & sbar2,
95 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
97
98public:
99
106 static void Init();
107
108private:
109
115
116};
117
118}
119}
120
121
122namespace ThePEG {
123
124}
125#endif /* HELICITY_AbstractFFSVertex_H */
The AbstractFFSVertex class provides a base class for all fermion-fermion-scalar vertices in ThePEG.
AbstractFFSVertex & operator=(const AbstractFFSVertex &)=delete
The assignment operator is private and must never be called.
virtual ScalarWaveFunction 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 scalar coming from the vertex.
virtual SpinorBarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorBarWaveFunction &sbar2, const ScalarWaveFunction &sca3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell barred spinor coming from the vertex.
static void Init()
The standard Init function used to initialize the interfaces.
virtual SpinorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const ScalarWaveFunction &sca3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell spinor coming from the vertex.
AbstractFFSVertex()
Default constructor.
virtual Complex evaluate(Energy2 q2, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const ScalarWaveFunction &sca3)=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