Herwig
7.2.1
|
This class is responsible of two related tasks: More...
#include <PartnerFinder.h>
Public Member Functions | |
PartnerFinder () | |
The default constructor. | |
virtual void | setInitialEvolutionScales (const ShowerParticleVector &particles, const bool isDecayCase, ShowerInteraction, const bool setPartners=true) |
Given in input a collection of particles (ShowerParticle objects), each of these methods set the initial evolution scales of those particles, between the ones given in input, that do not have yet their evolution scale set. More... | |
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... | |
pair< Energy, Energy > | calculateInitialEvolutionScales (const ShowerPPair &, const bool isDecayCase) |
Given a pair of particles, supposedly partners w.r.t. More... | |
pair< Energy, Energy > | calculateFinalFinalScales (const Lorentz5Momentum &p1, const Lorentz5Momentum &p2) |
Calculate the initial evolution scales given momenta. | |
pair< Energy, Energy > | calculateInitialInitialScales (const Lorentz5Momentum &p1, const Lorentz5Momentum &p2) |
Calculate the initial evolution scales given momenta. | |
pair< Energy, Energy > | calculateInitialFinalScales (const Lorentz5Momentum &pb, const Lorentz5Momentum &pc, const bool isDecayCase) |
Calculate the initial evolution scales given momenta. | |
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 | |
vector< pair< ShowerPartnerType, tShowerParticlePtr > > | findQCDPartners (tShowerParticlePtr particle, const ShowerParticleVector &particles) |
Find the QCD partners. More... | |
vector< pair< double, tShowerParticlePtr > > | findQEDPartners (tShowerParticlePtr particle, const ShowerParticleVector &particles, const bool isDecayCase) |
Find the QED partners. More... | |
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... | |
virtual void | setInitialQCDEvolutionScales (const ShowerParticleVector &particles, const bool isDecayCase, const bool setPartners=true) |
Members to set the scales for different interactions. More... | |
virtual void | setInitialQEDEvolutionScales (const ShowerParticleVector &particles, const bool isDecayCase, const bool setPartners=true) |
Set initial scales for a QED interaction. | |
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 | |
PartnerFinder & | operator= (const PartnerFinder &)=delete |
The assignment operator is private and must never be called. More... | |
Private Attributes | |
int | partnerMethod_ |
Method for choosing colour partner. | |
int | QEDPartner_ |
Choice for the QED radiation partner. | |
int | scaleChoice_ |
Choice of the scale. | |
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 of two related tasks:
In general the finding of the partners is performed by this class but the calculation of the initial evolution scales should be implemented for different shower evolution models in classes inheriting from this one. Notice that a given particle has, in general, a different partner for each different interaction; however, given a partner, its initial evolution scale, Q, is purely a kinematical relationship between the pair, without dependence on the dynamics (i.e. type of interaction).
Definition at line 45 of file PartnerFinder.h.
pair<Energy,Energy> Herwig::PartnerFinder::calculateInitialEvolutionScales | ( | const ShowerPPair & | , |
const bool | isDecayCase | ||
) |
Given a pair of particles, supposedly partners w.r.t.
an interaction, this method returns their initial evolution scales as a pair. If something wrong happens, it returns the null (ZERO,ZERO) pair. This method is used by the above setXXXInitialEvolutionScales methods. These methods must be overiden in inheriting classes General method to calculate the initial evolution scales
|
inlineprotectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
Definition at line 90 of file PartnerFinder.h.
|
protected |
Find the QCD partners.
particle | The particle to find the partners for |
particles | The full set of particles to search |
|
protected |
Find the QED partners.
particle | The particle to find the partners for |
particles | The full set of particles to search |
|
inlineprotectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
Definition at line 96 of file PartnerFinder.h.
|
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::PartnerFinder::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::PartnerFinder::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
virtual |
Given in input a collection of particles (ShowerParticle objects), each of these methods set the initial evolution scales of those particles, between the ones given in input, that do not have yet their evolution scale set.
The input collection of particles can be either the full collection of showering particles (kept in the main class ShowerHandler, in the case isDecayCase is false, or simply, in the case isDecayCase is true, the decaying particle and its decay products. The methods returns true, unless something wrong (inconsistencies, or undefined values) happens.
These methods are virtual but in most cases inheriting classes should not need to overide them as they simply find the relevant partner and call one of the calculateScale members to calculate the scale. Set the initial scales
particles | The particles to be considered |
isDecayCase | Whether or not this is a decay |
setPartners | Whether to set the colour partners or just the scales |
|
protectedvirtual |
Members to set the scales for different interactions.
Set initial scales for a QCD interaction