File: Hw64Decayer.h
Description:
Hw64Decayer is a class that defines all the general routines
used in HERWIG++ to imitate the HERWIG 6.4 decays. The goal is to have an exact
copy of HERWIG 6.4 decay routines. This will allow for easy 'callibration'
of the new C++ code with the old Fortran code.
See
also:
namespace Herwig
CLASS
Hw64Decayer:
Base class:
Public members:
inline Hw64Decayer();
inline Hw64Decayer(const Hw64Decayer &);
virtual ~Hw64Decayer();
Standard ctors and dtor
virtual bool accept(const DecayMode &) const;
return true if this decayer can perfom the decay specified by the
given decay mode.
virtual ParticleVector decay(const DecayMode &, const Particle &) const;
for a given decay mode and a given particle instance, perform the
decay and return the decay products.
static void Init();
Standard Init function used to initialize the interface.
inline virtual void doupdate() throw(UpdateException);
inline virtual void doinit() throw(InitException);
inline virtual void dofinish();
Standard Interfaced virtual functions
void persistentOutput(PersistentOStream &) const;
void persistentInput(PersistentIStream &, int);
Standard Persisten stream methods
Protected members:
inline virtual IBPtr clone() const;
inline virtual IBPtr fullclone() const;
Standard clone methods
inline virtual void rebind(const TranslationMap &trans)
throw(RebindException);
Change all pointers of Interfaced objects to corresponding clones
inline virtual IVector getReferences();
Return pointers to all interfaced objects referred to by this class.
Private members:
int MECode;
static void oneBodyDecay(Lorentz5Momentum, Lorentz5Momentum &);
Perform a one body decay, used for K
two body decay is handled in static class Kinematics
static double VAWt(double*); //, double, double, double) const;
Weighting of phase space for V-A matrix elements
double PhaseSpaceWt() const;
Flat phase space weight (1.0)
double randomAzimuthal(double, double &, double &) const;
void setParticleMomentum(ParticleVector &, ParticleMSet,
vector<Lorentz5Momentum>) const;
Sets the momentum in the vector to be the momentum of the particle vector
where is the particles are of the type given in the ParticleMSet
static ClassDescription<Hw64Decayer> initHw64Decayer;
const Hw64Decayer & operator=(const Hw64Decayer &);
Private and non-existent assignment operator.
namespace ThePEG
template <>
STRUCT
BaseClassTrait<Herwig::Hw64Decayer,1>
Public members:
typedef HandlerBase NthBase;
template <>
STRUCT
ClassTraits<Herwig::Hw64Decayer>:
Public members:
static string className() { return "/Herwig++/Hw64Decayer"; }
static string library() { return "libHwDecay.so"; }
DEFINED MACROS
INCLUDED FILES
ThePEG/Config/ThePEG.h
ThePEG/PDT/Decayer.h
ThePEG/Handlers/HandlerBase.h
ThePEG/Interface/Interfaced.h
ThePEG/PDT/DecayMode.h
ThePEG/Repository/Strategy.fh
DecayConfig.h
fstream
Hw64Decayer.icc