herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::TildeKinematics Class Referenceabstract

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>

Inheritance diagram for Herwig::TildeKinematics:

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 StandardModelBaseSM () 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.
 
TildeKinematicsoperator= (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 &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (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)
 

Detailed Description

TildeKinematics is the base class for the 'tilde' kinematics being used for subtraction terms in the formalism of Catani and Seymour.

Author
Simon Platzer

Definition at line 33 of file TildeKinematics.h.

Member Function Documentation

◆ aboveAlpha()

virtual bool Herwig::TildeKinematics::aboveAlpha ( ) const
inlinevirtual

Definition at line 178 of file TildeKinematics.h.

◆ bornEmitterData()

cPDPtr Herwig::TildeKinematics::bornEmitterData ( ) const
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.

◆ bornEmitterMomentum() [1/2]

Lorentz5Momentum & Herwig::TildeKinematics::bornEmitterMomentum ( )
inlineprotected

Access the momentum of the emitter in the underlying Born process.

Definition at line 240 of file TildeKinematics.h.

References theBornEmitterMomentum.

◆ bornEmitterMomentum() [2/2]

const Lorentz5Momentum & Herwig::TildeKinematics::bornEmitterMomentum ( ) const
inline

Return the momentum of the emitter in the underlying Born process.

Definition at line 70 of file TildeKinematics.h.

References theBornEmitterMomentum.

◆ bornSpectatorData()

cPDPtr Herwig::TildeKinematics::bornSpectatorData ( ) const
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.

◆ bornSpectatorMomentum() [1/2]

Lorentz5Momentum & Herwig::TildeKinematics::bornSpectatorMomentum ( )
inlineprotected

Access the momentum of the spectator in the underlying Born process.

Definition at line 245 of file TildeKinematics.h.

References theBornSpectatorMomentum.

◆ bornSpectatorMomentum() [2/2]

const Lorentz5Momentum & Herwig::TildeKinematics::bornSpectatorMomentum ( ) const
inline

Return the momentum of the spectator in the underlying Born process.

Definition at line 75 of file TildeKinematics.h.

References theBornSpectatorMomentum.

◆ cloneMe()

Ptr< TildeKinematics >::ptr Herwig::TildeKinematics::cloneMe ( ) const
inline

Clone this object.

Definition at line 40 of file TildeKinematics.h.

References ThePEG::InterfacedBase::clone().

◆ dipole() [1/3]

Ptr< SubtractionDipole >::tptr Herwig::TildeKinematics::dipole ( )
inline

Return the current dipole.

Definition at line 133 of file TildeKinematics.h.

References theDipole.

◆ dipole() [2/3]

Ptr< SubtractionDipole >::tcptr Herwig::TildeKinematics::dipole ( ) const
inline

Return the current dipole.

Definition at line 138 of file TildeKinematics.h.

References theDipole.

◆ dipole() [3/3]

void Herwig::TildeKinematics::dipole ( Ptr< SubtractionDipole >::tptr  dip)
inline

Set the current dipole.

Definition at line 128 of file TildeKinematics.h.

References theDipole.

◆ doesTransform()

virtual bool Herwig::TildeKinematics::doesTransform ( ) const
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.

◆ doMap()

virtual bool Herwig::TildeKinematics::doMap ( )
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.

◆ emitterX()

double Herwig::TildeKinematics::emitterX ( ) const
inline

Return the momentum fraction of the emitter.

Definition at line 256 of file TildeKinematics.h.

References theBornXComb, and theDipole.

◆ getReferences()

virtual IVector Herwig::TildeKinematics::getReferences ( )
protectedvirtual

Return a vector of all pointers to Interfaced objects used in this object.

Returns
a vector of pointers.

Reimplemented from ThePEG::InterfacedBase.

◆ getShowerVariables()

virtual void Herwig::TildeKinematics::getShowerVariables ( ) const
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.

◆ Init()

static void Herwig::TildeKinematics::Init ( )
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.

◆ jacobianRatio()

virtual double Herwig::TildeKinematics::jacobianRatio ( ) const
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.

◆ lastPt() [1/2]

virtual Energy Herwig::TildeKinematics::lastPt ( ) const
pure virtual

◆ lastPt() [2/2]

virtual Energy Herwig::TildeKinematics::lastPt ( Lorentz5Momentum  ,
Lorentz5Momentum  ,
Lorentz5Momentum   
) const
pure virtual

◆ lastZ()

virtual double Herwig::TildeKinematics::lastZ ( ) const
pure virtual

◆ operator=()

TildeKinematics & Herwig::TildeKinematics::operator= ( const TildeKinematics )
privatedelete

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ persistentInput()

void Herwig::TildeKinematics::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters
isthe persistent input stream read from.
versionthe version number of the object when written.

◆ persistentOutput()

void Herwig::TildeKinematics::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ prepare()

void Herwig::TildeKinematics::prepare ( tcStdXCombPtr  newRealXComb,
tcStdXCombPtr  newBornXComb 
)
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.

◆ realEmissionData()

cPDPtr Herwig::TildeKinematics::realEmissionData ( ) const
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.

◆ realEmissionMomentum()

const Lorentz5Momentum & Herwig::TildeKinematics::realEmissionMomentum ( ) const
inline

Return the momentum of the emission in the real emission process.

Definition at line 56 of file TildeKinematics.h.

References theDipole, and theRealXComb.

◆ realEmitterData()

cPDPtr Herwig::TildeKinematics::realEmitterData ( ) const
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.

◆ realEmitterMomentum()

const Lorentz5Momentum & Herwig::TildeKinematics::realEmitterMomentum ( ) const
inline

Return the momentum of the emitter in the real emission process.

Definition at line 49 of file TildeKinematics.h.

References theDipole, and theRealXComb.

◆ realSpectatorData()

cPDPtr Herwig::TildeKinematics::realSpectatorData ( ) const
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.

◆ realSpectatorMomentum()

const Lorentz5Momentum & Herwig::TildeKinematics::realSpectatorMomentum ( ) const
inline

Return the momentum of the spectator in the real emission process.

Definition at line 63 of file TildeKinematics.h.

References theDipole, and theRealXComb.

◆ rebind()

virtual void Herwig::TildeKinematics::rebind ( const TranslationMap trans)
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.

Parameters
transa TranslationMap relating the original objects to their respective clones.
Exceptions
RebindExceptionif no cloned object was found for a given pointer.

Reimplemented from ThePEG::InterfacedBase.

◆ spectatorX()

double Herwig::TildeKinematics::spectatorX ( ) const
inline

Return the momentum fraction of the spectator.

Definition at line 267 of file TildeKinematics.h.

References theBornXComb, and theDipole.

◆ subtractionParameters() [1/2]

vector< double > & Herwig::TildeKinematics::subtractionParameters ( )
inlineprotected

Access the vector of dimensionless variables calculated.

Definition at line 250 of file TildeKinematics.h.

References theDipole.

◆ subtractionParameters() [2/2]

const vector< double > & Herwig::TildeKinematics::subtractionParameters ( ) const
inline

Return the vector of dimensionless variables calculated.

Definition at line 80 of file TildeKinematics.h.

References theDipole.

◆ transform()

virtual Lorentz5Momentum Herwig::TildeKinematics::transform ( const Lorentz5Momentum &  p) const
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.

◆ zBounds()

virtual pair< double, double > Herwig::TildeKinematics::zBounds ( Energy  pt,
Energy  hardPt 
) const
pure virtual

Member Data Documentation

◆ theBornEmitterMomentum

Lorentz5Momentum Herwig::TildeKinematics::theBornEmitterMomentum
private

The momentum of the emitter in the underlying Born process.

Definition at line 350 of file TildeKinematics.h.

Referenced by bornEmitterMomentum().

◆ theBornSpectatorMomentum

Lorentz5Momentum Herwig::TildeKinematics::theBornSpectatorMomentum
private

The momentum of the spectator in the underlying Born process.

Definition at line 355 of file TildeKinematics.h.

Referenced by bornSpectatorMomentum().

◆ theBornXComb

tcStdXCombPtr Herwig::TildeKinematics::theBornXComb
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().

◆ theDipole

◆ theRealXComb

tcStdXCombPtr Herwig::TildeKinematics::theRealXComb
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().


The documentation for this class was generated from the following file: