9 #ifndef ThePEG_Decayer_H 10 #define ThePEG_Decayer_H 13 #include "ThePEG/Config/ThePEG.h" 15 #include "ThePEG/Handlers/HandlerBase.h" 16 #include "ThePEG/MatrixElement/Amplitude.h" 85 double oldbrat)
const;
95 double oldbrat)
const;
204 static string className() {
return "ThePEG::Decayer"; }
static void Init()
Standard Init function used to initialize the interfaces.
PersistentIStream is used to read persistent objects from a stream where they were previously written...
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
virtual double brat(const DecayMode &dm, const ParticleData &pd, double oldbrat) const
Calculate branching ratio.
The Particle class is used to describe an instance of a particle.
ClassTraitsType is an empty, non-polymorphic, base class.
virtual bool needsFullStep() const
Return true if this Decayer need to access the full current step when a particle is decayed...
const Exception & operator=(const Exception &ex)
Assignment.
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
Exception class used if something goes wrong in DecayParticle().
TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr a...
Ptr< Amplitude >::pointer theAmplitude
A possible null pointer to an amplitude associated with this matrix element.
virtual ParticleVector getChildren(const DecayMode &dm, const Particle &parent) const
Produce the children.
This is the main namespace within which all identifiers in ThePEG are declared.
ParticleData inherits from InterfacedBase and represents the properties of a particle type...
Ptr< Amplitude >::pointer amplitude() const
Return an amplitude associated with this decay matrix element.
virtual ParticleVector decay(const DecayMode &dm, const Particle &p) const =0
Perform a decay for a given DecayMode and a given Particle instance.
static AbstractNoPIOClassDescription< Decayer > initDecayer
The static object used to initialize the description of this class.
virtual bool accept(const DecayMode &dm) const =0
Check if this decayer can perfom the decay specified by the given decay mode.
A concreate implementation of ClassDescriptionBase describing an abstract class without persistent da...
RCPtr is a reference counted (smart) pointer.
virtual void setScales(const Particle &parent, const ParticleVector &children) const
Set the scales.
HandlerBase is an abstract base class derived from the Interfaced class via the HandlerBaseT class ad...
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Exception is the base class for all exceptions to be used in ThePEG.
The default concrete implementation of ClassTraitsBase.
The DecayMode class describes a decay channel of a particle.
Decayer is an abstract base class to specify objects modelling the decay of a particle.
vector< PPtr > ParticleVector
A vector of pointers to Particle objects.
virtual void finalBoost(const Particle &parent, const ParticleVector &children) const
Boost the decay products.
BaseClassTraits describes the base classes of the templated class.
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
The Step class contains information of all particles present after certain step in the event generati...
static ParticleVector DecayParticle(tPPtr parent, Step &step, long maxtry=1000)
Static function to administer the decay of a particle.