herwig is hosted by Hepforge, IPPP Durham
Herwig++  2.7.0
Herwig::Evolver Class Reference

The Evolver class class performs the sohwer evolution of hard scattering and decay processes in Herwig++. More...

#include <Evolver.h>

Inheritance diagram for Herwig::Evolver:

List of all members.

Public Types

typedef Ptr< XComb >::pointer XCPtr
 Pointer to an XComb object.

Public Member Functions

 Evolver ()
 Default Constructor.
virtual void connectTrees (ShowerTreePtr showerTree, HardTreePtr hardTree, bool hard) const
 Connect the Hard and Shower trees.
virtual void showerHardProcess (ShowerTreePtr, XCPtr)
 Members to perform the shower.
virtual void showerDecay (ShowerTreePtr)
 Perform the shower of a decay.
bool showeringON () const
 Access to the flags and shower variables.
bool isISRadiationON () const
 It returns true/false if the initial-state radiation is on/off.
bool isFSRadiationON () const
 It returns true/false if the final-state radiation is on/off.
ShowerModelPtr showerModel () const
 Get the ShowerModel.
tSplittingGeneratorPtr splittingGenerator () const
 Get the SplittingGenerator.
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 Public Member Functions

static void Init ()
 The standard Init function used to initialize the interfaces.

Protected Member Functions

virtual void hardMatrixElementCorrection (bool)
 Generate the hard matrix element correction.
virtual void hardestEmission (bool hard)
 Generate the hardest emission.
virtual vector
< ShowerProgenitorPtr > 
setupShower (bool hard)
 Extract the particles to be showered, set the evolution scales and apply the hard matrix element correction.
virtual void setEvolutionPartners (bool hard, ShowerInteraction::Type)
 set the colour partners
bool isTruncatedShowerON () const
 Is the truncated shower on?
unsigned int maximumTries () const
 Access the maximum number of attempts to generate the shower.
virtual void generateIntrinsicpT (vector< ShowerProgenitorPtr >)
 Calculate the intrinsic $p_T$.
map< tShowerProgenitorPtr,
pair< Energy, double > > & 
intrinsicpT ()
 Access to the intrinsic $p_T$ for inheriting classes.
void setupMaximumScales (ShowerTreePtr, const vector< ShowerProgenitorPtr > &, XCPtr)
 find the maximally allowed pt acc to the hard process.
double hardScaleFactor () const
 Return the factor to multiply the hard veto scale.
void hardScaleFactor (double f)
 Set the factor to multiply the hard veto scale.
virtual bool startTimeLikeShower (ShowerInteraction::Type)
 Start the shower of a timelike particle.
void updateHistory (tShowerParticlePtr particle)
 Update of the time-like stuff.
virtual bool startSpaceLikeShower (PPtr, ShowerInteraction::Type)
 Start the shower of a spacelike particle.
virtual bool startSpaceLikeDecayShower (Energy maxscale, Energy minimumMass, ShowerInteraction::Type)
 Start the shower of a spacelike particle.
virtual bool timeLikeVetoed (const Branching &, ShowerParticlePtr)
 Vetos for the timelike shower.
virtual bool spaceLikeVetoed (const Branching &, ShowerParticlePtr)
 Vetos for the spacelike shower.
virtual bool spaceLikeDecayVetoed (const Branching &, ShowerParticlePtr)
 Vetos for the spacelike shower.
bool hardOnly () const
 Only generate the hard emission, for testing only.
virtual bool timeLikeShower (tShowerParticlePtr particle, ShowerInteraction::Type, bool first)
 Methods to perform the evolution of an individual particle, including recursive calling on the products.
virtual bool spaceLikeShower (tShowerParticlePtr particle, PPtr beam, ShowerInteraction::Type)
 It does the backward evolution of the space-like input particle (and recursively for all its time-like radiation products).
virtual bool spaceLikeDecayShower (tShowerParticlePtr particle, Energy maxscale, Energy minimumMass, ShowerInteraction::Type)
 If does the forward evolution of the input on-shell particle involved in a decay (and recursively for all its time-like radiation products).
virtual bool truncatedTimeLikeShower (tShowerParticlePtr particle, HardBranchingPtr branch, ShowerInteraction::Type type)
 Truncated shower from a time-like particle.
virtual bool truncatedSpaceLikeShower (tShowerParticlePtr particle, PPtr beam, HardBranchingPtr branch, ShowerInteraction::Type type)
 Truncated shower from a space-like particle.
virtual bool truncatedSpaceLikeDecayShower (tShowerParticlePtr particle, Energy maxscale, Energy minimumMass, HardBranchingPtr branch, ShowerInteraction::Type type)
 Truncated shower from a time-like particle.
