Herwig 7.3.0
|
TildeKinematics is the base class for the 'tilde' kinematics being used for subtraction terms in the formalism of Catani and Seymour. More...
#include <TildeKinematics.h>
Public Member Functions | |
Ptr< TildeKinematics >::ptr | cloneMe () const |
Clone this object. | |
Access to kinematic quantities. | |
const Lorentz5Momentum & | realEmitterMomentum () const |
Return the momentum of the emitter in the real emission process. | |
const Lorentz5Momentum & | realEmissionMomentum () const |
Return the momentum of the emission in the real emission process. | |
const Lorentz5Momentum & | realSpectatorMomentum () const |
Return the momentum of the spectator in the real emission process. | |
const Lorentz5Momentum & | bornEmitterMomentum () const |
Return the momentum of the emitter in the underlying Born process. | |
const Lorentz5Momentum & | bornSpectatorMomentum () const |
Return the momentum of the spectator in the underlying Born process. | |
const vector< double > & | subtractionParameters () const |
Return the vector of dimensionless variables calculated. | |
virtual bool | doesTransform () const |
Return true, if this TildeKinematics object needs to transform all other particles in the process except the emitter and spectator. | |
virtual Lorentz5Momentum | transform (const Lorentz5Momentum &p) const |
If this TildeKinematics object needs to transform all other particles in the process except the emitter and spectator, return the transformed momentum. | |
virtual void | getShowerVariables () const |
If this tilde kinematics is implementing a mapping different from the baseline dipole mapping, determine the relevant shower parameters and check for phase space boundaries. | |
virtual double | jacobianRatio () const |
If this tilde kinematics is implementing a mapping different from the baseline dipole mapping, return the ratio of phase space factorization Jacobians for this and the nominal dipole mapping. | |
Public Member Functions inherited from ThePEG::HandlerBaseT< UseRandom > | |
double | rnd () const |
double | rnd (double xu) const |
double | rnd (double xl, double xu) const |
bool | rndbool () const |
bool | rndbool (double p) const |
bool | rndbool (double p1, double p2) const |
int | rndsign (double p1, double p2, double p3) const |
int | rnd2 (double p0, double p1) const |
int | rnd3 (double p0, double p1, double p2) const |
int | rnd4 (double p0, double p1, double p2, double p3) const |
long | irnd (long xu=2) const |
long | irnd (long xl, long xu) const |
const StandardModelBase & | SM () const |
tSMPtr | standardModel () const |
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. | |
Ptr< SubtractionDipole >::tptr | theDipole |
The last dipole this TildeKinematics has been selected for. | |
tcStdXCombPtr | theRealXComb |
The XComb object describing the real emission process. | |
tcStdXCombPtr | theBornXComb |
The XComb object describing the underlying Born process. | |
Lorentz5Momentum | theBornEmitterMomentum |
The momentum of the emitter in the underlying Born process. | |
Lorentz5Momentum | theBornSpectatorMomentum |
The momentum of the spectator in the underlying Born process. | |
virtual void | rebind (const TranslationMap &trans) |
Rebind pointer to other Interfaced objects. | |
virtual IVector | getReferences () |
Return a vector of all pointers to Interfaced objects used in this object. | |
TildeKinematics & | operator= (const TildeKinematics &)=delete |
The assignment operator is private and must never be called. | |
Access to process data. | |
void | prepare (tcStdXCombPtr newRealXComb, tcStdXCombPtr newBornXComb) |
Prepare given a dipole, and XCombs describing the real emission and underlying Born processes, respectively. | |
void | dipole (Ptr< SubtractionDipole >::tptr dip) |
Set the current dipole. | |
Ptr< SubtractionDipole >::tptr | dipole () |
Return the current dipole. | |
Ptr< SubtractionDipole >::tcptr | dipole () const |
Return the current dipole. | |
virtual bool | doMap ()=0 |
Perform the mapping to the tilde kinematics for the last selected process and store all dimensionless variables in the subtractionParameters() vector. | |
virtual Energy | lastPt () const =0 |
Return the pt associated to the last merged splitting. | |
virtual Energy | lastPt (Lorentz5Momentum, Lorentz5Momentum, Lorentz5Momentum) const =0 |
Return the pt associated to emitter emission and sppectator momentum. | |
virtual pair< double, double > | zBounds (Energy pt, Energy hardPt) const =0 |
Given a pt and a hard pt, return the boundaries on z;. | |
virtual double | lastZ () const =0 |
Return the momentum fraction associated to the last splitting. | |
virtual Energy | lastScale () const |
Return the relevant dipole scale. | |
virtual bool | aboveAlpha () const |
cPDPtr | realEmitterData () const |
Return the particle type of the emitter in the real emission process. | |
cPDPtr | realEmissionData () const |
Return the particle type of the emission in the real emission process. | |
cPDPtr | realSpectatorData () const |
Return the particle type of the spectator in the real emission process. | |
cPDPtr | bornEmitterData () const |
Return the particle type of the emitter in the underlying Born process. | |
cPDPtr | bornSpectatorData () const |
Return the particle type of the spectator in the underlying Born process. | |
double | emitterX () const |
Return the momentum fraction of the emitter. | |
double | spectatorX () const |
Return the momentum fraction of the spectator. | |
Lorentz5Momentum & | bornEmitterMomentum () |
Access the momentum of the emitter in the underlying Born process. | |
Lorentz5Momentum & | bornSpectatorMomentum () |
Access the momentum of the spectator in the underlying Born process. | |
vector< double > & | subtractionParameters () |
Access the vector of dimensionless variables calculated. | |
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::HandlerBase | |
static void | Init () |
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 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) |
TildeKinematics is the base class for the 'tilde' kinematics being used for subtraction terms in the formalism of Catani and Seymour.
Definition at line 33 of file TildeKinematics.h.
|
inlinevirtual |
Definition at line 178 of file TildeKinematics.h.
|
inline |
Return the particle type of the emitter in the underlying Born process.
Definition at line 217 of file TildeKinematics.h.
References theBornXComb, and theDipole.
|
inlineprotected |
Access the momentum of the emitter in the underlying Born process.
Definition at line 240 of file TildeKinematics.h.
References theBornEmitterMomentum.
|
inline |
Return the momentum of the emitter in the underlying Born process.
Definition at line 70 of file TildeKinematics.h.
References theBornEmitterMomentum.
|
inline |
Return the particle type of the spectator in the underlying Born process.
Definition at line 227 of file TildeKinematics.h.
References theBornXComb, and theDipole.
|
inlineprotected |
Access the momentum of the spectator in the underlying Born process.
Definition at line 245 of file TildeKinematics.h.
References theBornSpectatorMomentum.
|
inline |
Return the momentum of the spectator in the underlying Born process.
Definition at line 75 of file TildeKinematics.h.
References theBornSpectatorMomentum.
|
inline |
Clone this object.
Definition at line 40 of file TildeKinematics.h.
References ThePEG::InterfacedBase::clone().
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Return true, if this TildeKinematics object needs to transform all other particles in the process except the emitter and spectator.
Reimplemented in Herwig::IILightTildeKinematics.
Definition at line 86 of file TildeKinematics.h.
|
pure virtual |
Perform the mapping to the tilde kinematics for the last selected process and store all dimensionless variables in the subtractionParameters() vector.
Return false, if the calculation of the tilde kinematics was impossible for the selected configuration and true on success.
Implemented in Herwig::FFLightTildeKinematics, Herwig::FFMassiveTildeKinematics, Herwig::FILightTildeKinematics, Herwig::FIMassiveTildeKinematics, Herwig::IFLightTildeKinematics, Herwig::IFMassiveTildeKinematics, and Herwig::IILightTildeKinematics.
|
inline |
Return the momentum fraction of the emitter.
Definition at line 256 of file TildeKinematics.h.
References theBornXComb, and theDipole.
|
protectedvirtual |
Return a vector of all pointers to Interfaced objects used in this object.
Reimplemented from ThePEG::InterfacedBase.
|
inlinevirtual |
If this tilde kinematics is implementing a mapping different from the baseline dipole mapping, determine the relevant shower parameters and check for phase space boundaries.
Note that real emission kinematics only are available at this stage.
Definition at line 102 of file TildeKinematics.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.
|
inlinevirtual |
If this tilde kinematics is implementing a mapping different from the baseline dipole mapping, return the ratio of phase space factorization Jacobians for this and the nominal dipole mapping.
This is used for matching subtractions.
Definition at line 110 of file TildeKinematics.h.
|
pure virtual |
Return the pt associated to the last merged splitting.
Implemented in Herwig::FFLightTildeKinematics, Herwig::FFMassiveTildeKinematics, Herwig::FILightTildeKinematics, Herwig::FIMassiveTildeKinematics, Herwig::IFLightTildeKinematics, Herwig::IFMassiveTildeKinematics, and Herwig::IILightTildeKinematics.
|
pure virtual |
Return the pt associated to emitter emission and sppectator momentum.
Implemented in Herwig::FFLightTildeKinematics, Herwig::FFMassiveTildeKinematics, Herwig::FILightTildeKinematics, Herwig::FIMassiveTildeKinematics, Herwig::IFLightTildeKinematics, Herwig::IFMassiveTildeKinematics, and Herwig::IILightTildeKinematics.
|
pure virtual |
Return the momentum fraction associated to the last splitting.
Implemented in Herwig::FFLightTildeKinematics, Herwig::FFMassiveTildeKinematics, Herwig::FILightTildeKinematics, Herwig::FIMassiveTildeKinematics, Herwig::IFLightTildeKinematics, Herwig::IFMassiveTildeKinematics, and Herwig::IILightTildeKinematics.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::TildeKinematics::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::TildeKinematics::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
inline |
Prepare given a dipole, and XCombs describing the real emission and underlying Born processes, respectively.
Definition at line 120 of file TildeKinematics.h.
References theBornXComb, and theRealXComb.
|
inline |
Return the particle type of the emission in the real emission process.
Definition at line 197 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
inline |
Return the momentum of the emission in the real emission process.
Definition at line 56 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
inline |
Return the particle type of the emitter in the real emission process.
Definition at line 187 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
inline |
Return the momentum of the emitter in the real emission process.
Definition at line 49 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
inline |
Return the particle type of the spectator in the real emission process.
Definition at line 207 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
inline |
Return the momentum of the spectator in the real emission process.
Definition at line 63 of file TildeKinematics.h.
References theDipole, and theRealXComb.
|
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.
|
inline |
Return the momentum fraction of the spectator.
Definition at line 267 of file TildeKinematics.h.
References theBornXComb, and theDipole.
|
inlineprotected |
Access the vector of dimensionless variables calculated.
Definition at line 250 of file TildeKinematics.h.
References theDipole.
|
inline |
Return the vector of dimensionless variables calculated.
Definition at line 80 of file TildeKinematics.h.
References theDipole.
|
inlinevirtual |
If this TildeKinematics object needs to transform all other particles in the process except the emitter and spectator, return the transformed momentum.
Reimplemented in Herwig::IILightTildeKinematics.
Definition at line 93 of file TildeKinematics.h.
|
pure virtual |
Given a pt and a hard pt, return the boundaries on z;.
Implemented in Herwig::FFLightTildeKinematics, Herwig::FFMassiveTildeKinematics, Herwig::FILightTildeKinematics, Herwig::FIMassiveTildeKinematics, Herwig::IFLightTildeKinematics, Herwig::IFMassiveTildeKinematics, and Herwig::IILightTildeKinematics.
|
private |
The momentum of the emitter in the underlying Born process.
Definition at line 350 of file TildeKinematics.h.
Referenced by bornEmitterMomentum().
|
private |
The momentum of the spectator in the underlying Born process.
Definition at line 355 of file TildeKinematics.h.
Referenced by bornSpectatorMomentum().
|
private |
The XComb object describing the underlying Born process.
Definition at line 345 of file TildeKinematics.h.
Referenced by bornEmitterData(), bornSpectatorData(), emitterX(), prepare(), and spectatorX().
|
private |
The last dipole this TildeKinematics has been selected for.
Definition at line 335 of file TildeKinematics.h.
Referenced by bornEmitterData(), bornSpectatorData(), dipole(), emitterX(), realEmissionData(), realEmissionMomentum(), realEmitterData(), realEmitterMomentum(), realSpectatorData(), realSpectatorMomentum(), spectatorX(), and subtractionParameters().
|
private |
The XComb object describing the real emission process.
Definition at line 340 of file TildeKinematics.h.
Referenced by prepare(), realEmissionData(), realEmissionMomentum(), realEmitterData(), realEmitterMomentum(), realSpectatorData(), and realSpectatorMomentum().