thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
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 
44 
45 public:
46 
50  FFVTVertex() : left_(1.), right_(1.) {}
51 
55  static void Init();
56 
57 public:
58 
73  const SpinorBarWaveFunction & sbar2,
74  const VectorWaveFunction & vec3, const TensorWaveFunction & ten4);
76 
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 
140 
145 
146 };
147 }
148 
149 }
150 #endif /* ThePEG_FFVTVertex_H */
FFVTVertex()
Default constructor.
Definition: FFVTVertex.h:50
Complex right() const
Get right.
Definition: FFVTVertex.h:119
std::complex< double > Complex
ThePEG code should use Complex for all complex scalars.
Definition: Complex.h:23
void left(Complex in)
Set left.
Definition: FFVTVertex.h:114
Complex right_
Right coupling.
Definition: FFVTVertex.h:144
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
Definition: RCPtr.h:696
The FFVTVertex class is the implementation of the fermion-fermion–vector-tensor vertex.
Definition: FFVTVertex.h:43
Complex left() const
Left and right couplings.
Definition: FFVTVertex.h:109
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
FFVTVertex & operator=(const FFVTVertex &)=delete
Private and non-existent assignment operator.
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...
virtual void setCoupling(Energy2, tcPDPtr, tcPDPtr, tcPDPtr)
Set coupling methods.
Definition: FFVTVertex.h:84
void right(Complex in)
Set right.
Definition: FFVTVertex.h:124
static void Init()
Standard Init function used to initialize the interfaces.
Complex left_
Left coupling.
Definition: FFVTVertex.h:139
The AbstractFFVTVertex class is the base class for all fermion-fermion-vector-tensor interactions in ...