thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
AbstractSSSVertex.h
1 // -*- C++ -*-
2 #ifndef HELICITY_AbstractSSSVertex_H
3 #define HELICITY_AbstractSSSVertex_H
4 //
5 // This is the declaration of the AbstractSSSVertex class.
6 //
7 
8 #include "VertexBase.h"
9 #include "ThePEG/Helicity/WaveFunction/ScalarWaveFunction.h"
10 #include "AbstractSSSVertex.fh"
11 
12 namespace ThePEG {
13 namespace Helicity {
14 
20 
21 public:
22 
26  AbstractSSSVertex() : VertexBase(VertexType::SSS) {}
27 
40  virtual Complex evaluate(Energy2 q2,const ScalarWaveFunction & sca1,
41  const ScalarWaveFunction & sca2,
42  const ScalarWaveFunction & sca3) = 0;
43 
56  virtual ScalarWaveFunction evaluate(Energy2 q2,int iopt, tcPDPtr out,
57  const ScalarWaveFunction & sca1,
58  const ScalarWaveFunction & sca2,
59  complex<Energy> mass=-GeV, complex<Energy> width=-GeV) = 0;
61 
62 public:
63 
70  static void Init();
71 
72 private:
73 
78  AbstractSSSVertex & operator=(const AbstractSSSVertex &) = delete;
79 
80 };
81 
82 }
83 }
84 
85 
86 namespace ThePEG {
87 
88 }
89 #endif /* HELICITY_AbstractSSSVertex_H */
static void Init()
The standard Init function used to initialize the interfaces.
The AbstractSSSVertex class is the base class for all scalar-scalar-scalar interactions in ThePEG...
AbstractSSSVertex()
Default constructor.
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition: Complex.h:23
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
The VertexBase class is the base class for all helicity amplitude vertices.
Definition: VertexBase.h:83
virtual Complex evaluate(Energy2 q2, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3)=0
Members to calculate the helicity amplitude expressions for vertices and off-shell particles...
AbstractSSSVertex & operator=(const AbstractSSSVertex &)=delete
The assignment operator is private and must never be called.