ThePEG::Helicity::AbstractFFVVertex Class Reference

The AbstractFFVVertex class provides a base class for all fermion-fermion-vector vertices in ThePEG. More...

#include <AbstractFFVVertex.h>

Inheritance diagram for ThePEG::Helicity::AbstractFFVVertex:

ThePEG::Helicity::VertexBase ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted ThePEG::Helicity::FFVVertex ThePEG::Helicity::GeneralFFVVertex

List of all members.

Public Types

enum  SmallAngleDirection { NegativeZDirection = -1, PostiveZDirection = 1 }
 Enum for the direction in the small angle limit. More...

Public Member Functions

 AbstractFFVVertex ()
 Default constructor.
virtual Complex evaluate (Energy2 q2, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3)=0
 Members to calculate the helicity amplitude expressions for vertices and off-shell particles.
virtual SpinorBarWaveFunction evaluate (Energy2 q2, int iopt, tcPDPtr out, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, Energy mass=-GeV, Energy width=-GeV)=0
 Evaluate the off-shell barred spinor coming from the vertex.
virtual VectorWaveFunction evaluate (Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const SpinorBarWaveFunction &sbar2, Energy mass=-GeV, Energy width=-GeV)=0
 Evaluate the off-shell vector coming from the vertex.
virtual SpinorWaveFunction evaluate (Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const VectorWaveFunction &vec3, Energy mass=-GeV, Energy width=-GeV)=0
 Evaluate the off-shell spinor coming from the vertex.
virtual SpinorWaveFunction evaluateSmall (Energy2 q2, int iopt, tcPDPtr out, const SpinorWaveFunction &sp1, const VectorWaveFunction &vec3, unsigned int fhel, unsigned int vhel, double ctheta, double phi, double stheta, bool includeEikonal=true, SmallAngleDirection direction=PostiveZDirection, Energy mass=-GeV, Energy width=-GeV)
 Special members for off-shell fermion wavefunctions with massless gauge bosons at small angles in the small angle limit for numerical accuracy.
virtual SpinorBarWaveFunction evaluateSmall (Energy2 q2, int iopt, tcPDPtr out, const SpinorBarWaveFunction &sbar2, const VectorWaveFunction &vec3, unsigned int fhel, unsigned int vhel, double ctheta, double phi, double stheta, bool includeEikonal=true, SmallAngleDirection direction=PostiveZDirection, Energy mass=-GeV, Energy width=-GeV)
 Small angle approx for an off-shell spinor.

Static Public Member Functions

static void Init ()
 The standard Init function used to initialize the interfaces.

Private Member Functions

AbstractFFVVertexoperator= (const AbstractFFVVertex &)
 The assignment operator is private and must never be called.

Static Private Attributes

static
AbstractNoPIOClassDescription
< AbstractFFVVertex
initAbstractFFVVertex
 The static object used to initialize the description of this class.


Detailed Description

The AbstractFFVVertex class provides a base class for all fermion-fermion-vector vertices in ThePEG.

Definition at line 21 of file AbstractFFVVertex.h.


Member Enumeration Documentation

Enum for the direction in the small angle limit.

Enumerator:
NegativeZDirection  Along -z.
PostiveZDirection  Along +z.

Definition at line 28 of file AbstractFFVVertex.h.


Member Function Documentation

virtual Complex ThePEG::Helicity::AbstractFFVVertex::evaluate ( Energy2  q2,
const SpinorWaveFunction sp1,
const SpinorBarWaveFunction sbar2,
const VectorWaveFunction vec3 
) [pure virtual]

Members to calculate the helicity amplitude expressions for vertices and off-shell particles.

Evalulate the vertex.

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
sp1 The wavefunction for the ferimon.
sbar2 The wavefunction for the antifermion.
vec3 The wavefunction for the vector.

Implemented in ThePEG::Helicity::FFVVertex, and ThePEG::Helicity::GeneralFFVVertex.

virtual SpinorBarWaveFunction ThePEG::Helicity::AbstractFFVVertex::evaluate ( Energy2  q2,
int  iopt,
tcPDPtr  out,
const SpinorBarWaveFunction sbar2,
const VectorWaveFunction vec3,
Energy  mass = -GeV,
Energy  width = -GeV 
) [pure virtual]

Evaluate the off-shell barred spinor coming from the vertex.

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
iopt Option of the shape of the Breit-Wigner for the off-shell barred spinor.
out The ParticleData pointer for the off-shell barred spinor.
sbar2 The wavefunction for the antifermion.
vec3 The wavefunction for the vector.
mass The mass of the off-shell particle if not taken from the ParticleData object
width The width of the off-shell particle if not taken from the ParticleData object

Implemented in ThePEG::Helicity::FFVVertex, and ThePEG::Helicity::GeneralFFVVertex.

virtual VectorWaveFunction ThePEG::Helicity::AbstractFFVVertex::evaluate ( Energy2  q2,
int  iopt,
tcPDPtr  out,
const SpinorWaveFunction sp1,
const SpinorBarWaveFunction sbar2,
Energy  mass = -GeV,
Energy  width = -GeV 
) [pure virtual]

