Herwig 7.3.0
|
This class provides the concrete implementation of the CMW enhanced expressions for the splitting function for \(1\to 11\). More...
#include <CMWOneOneOneSplitFn.h>
Public Member Functions | |
virtual double | P (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const |
Methods to return the splitting function. | |
virtual double | ratioP (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const |
Very similar to HalfHalfOneSplitFn. | |
double | Kg (Energy2) const |
Return the correction term from: Nucl.Phys. | |
Public Member Functions inherited from Herwig::OneOneOneSplitFn | |
virtual bool | accept (const IdList &ids) const |
Concrete implementation of the method to determine whether this splitting function can be used for a given set of particles. | |
virtual double | P (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const |
Methods to return the splitting function. | |
virtual double | overestimateP (const double z, const IdList &ids) const |
The concrete implementation of the overestimate of the splitting function, \(P_{\rm over}\). | |
virtual double | ratioP (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const |
The concrete implementation of the the ratio of the splitting function to the overestimate, i.e. | |
virtual double | integOverP (const double z, const IdList &ids, unsigned int PDFfactor=0) const |
The concrete implementation of the indefinite integral of the overestimated splitting function, \(P_{\rm over}\). | |
virtual double | invIntegOverP (const double r, const IdList &ids, unsigned int PDFfactor=0) const |
The concrete implementation of the inverse of the indefinite integral. | |
virtual vector< pair< int, Complex > > | generatePhiForward (const double z, const Energy2 t, const IdList &ids, const RhoDMatrix &) |
Method to calculate the azimuthal angle for forward evolution. | |
virtual vector< pair< int, Complex > > | generatePhiBackward (const double z, const Energy2 t, const IdList &ids, const RhoDMatrix &) |
Method to calculate the azimuthal angle for backward evolution. | |
virtual DecayMEPtr | matrixElement (const double z, const Energy2 t, const IdList &ids, const double phi, bool timeLike) |
Calculate the matrix element for the splitting. | |
Public Member Functions inherited from Herwig::SplittingFunction | |
SplittingFunction () | |
The default constructor. | |
ShowerInteraction | interactionType () const |
Methods to return the interaction type and order for the splitting function. | |
ColourStructure | colourStructure () const |
Return the colour structure. | |
double | colourFactor (const IdList &ids) const |
Return the colour factor. | |
virtual bool | accept (const IdList &ids) const =0 |
Purely virtual method which should determine whether this splitting function can be used for a given set of particles. | |
virtual bool | checkColours (const IdList &ids) const |
Method to check the colours are correct. | |
virtual double | P (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const =0 |
Methods to return the splitting function. | |
virtual double | overestimateP (const double z, const IdList &ids) const =0 |
Purely virtual method which should return an overestimate of the splitting function, \(P_{\rm over}\) such that the result \(P_{\rm over}\geq P\). | |
virtual double | ratioP (const double z, const Energy2 t, const IdList &ids, const bool mass, const RhoDMatrix &rho) const =0 |
Purely virtual method which should return the ratio of the splitting function to the overestimate, i.e. | |
virtual double | integOverP (const double z, const IdList &ids, unsigned int PDFfactor=0) const =0 |
Purely virtual method which should return the indefinite integral of the overestimated splitting function, \(P_{\rm over}\). | |
virtual double | invIntegOverP (const double r, const IdList &ids, unsigned int PDFfactor=0) const =0 |
Purely virtual method which should return the inverse of the indefinite integral of the overestimated splitting function, \(P_{\rm over}\) which is used to generate the value of \(z\). | |
virtual void | colourConnection (tShowerParticlePtr parent, tShowerParticlePtr first, tShowerParticlePtr second, ShowerPartnerType partnerType, const bool back) const |
Purely virtual method which should make the proper colour connection between the emitting parent and the branching products. | |
virtual vector< pair< int, Complex > > | generatePhiForward (const double z, const Energy2 t, const IdList &ids, const RhoDMatrix &)=0 |
Method to calculate the azimuthal angle for forward evolution. | |
virtual vector< pair< int, Complex > > | generatePhiBackward (const double z, const Energy2 t, const IdList &ids, const RhoDMatrix &)=0 |
Method to calculate the azimuthal angle for backward evolution. | |
virtual DecayMEPtr | matrixElement (const double z, const Energy2 t, const IdList &ids, const double phi, bool timeLike)=0 |
Calculate the matrix element for the splitting. | |
bool | angularOrdered () const |
Whether or not the interaction is angular ordered. | |
bool | pTScale () const |
Scale choice. | |
void | evaluateFinalStateScales (ShowerPartnerType type, Energy scale, double z, tShowerParticlePtr parent, tShowerParticlePtr first, tShowerParticlePtr second) |
Functions to state scales after branching happens. | |
void | evaluateInitialStateScales (ShowerPartnerType type, Energy scale, double z, tShowerParticlePtr parent, tShowerParticlePtr first, tShowerParticlePtr second) |
Sort out scales for initial-state emission. | |
void | evaluateDecayScales (ShowerPartnerType type, Energy scale, double z, tShowerParticlePtr parent, tShowerParticlePtr first, tShowerParticlePtr second) |
Sort out scales for decay emission. | |
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 |
Standard Interfaced functions. | |
ShowerAlphaPtr | alpha_ |
bool | isIS_ =false |
virtual void | doinit () |
Initialize this object after the setup phase before saving an EventGenerator to disk. | |
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. | |
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. | |
CMWOneOneOneSplitFn & | operator= (const CMWOneOneOneSplitFn &)=delete |
The assignment operator is private and must never be called. | |
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 Herwig::OneOneOneSplitFn | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Static Public Member Functions inherited from Herwig::SplittingFunction | |
static void | Init () |
The 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 () |
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 Herwig::OneOneOneSplitFn | |
Protected Member Functions inherited from Herwig::SplittingFunction | |
void | colourFactor (double in) |
Set the colour factor. | |
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 provides the concrete implementation of the CMW enhanced expressions for the splitting function for \(1\to 11\).
The kernel uses the same overestimate as the corresponding OneOneOneSplitFn and thus only needs to implement the spitting function and ratio to the overestimate.
TODO: For a more efficient sampling one needs can rewrite the overestimation to contain the alpha_max*Kgmax factors.
Definition at line 38 of file CMWOneOneOneSplitFn.h.
|
inlineprotectedvirtual |
Make a simple clone of this object.
Reimplemented from Herwig::OneOneOneSplitFn.
Definition at line 133 of file CMWOneOneOneSplitFn.h.
|
inlineprotectedvirtual |
Initialize this object after the setup phase before saving an EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from Herwig::SplittingFunction.
Definition at line 112 of file CMWOneOneOneSplitFn.h.
References ThePEG::InterfacedBase::doinit().
|
inlineprotectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from Herwig::OneOneOneSplitFn.
Definition at line 139 of file CMWOneOneOneSplitFn.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.
|
inline |
Return the correction term from: Nucl.Phys.
B349 (1991) 635-654
Definition at line 68 of file CMWOneOneOneSplitFn.h.
References ThePEG::Constants::pi, and ThePEG::sqr().
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
|
virtual |
Methods to return the splitting function.
Very similar to HalfHalfOneSplitFn. Here the kernel only contains the soft part multiplied by the alphas/2pi * Kg from Nucl.Phys. B349 (1991) 635-654
Reimplemented from Herwig::OneOneOneSplitFn.
void Herwig::CMWOneOneOneSplitFn::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::CMWOneOneOneSplitFn::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
virtual |
Very similar to HalfHalfOneSplitFn.
Since we use only the 1/1-z part for overestimating the kernel in the first place we can keep the same overestimation related functions for the CMW kernels.
Reimplemented from Herwig::OneOneOneSplitFn.
|
private |
Definition at line 120 of file CMWOneOneOneSplitFn.h.
|
private |
Definition at line 123 of file CMWOneOneOneSplitFn.h.