ThePEG  1.8.0
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
ThePEG::CascadeHandler Class Reference

The CascadeHandler is the base class of all handlers implementing perturbative partonic cascade models. More...

#include <CascadeHandler.h>

Inheritance diagram for ThePEG::CascadeHandler:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void cascade ()=0
 The main function to be overwritten by sub-classes.
virtual double reweightCKKW (int minMult, int maxMult)
 The CascadeHandler can be used inside the process generation to do so-called CKKW reweighting of the hard sub-process.
Standard constructors and destructors.
virtual ~CascadeHandler ()
 The destructor.
Virtual functions required by the StepHandler class.
virtual void handle (EventHandler &eh, const tPVector &tagged, const Hint &hint)
 The main function called by the EventHandler class to perform a step.
Access information stored by the handle() function.
const tPVectortagged () const
 Return the vector of tagged particles which should be showered.
const Hinthint () const
 Return the int provided in the current call to handle().
const PDFfirstPDF () const
 Return references to the PDF used by the first incoming particle.
const PDFsecondPDF () const
 Return references to the PDF used by the first incoming particle.
const pair< PDF, PDF > & pdfs () const
 Return references to the currently used PDF's.
void resetPDFs (const pair< tcPDFPtr, tcPDFPtr > &pdfpair)
 Set alternative PDFBase objects to be used for cascade.
void setXComb (tXCombPtr xc)
 Set the XComb object with information about the sub-process generation.
- Public Member Functions inherited from ThePEG::StepHandler
virtual ~StepHandler ()
 The destructor.
tEHPtr eventHandler () const
 Get a pointer to the EventHandler which made the last call to handle().
void eventHandler (tEHPtr)
 Set a pointer to the EventHandler which made the last call to handle().
tStepPtr newStep ()
 Return a pointer to a new step.
tStepPtr currentStep ()
 If a new step has been created, return it, otherwise return the current step from the eventHandler().
- Public Member Functions inherited from ThePEG::LastXCombInfo<>
const XComblastXComb () const
 Return a reference to the last selected XComb.
tXCPtr lastXCombPtr () const
 Return a pointer to the last selected XComb.
const XComblastHeadXComb () const
 If the last selected XComb object belongs to a group of XComb's return a reference to the head XComb object for this group.
tXCPtr lastHeadXCombPtr () const
 If the last selected XComb object belongs to a group of XComb's return a pointer to the head XComb object for this group.
const EventHandlerlastEventHandler () const
 Return a reference to the currently used EventHandler.
tPExtrPtr lastExtractor () const
 A pointer to the currently used parton extractor.
PDFT pdf (tcPPtr parton) const
 Return the parton density used to extract the given parton.
const CutslastCuts () const
 A reference to the currently used kinematical cuts.
tCutsPtr lastCutsPtr () const
 A pointer to the currently used kinematical cuts.
const PPairlastParticles () const
 Return the pair of incoming parton instances.
Energy2 lastS () const
 The last generated total energy squared of the incoming particles.
const PPairlastPartons () const
 Return the pair of incoming parton instances.
Energy2 lastSHat () const
 The last used interval in total parton-parton energy squared.
double lastTau () const
 Return lastSHat()/lastS().
double lastY () const
 The generated rapidity of the hard scattering sub-system.
double lastP1 () const
 Log of one over the momentum fraction of the first incoming particle w.r.t.
double lastP2 () const
 Log of one over the momentum fraction of the second incoming particle w.r.t.
double lastL1 () const
 Log of one over the first incoming parton momentum fraction w.r.t.
double lastL2 () const
 Log of one over the second incoming parton momentum fraction w.r.t.
double lastX1 () const
 The first incoming parton momentum fraction w.r.t.
double lastX2 () const
 The second incoming parton momentum fraction w.r.t.
double lastE1 () const
 Return 1-lastX1() to highest possible precision for x $\rightarrow$ 1.
double lastE2 () const
 Return 1-lastX2() to highest possible precision for x $\rightarrow$ 1.
double lastFL1L2 () const
 The product of the parton density functions at the last generated phase-space point.
Energy2 lastScale () const
 The chosen scale of the hard scattering.
double lastAlphaS () const
 Get the $\alpha_S$ used in the hard scattering.
double lastAlphaEM () const
 Get the $\alpha_{EM}$ used in the hard scattering.
const vector< Lorentz5Momentum > & meMomenta () const
 Return the momenta of the incoming and outgoing partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
