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:

ThePEG::Decayer ThePEG::HandlerBase ThePEG::HandlerBaseT< T > ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted ThePEG::ColourPairDecayer ThePEG::OmegaPhi3PiDecayer ThePEG::Onium3GDecayer ThePEG::Tau2HadronsDecayer ThePEG::V2PPDecayer

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.

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interfaces.

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:
dm the DecayMode describing the decay.
Returns:
true if this decayer can handle the given mode, otherwise false.

Implements ThePEG::Decayer.

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

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:
dm the DecayMode describing the decay.
p the Particle instance to be decayed.
Returns:
a ParticleVector containing the decay products.

Implements ThePEG::Decayer.

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

virtual double ThePEG::FlatDecayer::reweight ( const DecayMode ,
const Particle ,
const ParticleVector  
) const [inline, virtual]

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::OmegaPhi3PiDecayer, ThePEG::Onium3GDecayer, ThePEG::Tau2HadronsDecayer, and ThePEG::V2PPDecayer.

Definition at line 67 of file FlatDecayer.h.

virtual IBPtr ThePEG::FlatDecayer::clone (  )  const [protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

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

virtual IBPtr ThePEG::FlatDecayer::fullclone (  )  const [protected, virtual]

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::ColourPairDecayer, ThePEG::OmegaPhi3PiDecayer, ThePEG::Onium3GDecayer, ThePEG::Tau2HadronsDecayer, and ThePEG::V2PPDecayer.


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

Generated on Thu Apr 29 12:43:17 2010 for ThePEG by  doxygen 1.5.5