thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Helicity
Vertex
Tensor
VVVTVertex.h
1
// -*- C++ -*-
2
//
3
// VVVTVertex.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_VVVTVertex_H
10
#define ThePEG_VVVTVertex_H
11
//
12
// This is the declaration of the VVVTVertex class.
13
//
14
#include "ThePEG/Helicity/Vertex/AbstractVVVTVertex.h"
15
#include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
16
#include "ThePEG/Helicity/WaveFunction/TensorWaveFunction.h"
17
#include "VVVTVertex.fh"
18
19
namespace
ThePEG
{
20
namespace
Helicity {
21
51
class
VVVTVertex
:
public
AbstractVVVTVertex
{
52
53
public
:
54
58
static
void
Init
();
59
60
public
:
61
75
Complex
evaluate
(
Energy2
q2,
const
VectorWaveFunction
& vec1,
76
const
VectorWaveFunction
& vec2,
77
const
VectorWaveFunction
& vec3,
const
TensorWaveFunction
& ten4);
78
92
TensorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
93
const
VectorWaveFunction
& vec1,
94
const
VectorWaveFunction
& vec2,
95
const
VectorWaveFunction
& vec3,
96
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
97
111
VectorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
112
const
VectorWaveFunction
& vec1,
113
const
VectorWaveFunction
& vec2,
114
const
TensorWaveFunction
& ten4,
115
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
117
125
virtual
void
setCoupling
(
Energy2
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
) {
126
assert(
false
);
127
}
128
139
virtual
void
setCoupling
(
Energy2
q2,
tcPDPtr
part1,
tcPDPtr
part2,
tcPDPtr
part3,
140
tcPDPtr
part4)=0;
142
143
private
:
144
148
VVVTVertex
&
operator=
(
const
VVVTVertex
&) =
delete
;
149
150
};
151
152
}
153
154
}
155
#endif
/* ThePEG_VVVTVertex_H */
ThePEG::Helicity::AbstractVVVTVertex
The AbstractVVVTVertex class is the base class for all vector-vector-vector-tensor interactions in Th...
Definition:
AbstractVVVTVertex.h:20
ThePEG::Helicity::TensorWaveFunction
Definition:
TensorWaveFunction.h:67
ThePEG::Helicity::VVVTVertex
The VVTVertex class is the implementation of the vector-vector-vector-tensor vertex.
Definition:
VVVTVertex.h:51
ThePEG::Helicity::VVVTVertex::evaluate
Complex evaluate(Energy2 q2, const VectorWaveFunction &vec1, const VectorWaveFunction &vec2, const VectorWaveFunction &vec3, const TensorWaveFunction &ten4)
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
ThePEG::Helicity::VVVTVertex::setCoupling
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3, tcPDPtr part4)=0
Calculate the couplings for a four point interaction.
ThePEG::Helicity::VVVTVertex::evaluate
TensorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const VectorWaveFunction &vec1, const VectorWaveFunction &vec2, const VectorWaveFunction &vec3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell tensor coming from the vertex.
ThePEG::Helicity::VVVTVertex::Init
static void Init()
Standard Init function used to initialize the interfaces.
ThePEG::Helicity::VVVTVertex::operator=
VVVTVertex & operator=(const VVVTVertex &)=delete
Private and non-existent assignment operator.
ThePEG::Helicity::VVVTVertex::evaluate
VectorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const VectorWaveFunction &vec1, const VectorWaveFunction &vec2, const TensorWaveFunction &ten4, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell vector coming from the vertex.
ThePEG::Helicity::VVVTVertex::setCoupling
virtual void setCoupling(Energy2, tcPDPtr, tcPDPtr, tcPDPtr)
Set coupling methods.
Definition:
VVVTVertex.h:125
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