bool MECOn () const
 Switches for matrix element corrections.
bool hardMEC () const
 Any hard ME correction?
bool softMEC () const
 Any soft ME correction?
bool ipTon () const
 Switch for intrinsic pT.
Additional shower vetoes
void addVeto (ShowerVetoPtr v)
 Insert a veto.
void removeVeto (ShowerVetoPtr v)
 Remove a veto.
bool hardVetoOn () const
 Switches for vetoing hard emissions.
bool hardVetoIS () const
 veto hard emissions in IS shower?
bool hardVetoFS () const
 veto hard emissions in FS shower?
bool hardVetoXComb () const
 veto hard emissions according to lastScale from XComb?
bool hardVetoReadOption () const
 Returns true if the hard veto read-in is to be applied to only the primary collision and false otherwise.
double initialStateRadiationEnhancementFactor () const
 Enhancement factors for radiation needed to generate the soft matrix element correction.
double finalStateRadiationEnhancementFactor () const
 Access the enhancement factor for final-state radiation.
void initialStateRadiationEnhancementFactor (double in)
 Set the enhancement factor for initial-state radiation.
void finalStateRadiationEnhancementFactor (double in)
 Set the enhancement factor for final-state radiation.
tHardTreePtr hardTree ()
 Access to set/get the HardTree currently beinging showered.
void hardTree (tHardTreePtr in)
 The HardTree currently being showered.
Ptr< BeamParticleData >
::const_pointer 
beamParticle () const
 Access/set the beam particle for the current initial-state shower.
void setBeamParticle (Ptr< BeamParticleData >::const_pointer in)
 Set the beam particle data.
tShowerTreePtr currentTree ()
 Set/Get the current tree being evolverd for inheriting classes.
void currentTree (tShowerTreePtr tree)
 Set the tree.
ShowerProgenitorPtr progenitor ()
 Set/Get the ShowerProgenitor for the current shower.
void progenitor (ShowerProgenitorPtr in)
 Set the progenitor.
Clone Methods.
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.

Private Member Functions

double getReductionFactor (tShowerParticlePtr particle)
 Get the octet -> octet octet reduction factor.
Evolveroperator= (const Evolver &)
 The assignment operator is private and must never be called.

Private Attributes

ShowerModelPtr _model
 Pointer to the model for the shower evolution model.
SplittingGeneratorPtr _splittingGenerator
 Pointer to the splitting generator.
unsigned int _maxtry
 Maximum number of tries to generate the shower of a particular tree.
unsigned int _meCorrMode
 Matrix element correction switch.
unsigned int _hardVetoMode
 Hard emission veto switch.
unsigned int _hardVetoRead
 Hard veto to be read switch.
unsigned int _reconOpt
 Control of the reconstruction option.
bool _hardVetoReadOption
 If hard veto pT scale is being read-in this determines whether the read-in value is applied to primary and secondary (MPI) scatters or just the primary one, with the usual computation of the veto being performed for the secondary (MPI) scatters.
Energy _iptrms
 rms intrinsic pT of Gaussian distribution
double _beta
 Proportion of inverse quadratic intrinsic pT distribution.
Energy _gamma
 Parameter for inverse quadratic: 2*Beta*Gamma/(sqr(Gamma)+sqr(intrinsicpT))
Energy _iptmax
 Upper bound on intrinsic pT for inverse quadratic.
unsigned int _limitEmissions
 Limit the number of emissions for testing.
ShowerProgenitorPtr _progenitor
 The progenitor of the current shower.
HwMEBasePtr _hardme
 Matrix element.
HwDecayerBasePtr _decayme
 Decayer.
ShowerTreePtr _currenttree
 The ShowerTree currently being showered.
HardTreePtr _hardtree
 The HardTree currently being showered.
Ptr< BeamParticleData >
::const_pointer 
_beam
 The beam particle data for the current initial-state shower.
map< tShowerProgenitorPtr,
pair< Energy, double > > 
_intrinsic
 Storage of the intrinsic $p_t$ of the particles.
vector< ShowerVetoPtr > _vetoes
 Vetoes.
unsigned int _nis
 number of IS emissions
unsigned int _nfs
 Number of FS emissions.
bool _hardonly
 Only generate the emission from the hardest emission generate for testing only.
bool _trunc_Mode
 Truncated shower switch.
unsigned int _truncEmissions
 Count of the number of truncated emissions.
unsigned int _hardEmissionMode
 Mode for the hard emissions.
int _colourEvolutionMethod
 Colour evolution method.
double _hardScaleFactor
 A factor to multiply the hard veto scale.
double _initialenhance
 Radiation enhancement factors for use with the veto algorithm if needed by the soft matrix element correction.
double _finalenhance
 Enhancement factor for final-state radiation.

Friends

