Herwig 7.3.0
|
This class forms clusters from the partons produced in the Shower. More...
#include <ClusterFinder.h>
Public Member Functions | |
Functions used by the persistent I/O system. | |
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. | |
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 |
Public Member Functions inherited from ThePEG::InterfacedBase | |
string | fullName () const |
string | name () const |
string | path () const |
string | comment () const |
void | setup (istream &is) |
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 |
virtual IBPtr | fullclone () const |
void | persistentOutput (PersistentOStream &os) const |
void | persistentInput (PersistentIStream &is, int version) |
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 |
virtual IBPtr | fullclone () const |
Public Member Functions inherited from ThePEG::Base | |
void | debug () const |
virtual void | debugme () 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 |
Clone Methods. | |
unsigned int | heavyDiquarks_ |
Treatment of diquarks contain heavy quarks in baryon-number violating clusters. | |
unsigned int | diQuarkSelection_ |
Option for the selection of which quarks to make into a diquark. | |
bool | diQuarkOnShell_ |
Force diquarks to be on-shell. | |
HadronSelectorPtr | hadronSelector_ |
A pointer to a Herwig::HadronSelector object for generating hadrons. | |
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. | |
ClusterFinder & | operator= (const ClusterFinder &)=delete |
Private and non-existent assignment operator. | |
Standard constructors and destructors. | |
ClusterFinder () | |
Default constructor. | |
ClusterVector | formClusters (const PVector &partons) |
This routine forms the clusters of the event. | |
void | reduceToTwoComponents (ClusterVector &) |
Reduces three component clusters into two components. | |
static void | Init () |
Standard Init function used to initialize the interfaces. | |
Additional Inherited Members | |
Public Types inherited from ThePEG::InterfacedBase | |
enum | InitState |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
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 () |
Public Attributes inherited from ThePEG::InterfacedBase | |
initializing | |
uninitialized | |
initialized | |
runready | |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
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 | |
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 IBPtr | clone () const=0 |
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 &) |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Protected Member Functions inherited from ThePEG::Named | |
const Named & | operator= (const Named &other) |
const string & | name (const string &newName) |
Static Protected Member Functions inherited from ThePEG::Interfaced | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
This class forms clusters from the partons produced in the Shower.
This class scans through the particles in the event and produces a collection of clusters, defined as a colour-singlet combinations of colour-connected particles. There are no assumptions about the type (i.e. quark or diquark) or number of the component particles of the cluster; however, most of the time clusters are formed by quark-antiquark pairs. In special situations, such as baryon-violating processes in R-nonconserved Susy, three quarks (or three antiquarks) could form a cluster. Because at the moment we don't know how to handle 3-component clusters (i.e. how to fission heavy ones, or how to decay clusters), we provide also a separate method, reduceToTwoComponents, which does the job of redefining these 3-component clusters as "normal" 2-component ones, simply by randomly considering two (anti-) quarks as a (anti-) diquark. Notice that if in the future the method reduceToTwoComponents is modified or even eliminated, the main method for finding clusters, formClusters, will not need any change.
Definition at line 46 of file ClusterFinder.h.
|
inline |
Default constructor.
Definition at line 55 of file ClusterFinder.h.
|
protectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
ClusterVector Herwig::ClusterFinder::formClusters | ( | const PVector & | partons | ) |
This routine forms the clusters of the event.
Form clusters starting from the list of partons given. It also checks if the cluster is a beam cluster, that is if at least one of its components is a beam remnant.
|
protectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
void Herwig::ClusterFinder::persistentInput | ( | PersistentIStream & | is, |
int | version | ||
) |
Function used to read in object persistently.
is | the persistent input stream read from. |
version | the version number of the object when written. |
void Herwig::ClusterFinder::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
void Herwig::ClusterFinder::reduceToTwoComponents | ( | ClusterVector & | ) |
Reduces three component clusters into two components.
For the eventual clusters that have three components (quark, quark, quark) or (antiquark, antiquark, antiquark), it redefines them as "normal" clusters with two components: (quark,diquark) or (antiquark,antidiquark), by a random drawing. This could be eliminated or changed in the future.
|
private |
Force diquarks to be on-shell.
Definition at line 145 of file ClusterFinder.h.
|
private |
Option for the selection of which quarks to make into a diquark.
Definition at line 140 of file ClusterFinder.h.
|
private |
A pointer to a Herwig::HadronSelector object for generating hadrons.
Definition at line 150 of file ClusterFinder.h.
|
private |
Treatment of diquarks contain heavy quarks in baryon-number violating clusters.
Definition at line 135 of file ClusterFinder.h.