Herwig
7.2.1
|
This class is responsible for creating, at the beginning of the Run, all the SplittingFunction objects and the corresponding SudakovFormFactor objects, and then of the generation of splittings (radiation emissions) during the event. More...
#include <SplittingGenerator.h>
Public Member Functions | |
Standard constructors and destructors. | |
SplittingGenerator () | |
The default constructor. | |
Branching | chooseForwardBranching (ShowerParticle &particle, double enhance, ShowerInteraction type) const |
Methods to select the next branching and reconstruct the kinematics. More... | |
Branching | chooseDecayBranching (ShowerParticle &particle, const ShowerParticle::EvolutionScales &maxScales, Energy minmass, double enhance, ShowerInteraction type) const |
Select the next branching of a particles for the initial-state shower in the particle's decay. More... | |
Branching | chooseBackwardBranching (ShowerParticle &particle, PPtr beamparticle, double enhance, Ptr< BeamParticleData >::transient_const_pointer beam, ShowerInteraction type, tcPDFPtr, Energy) const |
Choose a new backward branching for a space-like particle. More... | |
string | addFinalSplitting (string arg) |
Methods to parse the information from the input files to create the branchings. More... | |
string | addInitialSplitting (string arg) |
Add an initial-state splitting. | |
string | deleteFinalSplitting (string arg) |
Add a final-state splitting. | |
string | deleteInitialSplitting (string arg) |
Add an initial-state splitting. | |
const BranchingList & | finalStateBranchings () const |
Access to the splittings. More... | |
const BranchingList & | initialStateBranchings () const |
Access the initial-state branchings. | |
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 () |
The standard Init function used to initialize the interfaces. More... | |
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... | |
Standard Interfaced functions. | |
virtual void | rebind (const TranslationMap &trans) |
Rebind pointer to other Interfaced objects. More... | |
virtual IVector | getReferences () |
Return a vector of all pointers to Interfaced objects used in this object. 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 void | readSetup (istream &is) |
virtual void | doupdate () |
virtual void | doinit () |
virtual void | doinitrun () |
virtual void | dofinish () |
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 | |
void | addToMap (const IdList &ids, const SudakovPtr &sudakov, bool final) |
Add a branching to the map. More... | |
void | deleteFromMap (const IdList &ids, const SudakovPtr &sudakov, bool final) |
Remove a branching to the map. More... | |
void | finalStateBasisVectors (ShowerParticle particle, Lorentz5Momentum &p, Lorentz5Momentum &n) const |
Obtain the reference vectors for a final-state particle. More... | |
string | addSplitting (string in, bool final) |
Add a splitting. More... | |
string | deleteSplitting (string in, bool final) |
Delete a splitting. More... | |
SplittingGenerator & | operator= (const SplittingGenerator &)=delete |
The assignment operator is private and must never be called. More... | |
Private Attributes | |
BranchingList | _fbranchings |
List of the branchings and the appropriate Sudakovs for forward branchings. | |
BranchingList | _bbranchings |
Lists of the branchings and the appropriate Sudakovs for backward branchings. | |
double | _deTuning |
The detuning parameter. | |
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 is responsible for creating, at the beginning of the Run, all the SplittingFunction objects and the corresponding SudakovFormFactor objects, and then of the generation of splittings (radiation emissions) during the event.
Many switches are defined in this class which allowed the user to turn on/off:
These switches are useful mainly for debugging, but eventually can also be used for a "quick and dirty" estimation of systematic errors.
In the future it should be possible to implement in this class
Definition at line 55 of file SplittingGenerator.h.
|
inline |
Methods to parse the information from the input files to create the branchings.
Add a final-state splitting
Definition at line 151 of file SplittingGenerator.h.
|
private |
Add a splitting.
in | string to be parsed |
final | Whether this is an initial- or final-state branching |
|
private |
Add a branching to the map.
ids | PDG coeds of the particles in the branching |
sudakov | The SudakovFormFactor for the branching |
final | Whether this is an initial- or final-state branching |
Branching Herwig::SplittingGenerator::chooseBackwardBranching | ( | ShowerParticle & | particle, |
PPtr | beamparticle, | ||
double | enhance, | ||
Ptr< BeamParticleData >::transient_const_pointer | beam, | ||
ShowerInteraction | type, | ||
tcPDFPtr | , | ||
Energy | |||
) | const |
Choose a new backward branching for a space-like particle.
The method returns:
In the case no branching has been generated, both the returned pointers are null ( ShoKinPtr() , tSudakovFFPtr() ).
particle | The particle to be evolved |
enhance | The factor by which to ehnace the emission of radiation |
beamparticle | The beam particle |
beam | The BeamParticleData object |
type | The type of interaction to generate |
Branching Herwig::SplittingGenerator::chooseDecayBranching | ( | ShowerParticle & | particle, |
const ShowerParticle::EvolutionScales & | maxScales, | ||
Energy | minmass, | ||
double | enhance, | ||
ShowerInteraction | type | ||
) | const |
Select the next branching of a particles for the initial-state shower in the particle's decay.
particle | The particle being showerwed |
maxscale | The maximum scale |
minmass | Minimum mass of the particle after the branching |
enhance | The factor by which to ehnace the emission of radiation |
type | The type of interaction to generate |
Branching Herwig::SplittingGenerator::chooseForwardBranching | ( | ShowerParticle & | particle, |
double | enhance, | ||
ShowerInteraction | type | ||
) | const |
Methods to select the next branching and reconstruct the kinematics.
Choose a new forward branching for a time-like particle The method returns:
In the case no branching has been generated, both the returned pointers are null ( ShoKinPtr() , tSudakovFFPtr() ).
particle | The particle to be evolved |
enhance | The factor by which to ehnace the emission of radiation |
type | The type of interaction to generate |
|
protectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
|
private |
Remove a branching to the map.
ids | PDG coeds of the particles in the branching |
sudakov | The SudakovFormFactor for the branching |
final | Whether this is an initial- or final-state branching |
|
private |
Delete a splitting.
in | string to be parsed |
final | Whether this is an initial- or final-state branching |
|
private |
Obtain the reference vectors for a final-state particle.
particle | The particle |
p | The p reference vector |
n | The n reference vector |
|
inline |
Access to the splittings.
Access the final-state branchings
Definition at line 176 of file SplittingGenerator.h.
|
protectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
|
protectedvirtual |
Return a vector of all pointers to Interfaced objects used in this object.
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.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::SplittingGenerator::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::SplittingGenerator::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
protectedvirtual |
Rebind pointer to other Interfaced objects.
Called in the setup phase after all objects used in an EventGenerator has been cloned so that the pointers will refer to the cloned objects afterwards.
trans | a TranslationMap relating the original objects to their respective clones. |
RebindException | if no cloned object was found for a given pointer. |
Reimplemented from ThePEG::InterfacedBase.