herwig is hosted by Hepforge, IPPP Durham
Herwig++  2.7.0
Herwig::MEff2ff Class Reference

This is the implementation of the $ 2\to 2$ matrix element for a $ \Psi \Psi \to \Psi \Psi$ process. More...

#include <MEff2ff.h>

Inheritance diagram for Herwig::MEff2ff:

List of all members.

Public Types

typedef vector
< SpinorWaveFunction
SpinorVector
 Vector of SpinorWaveFunctions.
typedef vector
< SpinorBarWaveFunction
SpinorBarVector
 Vector of SpinorBarWaveFunctions.

Public Member Functions

 MEff2ff ()
 The default constructor.
Virtual functions required by the MEBase class.
virtual double me2 () const
 The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number.
Functions used by the persistent I/O system.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.

Static Public Member Functions

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

Protected Member Functions

virtual void debug (double me2) const
 A debugging function to test the value of me2 against an analytic function.
Standard Interfaced functions.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object.
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane.

Private Member Functions

virtual void constructVertex (tSubProPtr sub)
 Construct the vertex information for the spin correlations.
MEff2ffoperator= (const MEff2ff &)
 The assignment operator is private and must never be called.
Functions to compute the ProductionMatrixElement.
ProductionMatrixElement ffb2ffbHeME (double &me2, bool first) const
 Compute the matrix element for $\Psi\bar{\Psi}\to\Psi\bar{\Psi}$.
ProductionMatrixElement ff2ffHeME (double &me2, bool first) const
 Compute the matrix element for $\Psi\Psi\to\Psi\Psi$.
ProductionMatrixElement fbfb2fbfbHeME (double &me2, bool first) const
 Compute the matrix element for $\bar{\Psi}\bar{\Psi}\to\bar{\Psi}\bar{\Psi}$.
ProductionMatrixElement ffb2mfmfHeME (double &me2, bool first) const
 Compute the matrix element for $\Psi\bar{\Psi}\to\lambda\lambda$.

Private Attributes

vector< pair
< AbstractFFSVertexPtr,
AbstractFFSVertexPtr > > 
scalar_
 Store the vector of FFSVertex pairs.
vector< pair
< AbstractFFVVertexPtr,
AbstractFFVVertexPtr > > 
vector_
 Store the vector of FFVVertex pairs.
vector< pair
< AbstractFFTVertexPtr,
AbstractFFTVertexPtr > > 
tensor_
 Store the vector of FFTVertex pairs.
vector< vector
< SpinorWaveFunction > > 
spin_
 Spinors.
vector< vector
< SpinorBarWaveFunction > > 
sbar_
 Barred spinors.

Static Private Attributes

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

Detailed Description

This is the implementation of the $ 2\to 2$ matrix element for a $ \Psi \Psi \to \Psi \Psi$ process.

It inherits from GeneralHardME and implements the appropriate virtual functions.

See also:
The Interfaces defined for MEff2ff.
GeneralHardME

Definition at line 37 of file MEff2ff.h.


Member Typedef Documentation

Vector of SpinorBarWaveFunctions.

Definition at line 45 of file MEff2ff.h.

Vector of SpinorWaveFunctions.

Definition at line 42 of file MEff2ff.h.


Member Function Documentation

virtual IBPtr Herwig::MEff2ff::clone ( ) const [inline, protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Definition at line 177 of file MEff2ff.h.

virtual void Herwig::MEff2ff::constructVertex ( tSubProPtr  sub) [private, virtual]

Construct the vertex information for the spin correlations.

Parameters:
subPointer to the relevent SubProcess

Reimplemented from ThePEG::MEBase.

virtual void Herwig::MEff2ff::debug ( double  me2) const [protected, virtual]

A debugging function to test the value of me2 against an analytic function.

Parameters:
me2The value of the $ |\bar{\mathcal{M}}|^2 $

Reimplemented from Herwig::GeneralHardME.

virtual void Herwig::MEff2ff::doinit ( ) [protected, virtual]

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions:
InitExceptionif object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.

ProductionMatrixElement Herwig::MEff2ff::fbfb2fbfbHeME ( double &  me2,
bool  first 
) const [private]

Compute the matrix element for $\bar{\Psi}\bar{\Psi}\to\bar{\Psi}\bar{\Psi}$.

Parameters:
me2colour averaged, spin summed ME
firstWhether or not first call to decide if colour decomposition etc should be calculated
Returns:
ProductionMatrixElement containing results of helicity calculations
ProductionMatrixElement Herwig::MEff2ff::ff2ffHeME ( double &  me2,
bool  first 
) const [private]

Compute the matrix element for $\Psi\Psi\to\Psi\Psi$.

Parameters:
firstWhether or not first call to decide if colour decomposition etc should be calculated
Returns:
ProductionMatrixElement containing results of helicity calculations
ProductionMatrixElement Herwig::MEff2ff::ffb2ffbHeME ( double &  me2,
bool  first 
) const [private]

Compute the matrix element for $\Psi\bar{\Psi}\to\Psi\bar{\Psi}$.

Parameters:
me2colour averaged, spin summed ME
firstWhether or not first call to decide if colour decomposition etc should be calculated
Returns:
ProductionMatrixElement containing results of helicity calculations
ProductionMatrixElement Herwig::MEff2ff::ffb2mfmfHeME ( double &  me2,
bool  first 
) const [private]

Compute the matrix element for $\Psi\bar{\Psi}\to\lambda\lambda$.

Parameters:
me2colour averaged, spin summed ME
firstWhether or not first call to decide if colour decomposition etc should be calculated
Returns:
ProductionMatrixElement containing results of helicity calculations
virtual IBPtr Herwig::MEff2ff::fullclone ( ) const [inline, protected, virtual]

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns:
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

Definition at line 183 of file MEff2ff.h.

static void Herwig::MEff2ff::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 Herwig::GeneralHardME.

virtual double Herwig::MEff2ff::me2 ( ) const [virtual]

The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number.

Returns:
the matrix element scaled with sHat() to give a dimensionless number.

Implements Herwig::GeneralHardME.

MEff2ff& Herwig::MEff2ff::operator= ( const MEff2ff ) [private]

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

void Herwig::MEff2ff::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters:
isthe persistent input stream read from.
versionthe version number of the object when written.

Reimplemented from Herwig::GeneralHardME.

Function used to write out object persistently.

Parameters:
osthe persistent output stream written to.

Reimplemented from Herwig::GeneralHardME.


Member Data Documentation

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

Indicates that this is a concrete class with persistent data.

Definition at line 192 of file MEff2ff.h.


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