Evaluate the off-shell vector coming from the vertex.

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
iopt Option of the shape of the Breit-Wigner for the off-shell vector.
out The ParticleData pointer for the off-shell vector.
sp1 The wavefunction for the ferimon.
sbar2 The wavefunction for the antifermion.
mass The mass of the off-shell particle if not taken from the ParticleData object
width The width of the off-shell particle if not taken from the ParticleData object

Implemented in ThePEG::Helicity::FFVVertex, and ThePEG::Helicity::GeneralFFVVertex.

virtual SpinorWaveFunction ThePEG::Helicity::AbstractFFVVertex::evaluate ( Energy2  q2,
int  iopt,
tcPDPtr  out,
const SpinorWaveFunction sp1,
const VectorWaveFunction vec3,
Energy  mass = -GeV,
Energy  width = -GeV 
) [pure virtual]

Evaluate the off-shell spinor coming from the vertex.

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
iopt Option of the shape of the Breit-Wigner for the off-shell spinor.
out The ParticleData pointer for the off-shell spinor.
sp1 The wavefunction for the ferimon.
vec3 The wavefunction for the vector.
mass The mass of the off-shell particle if not taken from the ParticleData object
width The width of the off-shell particle if not taken from the ParticleData object

Implemented in ThePEG::Helicity::FFVVertex, and ThePEG::Helicity::GeneralFFVVertex.

virtual SpinorWaveFunction ThePEG::Helicity::AbstractFFVVertex::evaluateSmall ( Energy2  q2,
int  iopt,
tcPDPtr  out,
const SpinorWaveFunction sp1,
const VectorWaveFunction vec3,
unsigned int  fhel,
unsigned int  vhel,
double  ctheta,
double  phi,
double  stheta,
bool  includeEikonal = true,
SmallAngleDirection  direction = PostiveZDirection,
Energy  mass = -GeV,
Energy  width = -GeV 
) [virtual]

Special members for off-shell fermion wavefunctions with massless gauge bosons at small angles in the small angle limit for numerical accuracy.

In order to get sufficient accuracy it is assumed that the fermion lies along either the positive or negative z axis

Unlike the other members this is not required to be implemented in all inheriting classes and a default implementation which returns the general result is included. Small angle approx for an off-shell spinor

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
iopt Option of the shape of the Breit-Wigner for the off-shell spinor.
out The ParticleData pointer for the off-shell spinor.
sp1 The wavefunction for the ferimon.
vec3 The wavefunction for the vector.
fhel Helicity of the fermion
vhel Helicity of the vector
ctheta The cosine of the polar angle of the photon with respect to the fermion
phi The azimuthal angle of the photon with respect to the fermion
stheta The sine of the polar angle of the photon with respect to the fermion
includeEikonal Whether or not to include the eikonal piece
direction Whether fermion along + or - z direction
mass The mass of the off-shell particle if not taken from the ParticleData object
width The width of the off-shell particle if not taken from the ParticleData object

Reimplemented in ThePEG::Helicity::FFVVertex.

virtual SpinorBarWaveFunction ThePEG::Helicity::AbstractFFVVertex::evaluateSmall ( Energy2  q2,
int  iopt,
tcPDPtr  out,
const SpinorBarWaveFunction sbar2,
const VectorWaveFunction vec3,
unsigned int  fhel,
unsigned int  vhel,
double  ctheta,
double  phi,
double  stheta,
bool  includeEikonal = true,
SmallAngleDirection  direction = PostiveZDirection,
Energy  mass = -GeV,
Energy  width = -GeV 
) [virtual]

Small angle approx for an off-shell spinor.

Parameters:
q2 The scale $q^2$ for the coupling at the vertex.
iopt Option of the shape of the Breit-Wigner for the off-shell spinor.
out The ParticleData pointer for the off-shell spinor.
sbar2 The wavefunction for the antifermion.
vec3 The wavefunction for the vector.
fhel Helicity of the fermion
vhel Helicity of the vector
ctheta The cosine of the polar angle of the photon with respect to the fermion
phi The azimuthal angle of the photon with respect to the fermion
stheta The sine of the polar angle of the photon with respect to the fermion
includeEikonal Whether or not to include the eikonal piece
direction Whether fermion along + or - z direction
mass The mass of the off-shell particle if not taken from the ParticleData object
width The width of the off-shell particle if not taken from the ParticleData object

Reimplemented in ThePEG::Helicity::FFVVertex.

static void ThePEG::Helicity::AbstractFFVVertex::Init (  )  [static]

The standard Init function used to initialize the interfaces.

Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.

Reimplemented from ThePEG::Helicity::VertexBase.

Reimplemented in ThePEG::Helicity::FFVVertex, and ThePEG::Helicity::GeneralFFVVertex.

AbstractFFVVertex& ThePEG::Helicity::AbstractFFVVertex::operator= ( const AbstractFFVVertex  )  [private]

The assignment operator is private and must never be called.

In fact, it should not even be implemented.


Member Data Documentation

The static object used to initialize the description of this class.

Indicates that this is an abstract class without persistent data.

Definition at line 196 of file AbstractFFVVertex.h.


The documentation for this class was generated from the following file:

Generated on Thu Apr 29 12:43:27 2010 for ThePEG by  doxygen 1.5.5