Herwig
7.2.1
|
This class performs the decay of light clusters into a single hadron. More...
#include <LightClusterDecayer.h>
Public Member Functions | |
bool | decay (ClusterVector &clusters, tPVector &finalhadrons) |
This method does the decay of light hadron in one hadron. More... | |
Standard constructors and destructors. | |
LightClusterDecayer () | |
Default constructor. | |
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::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 void | Init () |
Standard Init function used to initialize the interfaces. | |
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::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 &) | |
ReferenceCounted & | operator= (const 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) |
Private Member Functions | |
LightClusterDecayer & | operator= (const LightClusterDecayer &)=delete |
Private and non-existent assignment operator. | |
bool | reshuffling (const tcPDPtr, tClusterPtr, tClusterPtr, tClusterVector &, tPVector &finalhadrons) |
This (private) method, called by decay(), takes care of the kinematical reshuffling necessary for energy-momentum conservation. | |
bool | partonicReshuffle (const tcPDPtr hadron, const PPtr cluster, tPVector &finalhadrons) |
This (private) method, called by decay(), performs reshuffling in the special case of a semileptonic partonic b/c decay. More... | |
Private Attributes | |
Ptr< HadronSelector >::pointer | _hadronSelector |
A pointer to a Herwig::HadronSelector object used for producing hadrons. | |
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) |
This class performs the decay of light clusters into a single hadron.
This is the class that performs the decay of light clusters into only one hadron. The major difficulty is that a kinematical reshuffling is necessary, between the cluster under consideration and its "neighbouring" clusters, to conserve energy-momentum in one-body decay. Notice that, differently from what happens in Fortran Herwig, light (that is below the threshold for the production of the lightest pair of hadrons with the proper flavours) fission products, produced by the fission of heavy clusters in ClusterFissioner have been already "decayed" into single hadron (the lightest one with proper flavour) by the same latter class, without require any reshuffling. Therefore the light clusters that are treated in this LightClusterDecayer class are produced directly (originally) by the ClusterFinder.
Notice:
Definition at line 53 of file LightClusterDecayer.h.
|
protectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
bool Herwig::LightClusterDecayer::decay | ( | ClusterVector & | clusters, |
tPVector & | finalhadrons | ||
) |
This method does the decay of light hadron in one hadron.
This method requires a kinematical reshuffling for energy-momentum conservation. This is done explicitly by the (private) method reshuffling().
|
protectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
|
private |
This (private) method, called by decay(), performs reshuffling in the special case of a semileptonic partonic b/c decay.
hadron | The hadron to be produced |
cluster | The cluster to be reshuffled |
finalhadrons | The vector of outgoing hadrons |
void Herwig::LightClusterDecayer::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::LightClusterDecayer::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |