Herwig 7.3.0
|
This class splits the gluons from the end of the shower. More...
#include <PartonSplitter.h>
Public Member Functions | |
PartonSplitter () | |
Default constructor. | |
void | split (PVector &tagged) |
This method does the nonperturbative splitting of: time-like gluons. | |
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 |
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. | |
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) |
Standard Interfaced functions. | |
double | _splitPwtUquark |
Different variables for the weight for splitting into various light quark species. | |
double | _splitPwtDquark |
double | _splitPwtSquark |
Selector< PDPtr, double > | _quarkSelector |
The selector to pick the type of quark. | |
Length | _gluonDistance |
c tau for gluon decays | |
int | _splitGluon |
Flag used to determine between normal gluon splitting and alternative gluon splitting. | |
vector< int > | _colSingletSize |
Vector that stores the index in the event record of the anti-triplet of the colour-singlets, or of a colourless particle. | |
vector< Energy2 > | _colSingletm2 |
Vector that stores the masses of the colour-singlets or of a colourless particle. | |
int | _enhanceSProb |
Option to choose which functional form to use for strangeness production. | |
Energy | _m0 |
Characteristic mass scale for strangeness enhancement. | |
int | _massMeasure |
Flag that switches between mass measures used in strangeness enhancement: cluster mass, or the lambda measure - ( m_{clu}^2 - (m_q + m_{qbar})^2 ) | |
const double | _maxScale = 20. |
Constant variable that stops the scale in strangeness enhancement from becoming too large. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving an EventGenerator to disk. | |
PartonSplitter & | operator= (const PartonSplitter &)=delete |
Private and non-existent assignment operator. | |
void | splitTimeLikeGluon (tcPPtr gluon, PPtr &quark, PPtr &anti) |
Non-perturbatively split a time-like gluon, if something goes wrong null pointers are returned. | |
void | massSplitTimeLikeGluon (tcPPtr gluon, PPtr &quark, PPtr &anti, size_t i) |
Non-perturbatively split a time-like gluon using a mass-based strangeness enhancement, if something goes wrong null pointers are returned. | |
void | colourSorted (PVector &tagged) |
Colour-sort the event into grouped colour-singlets. | |
double | enhanceStrange (size_t i) |
Method to calculate the probability for producing strange quarks. | |
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. | |
static void | Init () |
The 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 |
Static Protected Member Functions inherited from ThePEG::Interfaced | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
This class splits the gluons from the end of the shower.
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.
the quarks are attributed with different weights for the splitting by default only the splitting in u and d quarks is allowed the option "set /Herwig/Hadronization/PartonSplitter:Split 1" allows for additional splitting into s quarks based on some weight in order for that to work the mass of the strange quark has to be changed from the default value s.t. m_g > 2m_s
Definition at line 44 of file PartonSplitter.h.
|
inline |
Default constructor.
Definition at line 51 of file PartonSplitter.h.
|
protectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
|
private |
Colour-sort the event into grouped colour-singlets.
Convention: triplet - gluons - antitriplet, repeat for all other colour-singlets or colourless particles.
|
protectedvirtual |
Initialize this object after the setup phase before saving an EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from ThePEG::InterfacedBase.
|
protectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
|
static |
The standard Init function used to initialize the interfaces.
Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.
|
private |
Non-perturbatively split a time-like gluon using a mass-based strangeness enhancement, if something goes wrong null pointers are returned.
gluon | The gluon to be split |
quark | The quark produced in the splitting |
anti | The antiquark produced in the splitting |
gluon's | index in the colour-sorted Particle vector |
void Herwig::PartonSplitter::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::PartonSplitter::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
void Herwig::PartonSplitter::split | ( | PVector & | tagged | ) |
This method does the nonperturbative splitting of: time-like gluons.
At the end of the shower the gluons should be on a "physical" mass shell and should therefore be time-like.
tagged | The tagged particles to be split |
Non-perturbatively split a time-like gluon, if something goes wrong null pointers are returned.
gluon | The gluon to be split |
quark | The quark produced in the splitting |
anti | The antiquark produced in the splitting |
|
private |
Vector that stores the masses of the colour-singlets or of a colourless particle.
Definition at line 203 of file PartonSplitter.h.
|
private |
Vector that stores the index in the event record of the anti-triplet of the colour-singlets, or of a colourless particle.
Definition at line 197 of file PartonSplitter.h.
|
private |
Option to choose which functional form to use for strangeness production.
Definition at line 209 of file PartonSplitter.h.
|
private |
c tau for gluon decays
Definition at line 186 of file PartonSplitter.h.
|
private |
Characteristic mass scale for strangeness enhancement.
Definition at line 214 of file PartonSplitter.h.
|
private |
Flag that switches between mass measures used in strangeness enhancement: cluster mass, or the lambda measure - ( m_{clu}^2 - (m_q + m_{qbar})^2 )
Definition at line 220 of file PartonSplitter.h.
|
private |
Constant variable that stops the scale in strangeness enhancement from becoming too large.
Definition at line 226 of file PartonSplitter.h.
The selector to pick the type of quark.
Definition at line 181 of file PartonSplitter.h.
|
private |
Flag used to determine between normal gluon splitting and alternative gluon splitting.
Definition at line 191 of file PartonSplitter.h.
|
private |
Definition at line 175 of file PartonSplitter.h.
|
private |
Definition at line 176 of file PartonSplitter.h.
|
private |
Different variables for the weight for splitting into various light quark species.
Definition at line 174 of file PartonSplitter.h.