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

This is the implementation of the matrix element for the process vector-vector to scalar-scalar. More...

#include <MEvv2ss.h>

Inheritance diagram for Herwig::MEvv2ss:

List of all members.

Public Types

typedef vector
< VectorWaveFunction
VBVector
 A vector of VectorWaveFunction objects.

Public Member Functions

virtual void constructVertex (tSubProPtr sub)
 Set the Hardvertex for the spin correlations.
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

ProductionMatrixElement vv2ssME (const VBVector &v1, const VBVector &v2, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, double &me2, bool first) const
 Calculate the matrix element.
MEvv2ssoperator= (const MEvv2ss &)
 The assignment operator is private and must never be called.

Private Attributes

The dynamically casted vertices.
vector< pair
< AbstractVVSVertexPtr,
AbstractSSSVertexPtr > > 
scalar1_
 Intermediate s-channel scalar.
vector< pair
< AbstractVSSVertexPtr,
AbstractVSSVertexPtr > > 
scalar2_
 Intermediate t-channel scalar.
vector< pair
< AbstractVVVVertexPtr,
AbstractVSSVertexPtr > > 
vector_
 Intermediate s-channel vector.
vector< pair
< AbstractVVTVertexPtr,
AbstractSSTVertexPtr > > 
tensor_
 Intermediate s-channel tensor.
AbstractVVSSVertexPtr contact_
 The contact vertex.

Static Private Attributes

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

Detailed Description

This is the implementation of the matrix element for the process vector-vector to scalar-scalar.

It inherits from GeneralHardME and implements the required virtual functions.

See also:
The Interfaces defined for MEff2ff.
GeneralHardME

Definition at line 41 of file MEvv2ss.h.


Member Function Documentation

virtual IBPtr Herwig::MEvv2ss::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 142 of file MEvv2ss.h.

virtual void Herwig::MEvv2ss::constructVertex ( tSubProPtr  sub) [virtual]

Set the Hardvertex for the spin correlations.

Parameters:
sub

Reimplemented from ThePEG::MEBase.

virtual void Herwig::MEvv2ss::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::MEvv2ss::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.

virtual IBPtr Herwig::MEvv2ss::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 148 of file MEvv2ss.h.

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

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

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

void Herwig::MEvv2ss::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.

ProductionMatrixElement Herwig::MEvv2ss::vv2ssME ( const VBVector v1,
const VBVector v2,
const ScalarWaveFunction sca1,
const ScalarWaveFunction sca2,
double &  me2,
bool  first 
) const [private]

Calculate the matrix element.

Parameters:
v1A vector of VectorWaveFunction objects for the first boson
v2A vector of VectorWaveFunction objects for the second boson
sca1A ScalarWaveFunction for the first outgoing
sca2A ScalarWaveFunction for the second outgoing
me2The value of the spin-summed matrix element squared (to be calculated)
firstWhether or not first call to decide if colour decomposition etc should be calculated

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 157 of file MEvv2ss.h.


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