Herwig 7.3.0
|
InvertedTildeKinematics is the base class for the inverted 'tilde' kinematics being used for subtraction terms in the formalism of Catani and Seymour. More...
#include <InvertedTildeKinematics.h>
Public Member Functions | |
InvertedTildeKinematics () | |
The default constructor. | |
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. | |
double | emitterX () const |
Return the momentum fraction of the emitter. | |
double | spectatorX () const |
Return the momentum fraction of the spectator. | |
const vector< double > & | subtractionParameters () const |
Return the vector of dimensionless variables calculated. | |
virtual bool | doesTransform () const |
Return true, if this InvertedTildeKinematics object needs to transform all other particles in the process except the emitter, emission and spectator. | |
virtual Lorentz5Momentum | transform (const Lorentz5Momentum &p) const |
If this InvertedTildeKinematics object needs to transform all other particles in the process except the emitter, emission and spectator, return the transformed momentum. | |
Energy2 | sHat () const |
Return the centre of mass energy for the underlying Born configuration. | |
Ptr< InvertedTildeKinematics >::ptr | cloneMe () const |
Clone this object. | |
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 InvertedTildeKinematics 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 | theRealEmitterMomentum |
The momentum of the emitter in the real emission process. | |
Lorentz5Momentum | theRealEmissionMomentum |
The momentum of the emission in the real emission process. | |
Lorentz5Momentum | theRealSpectatorMomentum |
The momentum of the spectator in the real emission process. | |
double | theJacobian |
Return the single particle phase space weight in units of sHat() for the last selected configuration. | |
Energy | thePtCut |
The optional cutoff on the emission's transverse momentum. | |
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. | |
InvertedTildeKinematics & | operator= (const InvertedTildeKinematics &)=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. | |
tcStdXCombPtr | realXComb () const |
Return the real xcomb. | |
tcStdXCombPtr | bornXComb () const |
Return the Born xcomb. | |
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 int | nDimRadiation () const |
Return the number of random numbers needed to generate a real emission configuration off the underlying Born configuration. | |
virtual bool | doMap (const double *)=0 |
Perform the mapping of the tilde kinematics for the last selected process and store all dimensionless variables in the subtractionParameters() vector. | |
void | ptCut (Energy pt) |
Set an optional cutoff on the emission's transverse momentum. | |
Energy | ptCut () const |
Return the optional cutoff on the emission's transverse momentum. | |
virtual int | evolutionVariable () const |
Return the random number index corresponding to the evolution variable. | |
virtual double | evolutionCutoff () const |
Return the cutoff on the evolution random number corresponding to the pt cut. | |
virtual Energy | lastPt () const =0 |
Return the pt associated to the last generated splitting. | |
virtual double | lastZ () const =0 |
Return the momentum fraction associated to the last splitting. | |
virtual Energy | lastScale () const |
Return the relevant dipole scale. | |
virtual Energy | ptMax () const =0 |
Return the upper bound on pt. | |
virtual pair< double, double > | zBounds (Energy pt, Energy hardPt=ZERO) const =0 |
Given a pt and a hard pt, return the boundaries on z; if the hard pt is zero, ptMax() will be used. | |
virtual pair< Energy, double > | generatePtZ (double &jac, const double *r, double power=1., vector< double > *values=NULL) const |
Generate pt and z. | |
double | jacobian () const |
Return the single particle phase space weight in units of sHat() for the last selected configuration. | |
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. | |
Lorentz5Momentum & | realEmitterMomentum () |
Access the momentum of the emitter in the real emission process. | |
Lorentz5Momentum & | realEmissionMomentum () |
Access the momentum of the emission in the real emission process. | |
Lorentz5Momentum & | realSpectatorMomentum () |
Access the momentum of the spectator in the real emission process. | |
vector< double > & | subtractionParameters () |
Access the vector of dimensionless variables calculated. | |
void | jacobian (double w) |
Set the single particle phase space weight in units of sHat() for the last selected configuration. | |
Lorentz5Momentum | getKt (const Lorentz5Momentum &p1, const Lorentz5Momentum &p2, Energy pt, double phi, bool spacelike=false) const |
Calculate a transverse momentum for the given momenta, invariant pt and azimuth. | |
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) |
InvertedTildeKinematics is the base class for the inverted 'tilde' kinematics being used for subtraction terms in the formalism of Catani and Seymour.
Definition at line 33 of file InvertedTildeKinematics.h.
|
inline |
Return the particle type of the emitter in the underlying Born process.
Definition at line 276 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inline |
Return the momentum of the emitter in the underlying Born process.
Definition at line 64 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inline |
Return the particle type of the spectator in the underlying Born process.
Definition at line 286 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inline |
Return the momentum of the spectator in the underlying Born process.
Definition at line 71 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inline |
Return the Born xcomb.
Definition at line 147 of file InvertedTildeKinematics.h.
References theBornXComb.
|
inline |
Clone this object.
Definition at line 124 of file InvertedTildeKinematics.h.
References ThePEG::InterfacedBase::clone().
|
inline |
Return the current dipole.
Definition at line 157 of file InvertedTildeKinematics.h.
References theDipole.
|
inline |
Return the current dipole.
Definition at line 162 of file InvertedTildeKinematics.h.
References theDipole.
|
inline |
Set the current dipole.
Definition at line 152 of file InvertedTildeKinematics.h.
References theDipole.
|
inlinevirtual |
Return true, if this InvertedTildeKinematics object needs to transform all other particles in the process except the emitter, emission and spectator.
Reimplemented in Herwig::IILightInvertedTildeKinematics.
Definition at line 104 of file InvertedTildeKinematics.h.
|
pure virtual |
Perform the mapping of the tilde kinematics for the last selected process and store all dimensionless variables in the subtractionParameters() vector.
Return false, if the calculation of the real kinematics was impossible for the selected configuration and true on success.
Implemented in Herwig::FFLightInvertedTildeKinematics, Herwig::FFMassiveInvertedTildeKinematics, Herwig::FILightInvertedTildeKinematics, Herwig::FIMassiveInvertedTildeKinematics, Herwig::IFLightInvertedTildeKinematics, Herwig::IFMassiveInvertedTildeKinematics, and Herwig::IILightInvertedTildeKinematics.
|
inline |
Return the momentum fraction of the emitter.
Definition at line 78 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inlinevirtual |
Return the cutoff on the evolution random number corresponding to the pt cut.
Definition at line 203 of file InvertedTildeKinematics.h.
|
inlinevirtual |
Return the random number index corresponding to the evolution variable.
Definition at line 197 of file InvertedTildeKinematics.h.
|
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.
|
inline |
Return the single particle phase space weight in units of sHat() for the last selected configuration.
Definition at line 241 of file InvertedTildeKinematics.h.
References theJacobian.
|
inlineprotected |
Set the single particle phase space weight in units of sHat() for the last selected configuration.
Definition at line 320 of file InvertedTildeKinematics.h.
References theJacobian.
|
pure virtual |
Return the pt associated to the last generated splitting.
Implemented in Herwig::FFLightInvertedTildeKinematics, Herwig::FFMassiveInvertedTildeKinematics, Herwig::FILightInvertedTildeKinematics, Herwig::FIMassiveInvertedTildeKinematics, Herwig::IFLightInvertedTildeKinematics, Herwig::IFMassiveInvertedTildeKinematics, and Herwig::IILightInvertedTildeKinematics.
|
pure virtual |
Return the momentum fraction associated to the last splitting.
Implemented in Herwig::FFLightInvertedTildeKinematics, Herwig::FFMassiveInvertedTildeKinematics, Herwig::FILightInvertedTildeKinematics, Herwig::FIMassiveInvertedTildeKinematics, Herwig::IFLightInvertedTildeKinematics, Herwig::IFMassiveInvertedTildeKinematics, and Herwig::IILightInvertedTildeKinematics.
|
inlinevirtual |
Return the number of random numbers needed to generate a real emission configuration off the underlying Born configuration.
Definition at line 169 of file InvertedTildeKinematics.h.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::InvertedTildeKinematics::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::InvertedTildeKinematics::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 134 of file InvertedTildeKinematics.h.
References theBornXComb, and theRealXComb.
|
inline |
Return the optional cutoff on the emission's transverse momentum.
Definition at line 191 of file InvertedTildeKinematics.h.
References thePtCut.
|
inline |
Set an optional cutoff on the emission's transverse momentum.
Definition at line 185 of file InvertedTildeKinematics.h.
References thePtCut.
|
pure virtual |
Return the upper bound on pt.
Implemented in Herwig::FFLightInvertedTildeKinematics, Herwig::FFMassiveInvertedTildeKinematics, Herwig::FILightInvertedTildeKinematics, Herwig::FIMassiveInvertedTildeKinematics, Herwig::IFLightInvertedTildeKinematics, Herwig::IFMassiveInvertedTildeKinematics, and Herwig::IILightInvertedTildeKinematics.
|
inline |
Return the particle type of the emission in the real emission process.
Definition at line 256 of file InvertedTildeKinematics.h.
References theDipole, and theRealXComb.
|
inlineprotected |
Access the momentum of the emission in the real emission process.
Definition at line 304 of file InvertedTildeKinematics.h.
References theRealEmissionMomentum.
|
inline |
Return the momentum of the emission in the real emission process.
Definition at line 54 of file InvertedTildeKinematics.h.
References theRealEmissionMomentum.
|
inline |
Return the particle type of the emitter in the real emission process.
Definition at line 246 of file InvertedTildeKinematics.h.
References theDipole, and theRealXComb.
|
inlineprotected |
Access the momentum of the emitter in the real emission process.
Definition at line 299 of file InvertedTildeKinematics.h.
References theRealEmitterMomentum.
|
inline |
Return the momentum of the emitter in the real emission process.
Definition at line 49 of file InvertedTildeKinematics.h.
References theRealEmitterMomentum.
|
inline |
Return the particle type of the spectator in the real emission process.
Definition at line 266 of file InvertedTildeKinematics.h.
References theDipole, and theRealXComb.
|
inlineprotected |
Access the momentum of the spectator in the real emission process.
Definition at line 309 of file InvertedTildeKinematics.h.
References theRealSpectatorMomentum.
|
inline |
Return the momentum of the spectator in the real emission process.
Definition at line 59 of file InvertedTildeKinematics.h.
References theRealSpectatorMomentum.
|
inline |
Return the real xcomb.
Definition at line 142 of file InvertedTildeKinematics.h.
References 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 centre of mass energy for the underlying Born configuration.
Definition at line 116 of file InvertedTildeKinematics.h.
References theBornXComb.
|
inline |
Return the momentum fraction of the spectator.
Definition at line 88 of file InvertedTildeKinematics.h.
References theBornXComb, and theDipole.
|
inlineprotected |
Access the vector of dimensionless variables calculated.
Definition at line 314 of file InvertedTildeKinematics.h.
References theDipole.
|
inline |
Return the vector of dimensionless variables calculated.
Definition at line 98 of file InvertedTildeKinematics.h.
References theDipole.
|
inlinevirtual |
If this InvertedTildeKinematics object needs to transform all other particles in the process except the emitter, emission and spectator, return the transformed momentum.
Reimplemented in Herwig::IILightInvertedTildeKinematics.
Definition at line 111 of file InvertedTildeKinematics.h.
|
pure virtual |
Given a pt and a hard pt, return the boundaries on z; if the hard pt is zero, ptMax() will be used.
Implemented in Herwig::FFLightInvertedTildeKinematics, Herwig::FFMassiveInvertedTildeKinematics, Herwig::FILightInvertedTildeKinematics, Herwig::FIMassiveInvertedTildeKinematics, Herwig::IFLightInvertedTildeKinematics, Herwig::IFMassiveInvertedTildeKinematics, and Herwig::IILightInvertedTildeKinematics.
|
private |
The XComb object describing the underlying Born process.
Definition at line 401 of file InvertedTildeKinematics.h.
Referenced by bornEmitterData(), bornEmitterMomentum(), bornSpectatorData(), bornSpectatorMomentum(), bornXComb(), emitterX(), prepare(), sHat(), and spectatorX().
|
private |
The last dipole this InvertedTildeKinematics has been selected for.
Definition at line 391 of file InvertedTildeKinematics.h.
Referenced by bornEmitterData(), bornEmitterMomentum(), bornSpectatorData(), bornSpectatorMomentum(), dipole(), emitterX(), realEmissionData(), realEmitterData(), realSpectatorData(), spectatorX(), and subtractionParameters().
|
private |
Return the single particle phase space weight in units of sHat() for the last selected configuration.
Definition at line 422 of file InvertedTildeKinematics.h.
Referenced by jacobian().
|
private |
The optional cutoff on the emission's transverse momentum.
Definition at line 428 of file InvertedTildeKinematics.h.
Referenced by ptCut().
|
private |
The momentum of the emission in the real emission process.
Definition at line 411 of file InvertedTildeKinematics.h.
Referenced by realEmissionMomentum().
|
private |
The momentum of the emitter in the real emission process.
Definition at line 406 of file InvertedTildeKinematics.h.
Referenced by realEmitterMomentum().
|
private |
The momentum of the spectator in the real emission process.
Definition at line 416 of file InvertedTildeKinematics.h.
Referenced by realSpectatorMomentum().
|
private |
The XComb object describing the real emission process.
Definition at line 396 of file InvertedTildeKinematics.h.
Referenced by prepare(), realEmissionData(), realEmitterData(), realSpectatorData(), and realXComb().