thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
AbstractVSSVertex.h
1// -*- C++ -*-
2#ifndef HELICITY_AbstractVSSVertex_H
3#define HELICITY_AbstractVSSVertex_H
4//
5// This is the declaration of the AbstractVSSVertex class.
6//
7
8#include "VertexBase.h"
9#include "ThePEG/Helicity/WaveFunction/ScalarWaveFunction.h"
10#include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
11#include "AbstractVSSVertex.fh"
12
13namespace ThePEG {
14namespace Helicity {
15
21
22public:
23
27 AbstractVSSVertex() : VertexBase(VertexType::VSS) {}
28
41 virtual Complex evaluate(Energy2 q2,const VectorWaveFunction & vec1,
42 const ScalarWaveFunction & sca2,
43 const ScalarWaveFunction & sca3) = 0;
44
57 virtual VectorWaveFunction evaluate(Energy2 q2,int iopt,tcPDPtr out,
58 const ScalarWaveFunction & sca2,
59 const ScalarWaveFunction & sca3,
60 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
61
74 virtual ScalarWaveFunction evaluate(Energy2 q2,int iopt, tcPDPtr out,
75 const VectorWaveFunction & vec1,
76 const ScalarWaveFunction & sca2,
77 complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
79
80public:
81
88 static void Init();
89
90private:
91
97
98};
99
100}
101}
102
103
104namespace ThePEG {
105
106}
107#endif /* HELICITY_AbstractVSSVertex_H */
The AbstractVSSVertex class is the base class for vector-scalar-scalar interactions in ThePEG.
virtual VectorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell vector coming from the vertex.
static void Init()
The standard Init function used to initialize the interfaces.
virtual Complex evaluate(Energy2 q2, const VectorWaveFunction &vec1, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3)=0
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
AbstractVSSVertex & operator=(const AbstractVSSVertex &)=delete
The assignment operator is private and must never be called.
virtual ScalarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const VectorWaveFunction &vec1, const ScalarWaveFunction &sca2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)=0
Evaluate the off-shell scalar coming from the vertex.
AbstractVSSVertex()
Default constructor.
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