double lastME2 () const
 Return the matrix element squared as calculated for the last phase space point.
double jacobian () const
 Get the last jacobian obtained when generating the kinematics for the call to dSigHatDR.
CrossSection lastMECrossSection () const
 Return the partonic cross section as calculated for the last phase space point.
double lastMEPDFWeight () const
 Return the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.
tSubProPtr subProcess () const
 Return the SubProcess object corresponding to the last generated sub-process.
const cPDVectormePartonData () const
 Return the incoming and outgoing parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interface.

Private Member Functions

CascadeHandleroperator= (const CascadeHandler &)
 Private and non-existent assignment operator.

Private Attributes

const tPVectortheTagged
 Store the tagged argument given to handle().
const HinttheHint
 Store the Hint arguments given to handle().
pair< PDF, PDFthePDFs
 The pdfs used to extract the incoming partons.

Static Private Attributes

static
AbstractNoPIOClassDescription
< CascadeHandler
initCascadeHandler
 The static object used to initialize the description of this class.

Additional Inherited Members

- Public Types inherited from ThePEG::LastXCombInfo<>
typedef ThePEG::Ptr< XComb >
::pointer 
XCPtr
 Alias for a reference counted pointer to XC .
typedef ThePEG::Ptr< XComb >
::const_pointer 
cXCPtr
 Alias for a reference counted pointer to a const XC .
typedef ThePEG::Ptr< XComb >
::transient_pointer 
tXCPtr
 Alias for a transient pointer to XC .
typedef ThePEG::Ptr< XComb >
::transient_const_pointer 
tcXCPtr
 Alias for a transient pointer to a const XC .
- Protected Member Functions inherited from ThePEG::StepHandler
void createNewStep ()
 Use the collision handler to create a new step.
- Protected Attributes inherited from ThePEG::LastXCombInfo<>
XCPtr theLastXComb
 The pointer to the last selected XComb.

Detailed Description

The CascadeHandler is the base class of all handlers implementing perturbative partonic cascade models.

It is derived from the more general StepHandler class, and implements the handle() function to do some standard initialization before calling the main cascade() function.

See also:
The interfaces defined for CascadeHandler.
StepHandler
EventHandler
SubProcessHandler

Definition at line 33 of file CascadeHandler.h.


Member Function Documentation

virtual void ThePEG::CascadeHandler::cascade ( )
pure virtual

The main function to be overwritten by sub-classes.

It is called by handle() after storing some information which is then available through simple access functions.

virtual void ThePEG::CascadeHandler::handle ( EventHandler eh,
const tPVector tagged,
const Hint hint 
)
virtual

The main function called by the EventHandler class to perform a step.

Parameters:
ehthe EventHandler in charge of the Event generation.
taggedif not empty these are the only particles which should be considered by the StepHandler.
hinta Hint object with possible information from previously performed steps.
Exceptions:
Vetoif the StepHandler requires the current step to be discarded.
Stopif the generation of the current Event should be stopped after this call.
Exceptionif something goes wrong.

Implements ThePEG::StepHandler.

virtual double ThePEG::CascadeHandler::reweightCKKW ( int  minMult,
int  maxMult 
)
virtual

The CascadeHandler can be used inside the process generation to do so-called CKKW reweighting of the hard sub-process.

In this case this function is called after information about the sub-process is made available through the LastXCombInfo base class. Only the function belonging to the primary CascadeHandler for the event to be generated is called. Sub-classes may implement it to give a suitable weight in return. The CascadeHandler may store information about the generated sub-process to be used in the subsequent cascade. It is however not guaranteed that the reweightCKKW() will have been called for the subprocess handed to the handle() function. This default implementation of the function simply return one. The current sub-process is mixed together with other processes with a multiplicity of outgoing particles between minMult and maxMult.

const tPVector& ThePEG::CascadeHandler::tagged ( ) const
inline

Return the vector of tagged particles which should be showered.

It the vector is empty, the patons from the current sub-process is supposed to be showered.

Definition at line 102 of file CascadeHandler.h.

References theTagged.


Member Data Documentation

AbstractNoPIOClassDescription<CascadeHandler> ThePEG::CascadeHandler::initCascadeHandler
staticprivate

The static object used to initialize the description of this class.

Indicates that this is an abstract class without persistent data.

Definition at line 166 of file CascadeHandler.h.


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