thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Helicity
Vertex
Vector
RFVVertex.h
1
// -*- C++ -*-
2
//
3
// RFVVertex.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 2003-2019 Peter Richardson, Leif Lonnblad
5
//
6
// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef ThePEG_RFVVertex_H
10
#define ThePEG_RFVVertex_H
11
//
12
// This is the declaration of the RFVVertex class.
13
14
#include <ThePEG/Helicity/Vertex/AbstractRFVVertex.h>
15
#include <ThePEG/Helicity/WaveFunction/VectorWaveFunction.h>
16
#include <ThePEG/Helicity/WaveFunction/SpinorWaveFunction.h>
17
#include <ThePEG/Helicity/WaveFunction/SpinorBarWaveFunction.h>
18
#include "RFVVertex.fh"
19
20
namespace
ThePEG
{
21
22
namespace
Helicity{
23
42
class
RFVVertex
:
public
AbstractRFVVertex
{
43
44
public
:
45
49
static
void
Init
();
50
51
public
:
52
65
Complex
evaluate
(
Energy2
q2,
const
RSSpinorWaveFunction
& sp1,
66
const
SpinorBarWaveFunction
& sbar2,
67
const
VectorWaveFunction
& vec3);
68
76
Complex
evaluate
(
Energy2
q2,
const
SpinorWaveFunction
& sp1,
77
const
RSSpinorBarWaveFunction
& sbar2,
78
const
VectorWaveFunction
& vec3);
79
92
SpinorBarWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
93
const
RSSpinorBarWaveFunction
& sbar2,
94
const
VectorWaveFunction
& vec3,
95
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
96
109
RSSpinorBarWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
110
const
SpinorBarWaveFunction
& sbar2,
111
const
VectorWaveFunction
& vec3,
112
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
113
126
VectorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
127
const
RSSpinorWaveFunction
& sp1,
128
const
SpinorBarWaveFunction
& sbar2,
129
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
130
143
VectorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
144
const
SpinorWaveFunction
& sp1,
145
const
RSSpinorBarWaveFunction
& sbar2,
146
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
147
160
RSSpinorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
161
const
SpinorWaveFunction
& sp1,
162
const
VectorWaveFunction
& vec3,
163
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
164
177
SpinorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
178
const
RSSpinorWaveFunction
& sp1,
179
const
VectorWaveFunction
& vec3,
180
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
182
196
virtual
void
setCoupling
(
Energy2
q2,
tcPDPtr
part1,
197
tcPDPtr
part2,
tcPDPtr
part3)=0;
198
204
virtual
void
setCoupling
(
Energy2
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
) {
205
assert(
false
);
206
}
208
216
const
vector<Complex> &
left
()
const
{
return
_left
; }
217
221
const
vector<Complex> &
right
()
const
{
return
_right
; }
223
224
protected
:
225
233
void
left
(
const
vector<Complex> & in) {
_left
= in; }
234
238
void
right
(
const
vector<Complex> & in) {
_right
= in; }
240
241
private
:
242
246
RFVVertex
&
operator=
(
const
RFVVertex
&) =
delete
;
247
248
private
:
249
253
vector<Complex>
_left
;
254
258
vector<Complex>
_right
;
259
260
};
261
}
262
263
}
264
#endif
/* ThePEG_RFVVertex_H */
ThePEG::Helicity::AbstractRFVVertex
The AbstractRFVVertex class provides a base class for all spin-3/2 fermion-fermion-vector vertices in...
Definition:
AbstractRFVVertex.h:23
ThePEG::Helicity::RFVVertex
The RFVVertex class is the base class for all helicity amplitude vertices which use the renormalisabl...
Definition:
RFVVertex.h:42
ThePEG::Helicity::RFVVertex::evaluate
RSSpinorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const VectorWaveFunction &vec3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell spinor coming from the vertex.
ThePEG::Helicity::RFVVertex::evaluate
Complex evaluate(Energy2 q2, const RSSpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3)
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
ThePEG::Helicity::RFVVertex::evaluate
SpinorBarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const RSSpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell barred spinor coming from the vertex.
ThePEG::Helicity::RFVVertex::left
const vector< Complex > & left() const
Get the Couplings.
Definition:
RFVVertex.h:216
ThePEG::Helicity::RFVVertex::_left
vector< Complex > _left
Left coupling.
Definition:
RFVVertex.h:253
ThePEG::Helicity::RFVVertex::evaluate
VectorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const RSSpinorBarWaveFunction &sbar2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell vector coming from the vertex.
ThePEG::Helicity::RFVVertex::operator=
RFVVertex & operator=(const RFVVertex &)=delete
Private and non-existent assignment operator.
ThePEG::Helicity::RFVVertex::setCoupling
virtual void setCoupling(Energy2, tcPDPtr, tcPDPtr, tcPDPtr, tcPDPtr)
Dummy setCouplings for a four point interaction This method is virtual and must be implemented in cla...
Definition:
RFVVertex.h:204
ThePEG::Helicity::RFVVertex::evaluate
RSSpinorBarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell barred spinor coming from the vertex.
ThePEG::Helicity::RFVVertex::_right
vector< Complex > _right
Right coupling.
Definition:
RFVVertex.h:258
ThePEG::Helicity::RFVVertex::evaluate
Complex evaluate(Energy2 q2, const SpinorWaveFunction &sp1, const RSSpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3)
Evalulate the vertex.
ThePEG::Helicity::RFVVertex::Init
static void Init()
Standard Init function used to initialize the interfaces.
ThePEG::Helicity::RFVVertex::left
void left(const vector< Complex > &in)
Set the couplings.
Definition:
RFVVertex.h:233
ThePEG::Helicity::RFVVertex::right
const vector< Complex > & right() const
Get the right coupling.
Definition:
RFVVertex.h:221
ThePEG::Helicity::RFVVertex::evaluate
SpinorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const RSSpinorWaveFunction &sp1, const VectorWaveFunction &vec3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell spinor coming from the vertex.
ThePEG::Helicity::RFVVertex::setCoupling
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)=0
Set coupling methods.
ThePEG::Helicity::RFVVertex::right
void right(const vector< Complex > &in)
Set the right coupling.
Definition:
RFVVertex.h:238
ThePEG::Helicity::RFVVertex::evaluate
VectorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const RSSpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell vector coming from the vertex.
ThePEG::Helicity::RSSpinorBarWaveFunction
The RSSpinorBarWaveFunction class is designed to store the wavefunction of a spin- particle in a for...
Definition:
RSSpinorBarWaveFunction.h:60
ThePEG::Helicity::RSSpinorWaveFunction
The RSSpinorWaveFunction class is designed to store the wavefunction of a spin-3/2 particle in a form...
Definition:
RSSpinorWaveFunction.h:58
ThePEG::Helicity::SpinorBarWaveFunction
Definition:
SpinorBarWaveFunction.h:57
ThePEG::Helicity::SpinorWaveFunction
Definition:
SpinorWaveFunction.h:56
ThePEG::Helicity::VectorWaveFunction
Definition:
VectorWaveFunction.h:50
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