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

This is the implementation of the matrix element for $2\to 2$ massless vector-boson pair to a vector and scalar boson. More...

#include <MEvv2vs.h>

Inheritance diagram for Herwig::MEvv2vs:

List of all members.

Public Types

typedef vector
< VectorWaveFunction
VBVector
 Typedef for VectorWaveFunction.

Public Member Functions

virtual void constructVertex (tSubProPtr sub)
 Construct the vertex information for the spin correlations.
Virtual functions required by the GeneralHardME 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

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.
Standard Interfaced functions.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.

Private Member Functions

ProductionMatrixElement vv2vsHeME (VBVector &vin1, VBVector &vin2, VBVector &vout1, bool mc, ScalarWaveFunction &sout2, double &me2, bool first) const
 Compute the matrix element for $V\, V\to V\, V$.
MEvv2vsoperator= (const MEvv2vs &)
 The assignment operator is private and must never be called.

Private Attributes

vector< pair
< AbstractVVSVertexPtr,
AbstractVSSVertexPtr > > 
scalar_
 Store the dynamically casted VVSVertex and VSSVertex pointers.
vector< pair
< AbstractVVVVertexPtr,
AbstractVVSVertexPtr > > 
vector_
 Store the dynamically casted VVVVertex and VVSVertex pointers.

Static Private Attributes

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

Detailed Description

This is the implementation of the matrix element for $2\to 2$ massless vector-boson pair to a vector and scalar boson.

It inherits from GeneralHardME and implements the appropriate virtual member functions.

See also:
The interfaces defined for MEvv2vs.

Definition at line 29 of file MEvv2vs.h.


Member Function Documentation

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

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

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

Construct the vertex information for the spin correlations.

Parameters:
subPointer to the relevent SubProcess

Reimplemented from ThePEG::MEBase.

virtual void Herwig::MEvv2vs::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::MEvv2vs::fullclone ( ) const [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.

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

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

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

void Herwig::MEvv2vs::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::MEvv2vs::vv2vsHeME ( VBVector vin1,
VBVector vin2,
VBVector vout1,
bool  mc,
ScalarWaveFunction sout2,
double &  me2,
bool  first 
) const [private]

Compute the matrix element for $V\, V\to V\, V$.

Parameters:
vin1VectorWaveFunctions for first incoming particle
vin2VectorWaveFunctions for second incoming particle
vout1VectorWaveFunctions for first outgoing particle
mcWhether vout1 is massless or not
sout2ScalarWaveFunction for outgoing particle
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

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 139 of file MEvv2vs.h.


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