thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Helicity
Vertex
Scalar
GeneralVSSVertex.h
1
// -*- C++ -*-
2
#ifndef Helicity_GeneralVSSVertex_H
3
#define Helicity_GeneralVSSVertex_H
4
//
5
// This is the declaration of the GeneralVSSVertex class.
6
//
7
8
#include "ThePEG/Helicity/Vertex/AbstractVSSVertex.h"
9
#include "ThePEG/Helicity/WaveFunction/ScalarWaveFunction.h"
10
#include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
11
#include "GeneralVSSVertex.fh"
12
13
namespace
ThePEG
{
14
namespace
Helicity {
15
16
using namespace
ThePEG
;
17
24
class
GeneralVSSVertex
:
public
AbstractVSSVertex
{
25
26
public
:
27
31
GeneralVSSVertex
() :
a_
(1.),
b_
(-1.)
32
{}
33
40
static
void
Init
();
41
54
Complex
evaluate
(
Energy2
q2,
const
VectorWaveFunction
& vec1,
55
const
ScalarWaveFunction
& sca2,
const
ScalarWaveFunction
& sca3);
56
69
VectorWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
70
const
ScalarWaveFunction
& sca2,
71
const
ScalarWaveFunction
& sca3,
72
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
73
86
ScalarWaveFunction
evaluate
(
Energy2
q2,
int
iopt,
tcPDPtr
out,
87
const
VectorWaveFunction
& vec1,
88
const
ScalarWaveFunction
& sca2,
89
complex<Energy> mass=-GeV, complex<Energy> width=-GeV);
90
104
virtual
void
setCoupling
(
Energy2
q2,
tcPDPtr
part1,
105
tcPDPtr
part2,
tcPDPtr
part3)=0;
106
112
virtual
void
setCoupling
(
Energy2
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
,
tcPDPtr
) {
113
assert(
false
);
114
}
116
117
protected
:
118
126
Complex
a
()
const
{
return
a_
;}
127
131
Complex
b
()
const
{
return
b_
;}
132
136
void
a
(
Complex
in) {
a_
=in;}
137
141
void
b
(
Complex
in) {
b_
=in;}
143
144
private
:
145
150
GeneralVSSVertex
&
operator=
(
const
GeneralVSSVertex
&) =
delete
;
151
152
private
:
153
157
Complex
a_
;
158
162
Complex
b_
;
163
164
};
165
166
}
167
}
168
169
#endif
/* Helicity_GeneralVSSVertex_H */
ThePEG::Helicity::AbstractVSSVertex
The AbstractVSSVertex class is the base class for vector-scalar-scalar interactions in ThePEG.
Definition:
AbstractVSSVertex.h:20
ThePEG::Helicity::GeneralVSSVertex
Here is the documentation of the GeneralVSSVertex class.
Definition:
GeneralVSSVertex.h:24
ThePEG::Helicity::GeneralVSSVertex::b
Complex b() const
Access coefficient of .
Definition:
GeneralVSSVertex.h:131
ThePEG::Helicity::GeneralVSSVertex::b
void b(Complex in)
Set coefficient of .
Definition:
GeneralVSSVertex.h:141
ThePEG::Helicity::GeneralVSSVertex::evaluate
VectorWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell vector coming from the vertex.
ThePEG::Helicity::GeneralVSSVertex::evaluate
Complex evaluate(Energy2 q2, const VectorWaveFunction &vec1, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3)
Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
ThePEG::Helicity::GeneralVSSVertex::operator=
GeneralVSSVertex & operator=(const GeneralVSSVertex &)=delete
The assignment operator is private and must never be called.
ThePEG::Helicity::GeneralVSSVertex::a_
Complex a_
The coefficent of .
Definition:
GeneralVSSVertex.h:157
ThePEG::Helicity::GeneralVSSVertex::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::Helicity::GeneralVSSVertex::b_
Complex b_
The coefficent of .
Definition:
GeneralVSSVertex.h:162
ThePEG::Helicity::GeneralVSSVertex::a
void a(Complex in)
Set coefficient of .
Definition:
GeneralVSSVertex.h:136
ThePEG::Helicity::GeneralVSSVertex::a
Complex a() const
Member functions top set/get the coefficents.
Definition:
GeneralVSSVertex.h:126
ThePEG::Helicity::GeneralVSSVertex::evaluate
ScalarWaveFunction evaluate(Energy2 q2, int iopt, tcPDPtr out, const VectorWaveFunction &vec1, const ScalarWaveFunction &sca2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
Evaluate the off-shell scalar coming from the vertex.
ThePEG::Helicity::GeneralVSSVertex::GeneralVSSVertex
GeneralVSSVertex()
The default constructor.
Definition:
GeneralVSSVertex.h:31
ThePEG::Helicity::GeneralVSSVertex::setCoupling
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)=0
Set coupling methods.
ThePEG::Helicity::GeneralVSSVertex::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:
GeneralVSSVertex.h:112
ThePEG::Helicity::ScalarWaveFunction
Definition:
ScalarWaveFunction.h:36
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