herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
Herwig::InvertedTildeKinematics Class Referenceabstract

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>

Inheritance diagram for Herwig::InvertedTildeKinematics:

Public Member Functions

Ptr< InvertedTildeKinematics >::ptr cloneMe () const
 Clone this object.
 
Standard constructors and destructors.
 InvertedTildeKinematics ()
 The default constructor.
 
virtual ~InvertedTildeKinematics ()
 The destructor.
 
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.
 
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. More...
 
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.
 
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...
 
- Public Member Functions inherited from 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
 
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 IBPtr fullclone () const
 
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::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 ()
 

Protected Member Functions

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.
 
Standard Interfaced functions.
virtual void rebind (const TranslationMap &trans)
 Rebind pointer to other Interfaced objects. More...
 
virtual IVector getReferences ()
 Return a vector of all pointers to Interfaced objects used in this object. More...
 
- 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 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 void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const 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)
 

Private Member Functions

InvertedTildeKinematicsoperator= (const InvertedTildeKinematics &)=delete
 The assignment operator is private and must never be called. More...
 

Private Attributes

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.
 

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)
 

Detailed Description

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

Author
Simon Platzer

Definition at line 33 of file InvertedTildeKinematics.h.

Member Function Documentation

◆ doMap()

virtual bool Herwig::InvertedTildeKinematics::doMap ( const double *  )
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.

◆ getReferences()

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

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

Returns
a vector of pointers.

Reimplemented from ThePEG::InterfacedBase.

◆ Init()

static void Herwig::InvertedTildeKinematics::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.

◆ operator=()

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

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ persistentInput()

void Herwig::InvertedTildeKinematics::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::InvertedTildeKinematics::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ rebind()

virtual void Herwig::InvertedTildeKinematics::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.


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