ThePEG  1.8.0
Static Public Member Functions | Private Member Functions | Static Private Attributes
ThePEG::FlatDecayer Class Reference

The FlatDecayer class inrerits from the abstract Decayer class and implements the decay of a given Particle to a given set of children according to a flat phase space distribution. More...

#include <FlatDecayer.h>

Inheritance diagram for ThePEG::FlatDecayer:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Virtual functions required by the Decayer class.
virtual bool accept (const DecayMode &dm) const
 Check if this decayer can perfom the decay specified by the given decay mode.
virtual ParticleVector decay (const DecayMode &dm, const Particle &p) const
 Perform a decay for a given DecayMode and a given Particle instance.
virtual double reweight (const DecayMode &, const Particle &, const ParticleVector &) const
 Give a weight to a phase space point.
- Public Member Functions inherited from ThePEG::Decayer
Ptr< Amplitude >::pointer amplitude () const
 Return an amplitude associated with this decay matrix element.
virtual bool needsFullStep () const
 Return true if this Decayer need to access the full current step when a particle is decayed.
virtual ParticleVector decay (const DecayMode &dm, const Particle &p, Step &step) const
 Perform a decay for a given DecayMode and a given Particle instance.
virtual double brat (const DecayMode &dm, const ParticleData &pd, double oldbrat) const
 Calculate branching ratio.
virtual double brat (const DecayMode &dm, const Particle &p, double oldbrat) const
 Calculate branching ratio.
virtual ParticleVector getChildren (const DecayMode &dm, const Particle &parent) const
 Produce the children.
virtual void finalBoost (const Particle &parent, const ParticleVector &children) const
 Boost the decay products.
virtual void setScales (const Particle &parent, const ParticleVector &children) const
 Set the scales.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interfaces.
- Static Public Member Functions inherited from ThePEG::Decayer
static ParticleVector DecayParticle (tPPtr parent, Step &step, long maxtry=1000)
 Static function to administer the decay of a particle.

Protected Member Functions

Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object.
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane.

Private Member Functions

FlatDecayeroperator= (const FlatDecayer &)
 Private and non-existent assignment operator.

Static Private Attributes

static NoPIOClassDescription
< FlatDecayer
initFlatDecayer
 Describe a concrete class without persistent data.

Detailed Description

The FlatDecayer class inrerits from the abstract Decayer class and implements the decay of a given Particle to a given set of children according to a flat phase space distribution.

It is possible to implement a more complicated decay distribution by inheriting from the FlatDecayer class and only override the virtual function reweight() to return a weight (between zero and one) of a given phase space point relative to the flat distribution.

See also:
The interfaces defined for FlatDecayer.
Decayer
Particle

Definition at line 33 of file FlatDecayer.h.


Member Function Documentation

virtual bool ThePEG::FlatDecayer::accept ( const DecayMode dm) const
virtual

Check if this decayer can perfom the decay specified by the given decay mode.

Parameters:
dmthe DecayMode describing the decay.
Returns:
true if this decayer can handle the given mode, otherwise false.

Implements ThePEG::Decayer.

Reimplemented in ThePEG::Onium3GDecayer, ThePEG::V2PPDecayer, ThePEG::OmegaPhi3PiDecayer, ThePEG::ColourPairDecayer, and ThePEG::Tau2HadronsDecayer.

virtual IBPtr ThePEG::FlatDecayer::clone ( ) const
protectedvirtual

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Reimplemented in ThePEG::Onium3GDecayer, ThePEG::V2PPDecayer, ThePEG::OmegaPhi3PiDecayer, ThePEG::Tau2HadronsDecayer, and ThePEG::ColourPairDecayer.

virtual ParticleVector ThePEG::FlatDecayer::decay ( const DecayMode dm,
const Particle p 
) const
virtual

Perform a decay for a given DecayMode and a given Particle instance.

Parameters:
dmthe DecayMode describing the decay.
pthe Particle instance to be decayed.
Returns:
a ParticleVector containing the decay products.

Implements ThePEG::Decayer.

Reimplemented in ThePEG::Onium3GDecayer, and ThePEG::V2PPDecayer.

virtual IBPtr ThePEG::FlatDecayer::fullclone ( ) const
protectedvirtual

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns:
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in ThePEG::Onium3GDecayer, ThePEG::V2PPDecayer, ThePEG::OmegaPhi3PiDecayer, ThePEG::Tau2HadronsDecayer, and ThePEG::ColourPairDecayer.

virtual double ThePEG::FlatDecayer::reweight ( const DecayMode ,
const Particle ,
const ParticleVector  
) const
inlinevirtual

Give a weight to a phase space point.

To be overridden by subclasses. For a given decay mode, dm, decaying parent particle and decayproducts, children, distributed according to a flat distribution in phase space, return a weight (less or equal to unity) modifying the flat distribution to the desired one. Note that the chosen phase space point may be rejected, but the chosen decay channel will not. This means that the weight returned by this function does not influence the branching ratios. For the FlatDecayer class this function simply returns 1.

Reimplemented in ThePEG::Onium3GDecayer, ThePEG::V2PPDecayer, ThePEG::OmegaPhi3PiDecayer, and ThePEG::Tau2HadronsDecayer.

Definition at line 67 of file FlatDecayer.h.


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