class ShowerHandler
 The ShowerHandler is a friend to set some parameters at initialisation.

Detailed Description

The Evolver class class performs the sohwer evolution of hard scattering and decay processes in Herwig++.

See also:
The interfaces defined for Evolver.

Definition at line 41 of file Evolver.h.


Member Function Documentation

Ptr<BeamParticleData>::const_pointer Herwig::Evolver::beamParticle ( ) const [inline, protected]

Access/set the beam particle for the current initial-state shower.

Get the beam particle data

Definition at line 373 of file Evolver.h.

virtual IBPtr Herwig::Evolver::clone ( ) const [protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

tShowerTreePtr Herwig::Evolver::currentTree ( ) [inline, protected]

Set/Get the current tree being evolverd for inheriting classes.

Get the tree

Definition at line 388 of file Evolver.h.

virtual IBPtr Herwig::Evolver::fullclone ( ) const [protected, virtual]

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.

tHardTreePtr Herwig::Evolver::hardTree ( ) [inline, protected]

Access to set/get the HardTree currently beinging showered.

The HardTree currently being showered

Definition at line 358 of file Evolver.h.

bool Herwig::Evolver::hardVetoOn ( ) const [inline, protected]

Switches for vetoing hard emissions.

Vetos on?

Definition at line 301 of file Evolver.h.

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

Reimplemented from ThePEG::Interfaced.

double Herwig::Evolver::initialStateRadiationEnhancementFactor ( ) const [inline, protected]

Enhancement factors for radiation needed to generate the soft matrix element correction.

Access the enhancement factor for initial-state radiation

Definition at line 333 of file Evolver.h.

bool Herwig::Evolver::ipTon ( ) const [inline, protected]

Switch for intrinsic pT.

Any intrinsic pT?

Definition at line 271 of file Evolver.h.

References ZERO.

bool Herwig::Evolver::MECOn ( ) const [inline, protected]

Switches for matrix element corrections.

Any ME correction?

Definition at line 240 of file Evolver.h.

Evolver& Herwig::Evolver::operator= ( const Evolver ) [private]

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

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

Reimplemented from ThePEG::Interfaced.

Function used to write out object persistently.

Parameters:
osthe persistent output stream written to.

Reimplemented from ThePEG::Interfaced.

ShowerProgenitorPtr Herwig::Evolver::progenitor ( ) [inline, protected]

Set/Get the ShowerProgenitor for the current shower.

Access the progenitor

Definition at line 409 of file Evolver.h.

virtual vector<ShowerProgenitorPtr> Herwig::Evolver::setupShower ( bool  hard) [protected, virtual]

Extract the particles to be showered, set the evolution scales and apply the hard matrix element correction.

Parameters:
hardWhether this is a hard process or decay
Returns:
The particles to be showered
virtual void Herwig::Evolver::showerHardProcess ( ShowerTreePtr  ,
XCPtr   
) [virtual]

Members to perform the shower.

Perform the shower of the hard process

bool Herwig::Evolver::showeringON ( ) const [inline]

Access to the flags and shower variables.

Is there any showering switched on

Definition at line 90 of file Evolver.h.

virtual bool Herwig::Evolver::spaceLikeDecayShower ( tShowerParticlePtr  particle,
Energy  maxscale,
Energy  minimumMass,
ShowerInteraction::Type   
) [protected, virtual]

If does the forward evolution of the input on-shell particle involved in a decay (and recursively for all its time-like radiation products).

accepting only emissions which conforms to the showerVariables.

Parameters:
particleThe particle to be showered
maxscaleThe maximum scale for the shower.
minimumMassThe minimum mass of the final-state system
virtual bool Herwig::Evolver::spaceLikeShower ( tShowerParticlePtr  particle,
PPtr  beam,
ShowerInteraction::Type   
) [protected, virtual]

It does the backward evolution of the space-like input particle (and recursively for all its time-like radiation products).

accepting only emissions which conforms to the showerVariables. If at least one emission has occurred then the method returns true

Parameters:
particleThe particle to be showered
beamThe beam particle
virtual bool Herwig::Evolver::timeLikeShower ( tShowerParticlePtr  particle,
ShowerInteraction::Type  ,
bool  first 
) [protected, virtual]

Methods to perform the evolution of an individual particle, including recursive calling on the products.

It does the forward evolution of the time-like input particle (and recursively for all its radiation products). accepting only emissions which conforms to the showerVariables and soft matrix element correction. If at least one emission has occurred then the method returns true.

Parameters:
particleThe particle to be showered

Member Data Documentation

Radiation enhancement factors for use with the veto algorithm if needed by the soft matrix element correction.

Enhancement factor for initial-state radiation

Definition at line 619 of file Evolver.h.


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