thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Helicity
Vertex
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
14
namespace
ThePEG
{
15
namespace
Helicity {
16
21
class
AbstractFFSVertex
:
public
VertexBase
{
22
23
public
:
24
28
AbstractFFSVertex
() :
VertexBase
(VertexType::FFS) {}
29
42
virtual
Complex
evaluate
(
Energy2
q2,
const
SpinorWaveFunction
& sp1,
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
75
virtual
SpinorBarWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
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
98
public
:
99
106
static
void
Init
();
107
108
private
:
109
114
AbstractFFSVertex
&
operator=
(
const
AbstractFFSVertex
&) =
delete
;
115
116
};
117
118
}
119
}
120
121
122
namespace
ThePEG
{
123
124
}
125
#endif
/* HELICITY_AbstractFFSVertex_H */
ThePEG::Helicity::AbstractFFSVertex
The AbstractFFSVertex class provides a base class for all fermion-fermion-scalar vertices in ThePEG.
Definition:
AbstractFFSVertex.h:21
ThePEG::Helicity::AbstractFFSVertex::operator=
AbstractFFSVertex & operator=(const AbstractFFSVertex &)=delete
The assignment operator is private and must never be called.
ThePEG::Helicity::AbstractFFSVertex::evaluate
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.
ThePEG::Helicity::AbstractFFSVertex::evaluate
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.
ThePEG::Helicity::AbstractFFSVertex::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::Helicity::AbstractFFSVertex::evaluate
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.
ThePEG::Helicity::AbstractFFSVertex::AbstractFFSVertex
AbstractFFSVertex()
Default constructor.
Definition:
AbstractFFSVertex.h:28
ThePEG::Helicity::AbstractFFSVertex::evaluate
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.
ThePEG::Helicity::ScalarWaveFunction
Definition:
ScalarWaveFunction.h:36
ThePEG::Helicity::SpinorBarWaveFunction
Definition:
SpinorBarWaveFunction.h:57
ThePEG::Helicity::SpinorWaveFunction
Definition:
SpinorWaveFunction.h:56
ThePEG::Helicity::VertexBase
The VertexBase class is the base class for all helicity amplitude vertices.
Definition:
VertexBase.h:83
ThePEG::Pointer::TransientConstRCPtr
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
Definition:
RCPtr.h:696
ThePEG::Qty< 0, 2, 0 >
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::Complex
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition:
Complex.h:23
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6