herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::ColourMatrixElementCorrection Class Reference

ColourMatrixElementCorrection is implementing colour matrix element corrections through the weighted Sudakov algorithm. More...

#include <ColourMatrixElementCorrection.h>

Inheritance diagram for Herwig::ColourMatrixElementCorrection:

Public Member Functions

 ColourMatrixElementCorrection ()
 The default constructor.
 
double cmec (const DipoleSplittingInfo &) const
 Calculate and cache the colour matrix element correction factor for the given splitting type.
 
virtual double evaluate (const DipoleSplittingInfo &s) const
 Return the reweighting factor for the given splitting type.
 
virtual double hint (const DipoleSplittingInfo &s) const
 Return the absolute value of the colour matrix element correction as an enhancement hint for the sampling of the un-reweighted splitting kernel.
 
virtual bool hintOnly (const DipoleSplittingInfo &s) const
 Return true, if the reweight can be entirely absorbed into the hint.
 
virtual void reweightFactor (const double c)
 Set the factor in front of enhance used by the veto algorithm.
 
virtual void negativeScaling (const double c)
 Set the factor in front of enhance used by the veto algorithm.
 
- Public Member Functions inherited from Herwig::DipoleSplittingReweight
 DipoleSplittingReweight ()
 The default constructor.
 
virtual ~DipoleSplittingReweight ()
 The destructor.
 
virtual bool firstInteraction () const
 Return true, if the reweighting should be applied to the first interaction.
 
virtual bool secondaryInteractions () const
 Return true, if the reweighting should be applied to the secondary interactions.
 
void updateCurrentHandler ()
 Update the pointer to the currently active dipole shower handler object.
 
Ptr< DipoleShowerHandler >::tptr currentHandler () const
 Return the pointer to the currently active dipole shower handler object.
 
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::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
 

Clone Methods.

double lambda
 Factor to shuffle the magnitude of the CMEC between the splitting kernel and the weight in the reweighted veto algorithm.
 
double negCMECScaling
 Scaling factor multiplying all of the negative colour matrix element corrections.
 
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.
 
ColourMatrixElementCorrectionoperator= (const ColourMatrixElementCorrection &)=delete
 The assignment operator is private and must never be called.
 

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 Herwig::DipoleSplittingReweight
static void Init ()
 The standard Init function used to initialize the interfaces.
 
- 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

ColourMatrixElementCorrection is implementing colour matrix element corrections through the weighted Sudakov algorithm.

Author
Johan Thoren, Simon Platzer
See also
The interfaces defined for ColourMatrixElementCorrection.

Definition at line 33 of file ColourMatrixElementCorrection.h.

Member Function Documentation

◆ clone()

virtual IBPtr Herwig::ColourMatrixElementCorrection::clone ( ) const
protectedvirtual

Make a simple clone of this object.

Returns
a pointer to the new object.

Implements ThePEG::InterfacedBase.

◆ evaluate()

virtual double Herwig::ColourMatrixElementCorrection::evaluate ( const DipoleSplittingInfo s) const
inlinevirtual

Return the reweighting factor for the given splitting type.

Implements Herwig::DipoleSplittingReweight.

Definition at line 53 of file ColourMatrixElementCorrection.h.

References cmec().

◆ fullclone()

virtual IBPtr Herwig::ColourMatrixElementCorrection::fullclone ( ) const
protectedvirtual

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

◆ hint()

virtual double Herwig::ColourMatrixElementCorrection::hint ( const DipoleSplittingInfo s) const
inlinevirtual

Return the absolute value of the colour matrix element correction as an enhancement hint for the sampling of the un-reweighted splitting kernel.

Reimplemented from Herwig::DipoleSplittingReweight.

Definition at line 62 of file ColourMatrixElementCorrection.h.

References cmec(), hintOnly(), and lambda.

◆ hintOnly()

virtual bool Herwig::ColourMatrixElementCorrection::hintOnly ( const DipoleSplittingInfo s) const
inlinevirtual

Return true, if the reweight can be entirely absorbed into the hint.

A possible detuning will be switched off.

Reimplemented from Herwig::DipoleSplittingReweight.

Definition at line 72 of file ColourMatrixElementCorrection.h.

References cmec().

Referenced by hint().

◆ Init()

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

◆ negativeScaling()

virtual void Herwig::ColourMatrixElementCorrection::negativeScaling ( const double  c)
inlinevirtual

Set the factor in front of enhance used by the veto algorithm.

Reimplemented from Herwig::DipoleSplittingReweight.

Definition at line 87 of file ColourMatrixElementCorrection.h.

References negCMECScaling.

◆ operator=()

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

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ persistentInput()

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

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ reweightFactor()

virtual void Herwig::ColourMatrixElementCorrection::reweightFactor ( const double  c)
inlinevirtual

Set the factor in front of enhance used by the veto algorithm.

Reimplemented from Herwig::DipoleSplittingReweight.

Definition at line 79 of file ColourMatrixElementCorrection.h.

References lambda.

Member Data Documentation

◆ lambda

double Herwig::ColourMatrixElementCorrection::lambda
private

Factor to shuffle the magnitude of the CMEC between the splitting kernel and the weight in the reweighted veto algorithm.

Definition at line 144 of file ColourMatrixElementCorrection.h.

Referenced by hint(), and reweightFactor().

◆ negCMECScaling

double Herwig::ColourMatrixElementCorrection::negCMECScaling
private

Scaling factor multiplying all of the negative colour matrix element corrections.

The physically sensible value is 1.0, but this factor can be used to examine the effects of the negative contributions.

Definition at line 151 of file ColourMatrixElementCorrection.h.

Referenced by negativeScaling().


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