herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
Herwig::ClusterHadronizationHandler Class Reference

Class that controls the cluster hadronization algorithm. More...

#include <ClusterHadronizationHandler.h>

Inheritance diagram for Herwig::ClusterHadronizationHandler:

Public Member Functions

virtual void handle (EventHandler &ch, const tPVector &tagged, const Hint &hint)
 The main method which manages the all cluster hadronization. More...
 
Energy2 minVirtuality2 () const
 It returns minimum virtuality^2 of partons to use in calculating distances. More...
 
Length maxDisplacement () const
 It returns the maximum displacement that is allowed for a particle (used to determine the position of a cluster with two components).
 
bool isSoftUnderlyingEventON () const
 It returns true/false according if the soft underlying model is switched on/off.
 
Functions used by the persistent I/O system.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently. More...
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently. More...
 
- Public Member Functions inherited from ThePEG::StepHandler
tEHPtr eventHandler () const
 
void eventHandler (tEHPtr)
 
tStepPtr newStep ()
 
tStepPtr currentStep ()
 
tEHPtr eventHandler () const
 
void eventHandler (tEHPtr)
 
tStepPtr newStep ()
 
tStepPtr currentStep ()
 
- Public Member Functions inherited from HandlerBaseT< UseRandom >
double rnd () const
 
double rnd (double xu) const
 
double rnd (double xl, double xu) const
 
bool rndbool () const
 
bool rndbool (double p) const
 
bool rndbool (double p1, double p2) const
 
int rndsign (double p1, double p2, double p3) const
 
int rnd2 (double p0, double p1) const
 
int rnd3 (double p0, double p1, double p2) const
 
int rnd4 (double p0, double p1, double p2, double p3) const
 
long irnd (long xu=2) const
 
long irnd (long xl, long xu) const
 
const StandardModelBase & SM () const
 
tSMPtr standardModel () const
 
- Public Member Functions inherited from ThePEG::Interfaced
virtual bool defaultInit ()
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
- Public Member Functions inherited from ThePEG::InterfacedBase
string fullName () const
 
string name () const
 
string path () const
 
string comment () const
 
void setup (istream &is)
 
virtual void debugme () const
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
- Public Member Functions inherited from ThePEG::Base
void debug () const
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 
- Public Member Functions inherited from ThePEG::Named
 Named (const string &newName=string())
 
 Named (const Named &)=default
 
const string & name () const
 
bool operator== (const Named &other) const
 
bool operator< (const Named &other) const
 

Static Public Member Functions

static const ClusterHadronizationHandlercurrentHandler ()
 pointer to "this", the current HadronizationHandler.
 
static void Init ()
 Standard Init function used to initialize the interfaces.
 
- Static Public Member Functions inherited from ThePEG::HadronizationHandler
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::StepHandler
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::HandlerBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Interfaced
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::InterfacedBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 

Protected Member Functions

Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object. More...
 
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane. More...
 
- Protected Member Functions inherited from ThePEG::StepHandler
void createNewStep ()
 
- Protected Member Functions inherited from ThePEG::Interfaced
void reporeg (IBPtr object, string name) const
 
bool setDefaultReference (PtrT &ptr, string classname, string objectname)
 
 Interfaced (const string &newName)
 
 Interfaced (const Interfaced &i)
 
void setGenerator (tEGPtr generator)
 
- Protected Member Functions inherited from ThePEG::InterfacedBase
 InterfacedBase (string newName)
 
 InterfacedBase (const InterfacedBase &i)
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (const Named &other)
 
const string & name (const string &newName)
 

Private Member Functions

ClusterHadronizationHandleroperator= (const ClusterHadronizationHandler &)=delete
 Private and non-existent assignment operator.
 
void _setChildren (const ClusterVector &clusters) const
 Tag the constituents of the clusters as their parents.
 

Private Attributes

PartonSplitterPtr _partonSplitter
 This is a pointer to a Herwig::PartonSplitter object.
 
ClusterFinderPtr _clusterFinder
 This is a pointer to a Herwig::ClusterFinder object.
 
ColourReconnectorPtr _colourReconnector
 This is a pointer to a Herwig::ColourReconnector object.
 
ClusterFissionerPtr _clusterFissioner
 This is a pointer to a Herwig::ClusterFissioner object.
 
LightClusterDecayerPtr _lightClusterDecayer
 This is a pointer to a Herwig::LightClusterDecayer object.
 
ClusterDecayerPtr _clusterDecayer
 This is a pointer to a Herwig::ClusterDecayer object.
 
Energy2 _minVirtuality2 = 0.1_GeV2
 The minimum virtuality^2 of partons to use in calculating distances.
 
Length _maxDisplacement = 1.0e-10_mm
 The maximum displacement that is allowed for a particle (used to determine the position of a cluster with two components).
 
StepHdlPtr _underlyingEventHandler
 The pointer to the Underlying Event handler.
 
bool _reduceToTwoComponents = true
 How to handle baryon-number clusters.
 

Static Private Attributes

static ClusterHadronizationHandlercurrentHandler_
 pointer to "this", the current HadronizationHandler.
 

Additional Inherited Members

- Public Types inherited from ThePEG::InterfacedBase
enum  InitState
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 
- Public Attributes inherited from ThePEG::InterfacedBase
 initializing
 
 uninitialized
 
 initialized
 
 runready
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 
- Static Protected Member Functions inherited from ThePEG::Interfaced
static void registerRepository (IBPtr)
 
static void registerRepository (IBPtr, string newName)
 

Detailed Description

Class that controls the cluster hadronization algorithm.

Author
Philip Stephens // cerr << *ch.currentEvent() << '
'; cerr << finalHadrons.size() << '
';

cerr << "Finished hadronizing \n";

Author
Alberto Ribon

This class is the main driver of the cluster hadronization: it is responsible for the proper handling of all other specific collaborating classes PartonSplitter, ClusterFinder, ColourReconnector, ClusterFissioner, LightClusterDecayer, ClusterDecayer; and for the storing of the produced particles in the Event record.

See also
PartonSplitter
ClusterFinder
ColourReconnector
ClusterFissioner
LightClusterDecayer
ClusterDecayer
Cluster
The interfaces defined for ClusterHadronizationHandler.

Definition at line 51 of file ClusterHadronizationHandler.h.

Member Function Documentation

◆ clone()

virtual IBPtr Herwig::ClusterHadronizationHandler::clone ( ) const
protectedvirtual

Make a simple clone of this object.

Returns
a pointer to the new object.

Implements ThePEG::InterfacedBase.

◆ fullclone()

virtual IBPtr Herwig::ClusterHadronizationHandler::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.

◆ handle()

virtual void Herwig::ClusterHadronizationHandler::handle ( EventHandler ch,
const tPVector tagged,
const Hint hint 
)
virtual

The main method which manages the all cluster hadronization.

This routine directs "traffic". It determines which function is called and on which particles/clusters. This function also handles the situation of vetos on the hadronization.

Implements ThePEG::StepHandler.

◆ minVirtuality2()

Energy2 Herwig::ClusterHadronizationHandler::minVirtuality2 ( ) const
inline

It returns minimum virtuality^2 of partons to use in calculating distances.

It is used both in the Showering and Hadronization.

Definition at line 69 of file ClusterHadronizationHandler.h.

◆ persistentInput()

void Herwig::ClusterHadronizationHandler::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters
isthe persistent input stream read from.
versionthe version number of the object when written.

◆ persistentOutput()

void Herwig::ClusterHadronizationHandler::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

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