Version: SMASH-1.5
smash::DecayType Class Referenceabstract

#include <decaytype.h>

DecayType is the abstract base class for all decay types.

Definition at line 23 of file decaytype.h.

Inheritance diagram for smash::DecayType:
[legend]
Collaboration diagram for smash::DecayType:
[legend]

Public Member Functions

 DecayType (ParticleTypePtrList part_types, int l)
 Construct a DecayType. More...
 
virtual ~DecayType ()=default
 Virtual Destructor. More...
 
virtual unsigned int particle_number () const =0
 
virtual bool has_particles (ParticleTypePtrList list) const =0
 
virtual bool has_mother (ParticleTypePtr mother) const
 
const ParticleTypePtrList & particle_types () const
 
int angular_momentum () const
 
virtual double width (double m0, double G0, double m) const =0
 
virtual double in_width (double m0, double G0, double m, double m1, double m2) const =0
 

Protected Attributes

ParticleTypePtrList particle_types_
 final-state particles of the decay More...
 
int L_
 angular momentum of the decay More...
 

Constructor & Destructor Documentation

◆ DecayType()

smash::DecayType::DecayType ( ParticleTypePtrList  part_types,
int  l 
)
inline

Construct a DecayType.

Parameters
[in]part_typesFinal-state particles of the decay.
[in]lAngular momentum of the decay.
Returns
The constructed object.

Definition at line 32 of file decaytype.h.

33  : particle_types_(part_types), L_(l) {}
ParticleTypePtrList particle_types_
final-state particles of the decay
Definition: decaytype.h:84
int L_
angular momentum of the decay
Definition: decaytype.h:86

◆ ~DecayType()

virtual smash::DecayType::~DecayType ( )
virtualdefault

Virtual Destructor.

The declaration of the destructor is necessary to make it virtual.

Member Function Documentation

◆ particle_number()

virtual unsigned int smash::DecayType::particle_number ( ) const
pure virtual
Returns
the number of particles in the final state

Implemented in smash::ThreeBodyDecay, and smash::TwoBodyDecay.

Here is the caller graph for this function:

◆ has_particles()

virtual bool smash::DecayType::has_particles ( ParticleTypePtrList  list) const
pure virtual
Returns
if the final state consists of the given particle list.
Parameters
[in]listFinal state particle types to be checked.

Implemented in smash::ThreeBodyDecay, and smash::TwoBodyDecay.

◆ has_mother()

virtual bool smash::DecayType::has_mother ( ParticleTypePtr  mother) const
inlinevirtual
Returns
if this decay type has the right mother (most decays do not depend on the mother type).
Parameters
[in]motherParticle type to be checked.

Reimplemented in smash::ThreeBodyDecayDilepton.

Definition at line 54 of file decaytype.h.

54  {
55  SMASH_UNUSED(mother);
56  return true;
57  }
#define SMASH_UNUSED(x)
Mark as unused, silencing compiler warnings.
Definition: macros.h:24

◆ particle_types()

const ParticleTypePtrList& smash::DecayType::particle_types ( ) const
inline
Returns
the particle types associated with this branch.

Definition at line 59 of file decaytype.h.

59 { return particle_types_; }
ParticleTypePtrList particle_types_
final-state particles of the decay
Definition: decaytype.h:84
Here is the caller graph for this function:

◆ angular_momentum()

int smash::DecayType::angular_momentum ( ) const
inline
Returns
the angular momentum of this branch.

Definition at line 61 of file decaytype.h.

61 { return L_; }
int L_
angular momentum of the decay
Definition: decaytype.h:86
Here is the caller graph for this function:

◆ width()

virtual double smash::DecayType::width ( double  m0,
double  G0,
double  m 
) const
pure virtual
Returns
the mass-dependent width of the decay.
Parameters
[in]m0Pole mass of the decaying particle [GeV].
[in]G0Partial width at the pole mass [GeV].
[in]mActual mass of the decaying particle [GeV].

Implemented in smash::ThreeBodyDecayDilepton, smash::ThreeBodyDecay, smash::TwoBodyDecayDilepton, smash::TwoBodyDecayUnstable, smash::TwoBodyDecaySemistable, and smash::TwoBodyDecayStable.

Here is the caller graph for this function:

◆ in_width()

virtual double smash::DecayType::in_width ( double  m0,
double  G0,
double  m,
double  m1,
double  m2 
) const
pure virtual
Returns
The mass-dependent in-width for a resonance formation process.
Parameters
[in]m0Pole mass of the produced resonance [GeV].
[in]G0Partial width at the pole mass [GeV].
[in]mActual mass of the produced resonance [GeV].
[in]m1Actual mass of the first incoming particle [GeV].
[in]m2Actual mass of the second incoming particle [GeV].

Implemented in smash::ThreeBodyDecay, smash::TwoBodyDecayUnstable, smash::TwoBodyDecaySemistable, and smash::TwoBodyDecayStable.

Member Data Documentation

◆ particle_types_

ParticleTypePtrList smash::DecayType::particle_types_
protected

final-state particles of the decay

Definition at line 84 of file decaytype.h.

◆ L_

int smash::DecayType::L_
protected

angular momentum of the decay

Definition at line 86 of file decaytype.h.


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