File: PartonSplitter.h
Description:
This class does all of the nonperturbative parton splittings needed
immediately after the end of the showering (both initial and final),
as very first step of the cluster hadronization.
See
also:
namespace Herwig
CLASS
PartonSplitter:
Base class:
Public members:
inline PartonSplitter();
inline PartonSplitter(const PartonSplitter &);
virtual ~PartonSplitter();
Standard ctors and dtor.
void split(const tPVector & tagged, tStepPtr pstep);
It does the nonperturbative splitting of:
time-like gluons; space-like gluons; space-like sea-quark (or antiquark)
(in the latter case, the produced soft gluon is then splitted in valence
quarks). The new particles produced are added to the event record.
void persistentOutput(PersistentOStream &) const;
void persistentInput(PersistentIStream &, int);
Standard functions for writing and reading from persistent streams.
static void Init();
Standard Init function used to initialize the interfaces.
Protected members:
inline virtual IBPtr clone() const;
inline virtual IBPtr fullclone() const;
Standard clone methods.
inline virtual void doupdate() throw(UpdateException);
inline virtual void doinit() throw(InitException);
inline virtual void dofinish();
Standard Interfaced virtual functions.
inline virtual void rebind(const TranslationMap & trans)
throw(RebindException);
Change all pointers to Interfaced objects to corresponding clones.
inline virtual IVector getReferences();
Return pointers to all Interfaced objects refered to by this.
Private members:
static ClassDescription<PartonSplitter> initPartonSplitter;
Describe a concrete class with persistent data.
PartonSplitter & operator=(const PartonSplitter &);
Private and non-existent assignment operator.
void splitTimeLikeGluon(tcPPtr ptrGluon, // input
PPtr & ptrQ, PPtr & ptrQbar); // output
Given in input a pointer to a time-like gluon, it forces
a nonperturbative quark - anti-quark splitting, returning
the pointers to these produced two new particles.
If something wrong happens, it will returns null pointers.
void splitSpaceLikeGluon(tcPPtr ptrGluon, // input
PPtr & ptrQ, PPtr & ptrQbar); // output
Given in input a pointer to a space-like gluon, it forces
a nonperturbative quark - anti-quark splitting, returning
the pointers to these produced two new particles.
If something wrong happens, it will returns null pointers.
void splitSpaceLikeSeaQuark(tcPPtr ptrSeaQ0, // input
PPtr & ptrGluon, PPtr & ptrSeaQ1); // output
Given in input a pointer to a space-like sea quark, it forces
a nonperturbative soft gluon emission, returning the pointers
to the emitted gluon and the sea quark after the emission.
If something wrong happens, it will return null pointers.
void debuggingInfo(const tPVector & tagged, const set<tPPtr> & newPartons);
Print full information for debugging.
GlobParamPtr _globalParameters;
DEFINED MACROS
INCLUDED FILES
CluHadConfig.h
Pythia7/Handlers/HandlerBase.h
Herwig++/Config/GlobalParameters.h