Herwig 7.3.0
|
#include <TwoBodyDecayMatrixElement.h>
Standard constructors and destructors. | |
Complex | matrixElement_ [5][5][5] |
Storage of the matrix element, a vector is better for memory usage. | |
TwoBodyDecayMatrixElement () | |
Default constructor. | |
TwoBodyDecayMatrixElement (PDT::Spin spinin, PDT::Spin outspin1, PDT::Spin outspin2) | |
Constructor for two body decay. | |
TwoBodyDecayMatrixElement (PDT::Spin inspin, vector< PDT::Spin > spinout) | |
Constructor for arbitary body decay. | |
TwoBodyDecayMatrixElement (vector< PDT::Spin > extspin) | |
Constructor for arbitary body decay. | |
RhoDMatrix | calculateDMatrix (const vector< RhoDMatrix > &rhoout) const |
Spin Density matrices. | |
RhoDMatrix | calculateRhoMatrix (int ipart, const RhoDMatrix &rhoin, const vector< RhoDMatrix > &rhoout) const |
Calculate the \(\rho\) matrix for a given outgoing particle. | |
Complex | contract (const RhoDMatrix &rhoin) const |
Contract the matrix element with the \(\rho\) matrix of the incoming particle. | |
Complex | contract (const TwoBodyDecayMatrixElement &con, const RhoDMatrix &rhoin) |
Contract the matrix element with the \(\rho\) matrix of the incoming particle. | |
Complex | operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2) const |
Access to the individual helicity components. | |
Complex & | operator() (unsigned int inhel, unsigned int outhel1, unsigned int outhel2) |
Set the helicity components for a two body decay. | |
Complex | operator() (unsigned int, unsigned int, unsigned int, unsigned int) const |
Get the helicity components for a three body decay. | |
Complex & | operator() (unsigned int, unsigned int, unsigned int, unsigned int) |
Set the helicity components for a three body decay. | |
Complex | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const |
Get the helicity components for a four body decay. | |
Complex & | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) |
Set the helicity components for a four body decay. | |
Complex | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const |
Get the helicity components for a five body decay. | |
Complex & | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) |
Set the helicity components for a five body decay. | |
Complex | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const |
Get the helicity components for a six body decay. | |
Complex & | operator() (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) |
Set the helicity components for a six body decay. | |
Complex | operator() (const vector< unsigned int > &in) const |
Get the helicity components for an \(n\)-body decay. | |
Complex & | operator() (const vector< unsigned int > &in) |
Set the helicity components for an \(n\)-body decay. | |
void | zero () |
Member to zero all the elements for the matrix element. | |
Additional Inherited Members | |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
Public Member Functions inherited from Herwig::DecayMatrixElement | |
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. | |
const vector< PDT::Spin > & | outspin () const |
Get the spins of the outgoing particles. | |
unsigned int | nOut () const |
Get the number of outgoing particles. | |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
Protected Member Functions inherited from Herwig::DecayMatrixElement | |
vector< PDT::Spin > & | outspin () |
Get the spins of the outgoing particles. | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Implementation of the complex matrix element for a two-body decay a decay. An arbitary number of external particles are supported.
Definition at line 31 of file TwoBodyDecayMatrixElement.h.
|
inline |
Default constructor.
Definition at line 40 of file TwoBodyDecayMatrixElement.h.
|
inline |
Constructor for two body decay.
spinin | \(2S+1\) for the decaying particle |
outspin1 | \(2S+1\) for the first decay product. |
outspin2 | \(2S+1\) for the second decay product. |
Definition at line 48 of file TwoBodyDecayMatrixElement.h.
References Herwig::DecayMatrixElement::outspin().
|
inline |
Constructor for arbitary body decay.
inspin | \(2S+1\) for the decaying particle |
spinout | \(2S+1\) for the decay products. |
Definition at line 59 of file TwoBodyDecayMatrixElement.h.
References Herwig::DecayMatrixElement::outspin().
|
inline |
Constructor for arbitary body decay.
extspin | \(2S+1\) external particles. |
Definition at line 69 of file TwoBodyDecayMatrixElement.h.
References Herwig::DecayMatrixElement::outspin().
|
virtual |
Spin Density matrices.
Calculate the decay matrix for this decay.
rhoout | The \(D\) matrix for this decay. |
Implements Herwig::DecayMatrixElement.
|
virtual |
Calculate the \(\rho\) matrix for a given outgoing particle.
ipart | The outgoing particle the \(\rho\) matrix is needed for |
rhoin | The \(\rho\) matrix for the decaying particle. |
rhoout | he \(D\) matrices for the other decay products. |
Implements Herwig::DecayMatrixElement.
|
virtual |
Contract the matrix element with the \(\rho\) matrix of the incoming particle.
The spins of the decay products are summed over.
rhoin | The \(\rho\) matrix for the decaying particle. |
Implements Herwig::DecayMatrixElement.
Complex Herwig::TwoBodyDecayMatrixElement::contract | ( | const TwoBodyDecayMatrixElement & | con, |
const RhoDMatrix & | rhoin | ||
) |
Contract the matrix element with the \(\rho\) matrix of the incoming particle.
The spins of the decay products are summed over.
con | The conjugate matrix elemetn for the contraction |
rhoin | The \(\rho\) matrix for the decaying particle. |
|
inlinevirtual |
Set the helicity components for an \(n\)-body decay.
in | The helicities of the external particles. |
Implements Herwig::DecayMatrixElement.
Definition at line 249 of file TwoBodyDecayMatrixElement.h.
References matrixElement_.
|
inlinevirtual |
Get the helicity components for an \(n\)-body decay.
in | The helicities of the external particles. |
Implements Herwig::DecayMatrixElement.
Definition at line 240 of file TwoBodyDecayMatrixElement.h.
References matrixElement_.
|
inlinevirtual |
Set 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. |
Implements Herwig::DecayMatrixElement.
Definition at line 137 of file TwoBodyDecayMatrixElement.h.
References matrixElement_.
|
inlinevirtual |
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. |
Implements Herwig::DecayMatrixElement.
Definition at line 126 of file TwoBodyDecayMatrixElement.h.
References matrixElement_.
|
inlinevirtual |
Set the helicity components for a three body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 155 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Get the helicity components for a three body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 145 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Set the helicity components for a four body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 176 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Get the helicity components for a four body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 165 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Set the helicity components for a five body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 204 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Get the helicity components for a five 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. |
outhel3 | The helicity of the third decay product. |
outhel4 | The helicity of the fourth decay product. |
outhel5 | The helicity of the fifth decay product. |
Implements Herwig::DecayMatrixElement.
Definition at line 193 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Set the helicity components for a six body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 227 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Get the helicity components for a six body decay.
Implements Herwig::DecayMatrixElement.
Definition at line 215 of file TwoBodyDecayMatrixElement.h.
|
inlinevirtual |
Member to zero all the elements for the matrix element.
Implements Herwig::DecayMatrixElement.
Definition at line 258 of file TwoBodyDecayMatrixElement.h.
References matrixElement_.
|
private |
Storage of the matrix element, a vector is better for memory usage.
Definition at line 273 of file TwoBodyDecayMatrixElement.h.
Referenced by operator()(), and zero().