herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
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 $\rho$ matrix for a given outgoing particle. More...
 
virtual Complex contract (const RhoDMatrix &rhoin) const =0
 Contract the matrix element with the $\rho$ 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 $\rho$ 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 $n$-body decay. More...
 
virtual Complexoperator() (const vector< unsigned int > &in)=0
 Set the helicity components for an $n$-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 &)=delete
 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.

Member Function Documentation

◆ calculateDMatrix()

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

Spin Density matrices.

Calculate the decay matrix for this decay.

Parameters
rhooutThe $D$ 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 $\rho$ matrix for a given outgoing particle.

Parameters
ipartThe outgoing particle the $\rho$ matrix is needed for
rhoinThe $\rho$ matrix for the decaying particle.
rhoouthe $D$ 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 $\rho$ matrix of the incoming particle.

The spins of the decay products are summed over.

Parameters
rhoinThe $\rho$ 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 $\rho$ matrix of the incoming particle.

The spins of the decay products are summed over.

Parameters
conThe conjugate matrix elemetn for the contraction
rhoinThe $\rho$ matrix for the decaying particle. Access to the individual helicity components. Get the helicity components for a two body decay
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The helicity of the fourth decay product.
outhel5The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The helicity of the fourth decay product.
outhel5The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The helicity of the fourth decay product.
outhel5The helicity of the fifth decay product.
outhel6The 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
inhelThe helicity of the decaying particle.
outhel1The helicity of the first decay product.
outhel2The helicity of the second decay product.
outhel3The helicity of the third decay product.
outhel4The helicity of the fourth decay product.
outhel5The helicity of the fifth decay product.
outhel6The 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 $n$-body decay.

Parameters
inThe 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 $n$-body decay.

Parameters
inThe helicities of the external particles.

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

◆ operator=()

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

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: