thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Helicity
Vertex
Tensor
FFVTVertex.h
1
// -*- C++ -*-
2
//
3
// FFVTVertex.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_FFVTVertex_H
10
#define ThePEG_FFVTVertex_H
11
//
12
// This is the declaration of the FFVTVertex class.
13
//
14
#include "ThePEG/Helicity/Vertex/AbstractFFVTVertex.h"
15
#include "ThePEG/Helicity/WaveFunction/SpinorWaveFunction.h"
16
#include "ThePEG/Helicity/WaveFunction/SpinorBarWaveFunction.h"
17
#include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
18
#include "ThePEG/Helicity/WaveFunction/TensorWaveFunction.h"
19
#include "FFVTVertex.fh"
20
21
namespace
ThePEG
{
22
namespace
Helicity {
23
43
class
FFVTVertex
:
public
AbstractFFVTVertex
{
44
45
public
:
46
50
FFVTVertex
() :
left_
(1.),
right_
(1.) {}
51
55
static
void
Init
();
56
57
public
:
58
72
Complex
evaluate
(
Energy2
q2,
const
SpinorWaveFunction
& sp1,
73
const
SpinorBarWaveFunction
& sbar2,
74
const
VectorWaveFunction
& vec3,
const
TensorWaveFunction
& ten4);
76
84
virtual
void
setCoupling
(
Energy2
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
) {
85
assert(
false
);
86
}
87
98
virtual
void
setCoupling
(
Energy2
q2,
tcPDPtr
part1,
tcPDPtr
part2,
tcPDPtr
part3,
99
tcPDPtr
part4)=0;
101
109
Complex
left
()
const
{
return
left_
;}
110
114
void
left
(
Complex
in) {
left_
= in;}
115
119
Complex
right
()
const
{
return
right_
;}
120
124
void
right
(
Complex
in) {
right_
= in;}
126
127
private
:
128
132
FFVTVertex
&
operator=
(
const
FFVTVertex
&) =
delete
;
133
134
private
:
135
139
Complex
left_
;
140
144
Complex
right_
;
145
146
};
147
}
148
149
}
150
#endif
/* ThePEG_FFVTVertex_H */
ThePEG::Helicity::AbstractFFVTVertex
The AbstractFFVTVertex class is the base class for all fermion-fermion-vector-tensor interactions in ...
Definition:
AbstractFFVTVertex.h:22
ThePEG::Helicity::FFVTVertex
The FFVTVertex class is the implementation of the fermion-fermion–vector-tensor vertex.
Definition:
FFVTVertex.h:43
ThePEG::Helicity::FFVTVertex::left_
Complex left_
Left coupling.
Definition:
FFVTVertex.h:139
ThePEG::Helicity::FFVTVertex::setCoupling
virtual void setCoupling(Energy2, tcPDPtr, tcPDPtr, tcPDPtr)
Set coupling methods.
Definition:
FFVTVertex.h:84
ThePEG::Helicity::FFVTVertex::FFVTVertex
FFVTVertex()
Default constructor.
Definition:
FFVTVertex.h:50
ThePEG::Helicity::FFVTVertex::operator=
FFVTVertex & operator=(const FFVTVertex &)=delete
Private and non-existent assignment operator.
ThePEG::Helicity::FFVTVertex::Init
static void Init()
Standard Init function used to initialize the interfaces.
ThePEG::Helicity::FFVTVertex::right
void right(Complex in)
Set right.
Definition:
FFVTVertex.h:124
ThePEG::Helicity::FFVTVertex::left
void left(Complex in)
Set left.
Definition:
FFVTVertex.h:114
ThePEG::Helicity::FFVTVertex::right_
Complex right_
Right coupling.
Definition:
FFVTVertex.h:144
ThePEG::Helicity::FFVTVertex::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::FFVTVertex::evaluate
Complex evaluate(Energy2 q2, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, const TensorWaveFunction &ten4)
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
ThePEG::Helicity::FFVTVertex::right
Complex right() const
Get right.
Definition:
FFVTVertex.h:119
ThePEG::Helicity::FFVTVertex::left
Complex left() const
Left and right couplings.
Definition:
FFVTVertex.h:109
ThePEG::Helicity::SpinorBarWaveFunction
Definition:
SpinorBarWaveFunction.h:57
ThePEG::Helicity::SpinorWaveFunction
Definition:
SpinorWaveFunction.h:56
ThePEG::Helicity::TensorWaveFunction
Definition:
TensorWaveFunction.h:67
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