Herwig 7 is hosted by Hepforge, IPPP Durham
 Herwig  7.1.4
Herwig::DecayMatrixElement Class Referenceabstract

Here is the documentation of the DecayMatrixElement class. More...

#include <DecayMatrixElement.h>

Inheritance diagram for Herwig::DecayMatrixElement:

## Public Member Functions

unsigned int nOut () const
Get the number of outgoing particles.

virtual void zero ()=0
Member to zero all the elements for the matrix element.

Standard constructors and destructors.
DecayMatrixElement (unsigned int ntemp=999, PDT::Spin spin=PDT::SpinUndefined)
The default constructor.

virtual ~DecayMatrixElement ()
The destructor.

PDT::Spin inspin () const
Access to the spins of the particles. More...

const vector< PDT::Spin > & outspin () const
Get the spins of the outgoing particles.

virtual RhoDMatrix calculateDMatrix (const vector< RhoDMatrix > &rhoout) const =0
Spin Density matrices. More...

virtual RhoDMatrix calculateRhoMatrix (int ipart, const RhoDMatrix &rhoin, const vector< RhoDMatrix > &rhoout) const =0
Calculate the matrix for a given outgoing particle. More...

virtual Complex contract (const RhoDMatrix &rhoin) const =0
Contract the matrix element with the matrix of the incoming particle. More...

virtual Complex operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2) const =0
Contract the matrix element with the matrix of the incoming particle. More...

virtual Complexoperator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2)=0
Set the helicity components for a two body decay. More...

virtual Complex operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3) const =0
Get the helicity components for a three body decay. More...

virtual Complexoperator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3)=0
Set the helicity components for a three body decay. More...

virtual Complex operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4) const =0
Get the helicity components for a four body decay. More...

virtual Complexoperator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4)=0
Set the helicity components for a four body decay. More...

virtual Complex operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5) const =0
Get the helicity components for a five body decay. More...

virtual Complexoperator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5)=0
Set the helicity components for a five body decay. More...

virtual Complex operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5, unsigned int outhel6) const =0
Get the helicity components for a six body decay. More...

virtual Complexoperator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5, unsigned int outhel6)=0
Set the helicity components for a six body decay. More...

virtual Complex operator() (const vector< unsigned int > &in) const =0
Get the helicity components for an -body decay. More...

virtual Complexoperator() (const vector< unsigned int > &in)=0
Set the helicity components for an -body decay. More...

Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const

## Protected Member Functions

vector< PDT::Spin > & outspin ()
Get the spins of the outgoing particles.

Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
ReferenceCounted (const ReferenceCounted &)

ReferenceCountedoperator= (const ReferenceCounted &)

ReferenceCounted (const ReferenceCounted &)

ReferenceCountedoperator= (const ReferenceCounted &)

## Private Member Functions

DecayMatrixElementoperator= (const DecayMatrixElement &)
The assignment operator is private and must never be called. More...

## Private Attributes

unsigned int nOut_
Number of outgoing particles.

PDT::Spin inSpin_
Spin of the incoming particle as 2s+1.

vector< PDT::SpinoutSpin_
Spins of the outgoing particles.

## Additional Inherited Members

Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType

Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId

## Detailed Description

Here is the documentation of the DecayMatrixElement class.

Definition at line 21 of file DecayMatrixElement.h.

## ◆ calculateDMatrix()

 virtual RhoDMatrix Herwig::DecayMatrixElement::calculateDMatrix ( const vector< RhoDMatrix > & rhoout ) const
pure virtual

Spin Density matrices.

Calculate the decay matrix for this decay.

Parameters
 rhoout The matrix for this decay.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ calculateRhoMatrix()

 virtual RhoDMatrix Herwig::DecayMatrixElement::calculateRhoMatrix ( int ipart, const RhoDMatrix & rhoin, const vector< RhoDMatrix > & rhoout ) const
pure virtual

Calculate the matrix for a given outgoing particle.

Parameters
 ipart The outgoing particle the matrix is needed for rhoin The matrix for the decaying particle. rhoout he matrices for the other decay products.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ contract()

 virtual Complex Herwig::DecayMatrixElement::contract ( const RhoDMatrix & rhoin ) const
pure virtual

Contract the matrix element with the matrix of the incoming particle.

The spins of the decay products are summed over.

Parameters
 rhoin The matrix for the decaying particle.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ inspin()

 PDT::Spin Herwig::DecayMatrixElement::inspin ( ) const
inline

Access to the spins of the particles.

Get the spin of the incoming particle.

Definition at line 48 of file DecayMatrixElement.h.

## ◆ operator()() [1/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2 ) const
pure virtual

Contract the matrix element with the matrix of the incoming particle.

The spins of the decay products are summed over.

Parameters
 con The conjugate matrix elemetn for the contraction rhoin The matrix for the decaying particle. Access to the individual helicity components. Get the helicity components for a two body decay inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [2/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2 )
pure virtual

Set the helicity components for a two body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [3/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3 ) const
pure virtual

Get the helicity components for a three body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [4/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3 )
pure virtual

Set the helicity components for a three body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [5/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4 ) const
pure virtual

Get the helicity components for a four body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [6/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4 )
pure virtual

Set the helicity components for a four body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [7/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5 ) const
pure virtual

Get the helicity components for a five body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product. outhel5 The helicity of the fifth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [8/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5 )
pure virtual

Set the helicity components for a five body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product. outhel5 The helicity of the fifth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [9/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5, unsigned int outhel6 ) const
pure virtual

Get the helicity components for a six body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product. outhel5 The helicity of the fifth decay product. outhel6 The helicity of the sixth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [10/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( unsigned int inhel, unsigned int outhel1, unsigned int outhel2, unsigned int outhel3, unsigned int outhel4, unsigned int outhel5, unsigned int outhel6 )
pure virtual

Set the helicity components for a six body decay.

Parameters
 inhel The helicity of the decaying particle. outhel1 The helicity of the first decay product. outhel2 The helicity of the second decay product. outhel3 The helicity of the third decay product. outhel4 The helicity of the fourth decay product. outhel5 The helicity of the fifth decay product. outhel6 The helicity of the sixth decay product.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [11/12]

 virtual Complex Herwig::DecayMatrixElement::operator() ( const vector< unsigned int > & in ) const
pure virtual

Get the helicity components for an -body decay.

Parameters
 in The helicities of the external particles.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator()() [12/12]

 virtual Complex& Herwig::DecayMatrixElement::operator() ( const vector< unsigned int > & in )
pure virtual

Set the helicity components for an -body decay.

Parameters
 in The helicities of the external particles.

Implemented in Herwig::GeneralDecayMatrixElement, and Herwig::TwoBodyDecayMatrixElement.

## ◆ operator=()

 DecayMatrixElement& Herwig::DecayMatrixElement::operator= ( const DecayMatrixElement & )
private

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

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