ThePEG::StandardEventHandler Class Reference

The StandardEventHandler class is the main class for generating simple events without overlayed collisions. More...

#include <StandardEventHandler.h>

Inheritance diagram for ThePEG::StandardEventHandler:

ThePEG::EventHandler ThePEG::HandlerBase ThePEG::LastXCombInfo< XC > ThePEG::HandlerBaseT< T > ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted

List of all members.

Public Types

typedef vector< SubHdlPtrSubHandlerList
 A vector of SubProcessHandlers.
typedef Selector< StdXCombPtrXSelector
 A weighted list of pointers to StandardXComb objects.
typedef vector< StdXCombPtrXVector
 A vector of pointers to StandardXComb objects.
typedef vector< CrossSectionXSVector
 A vector of cross sections.
typedef map< tMEPtr, XVectorMEXMap
 Map of pointers to StandardXComb objects indexed by pointers to the corresponding MEBase object.

Public Member Functions

virtual void initialize ()
 Initialize this event handler and all related objects needed to generate events.
virtual void statistics (ostream &) const
 Write out accumulated statistics about intergrated cross sections and stuff.
virtual CrossSection histogramScale () const
 Histogram scale.
virtual CrossSection integratedXSec () const
 The estimated total integrated cross section of the processes generated in this run.
virtual CrossSection integratedXSecErr () const
 The estimated error int total integrated cross section of the processes generated in this run.
Standard constructors and destructors.
 StandardEventHandler ()
 Default constructor.
virtual ~StandardEventHandler ()
 Destructor.
Functions used for the actual generation
virtual CrossSection dSigDR (const vector< double > &r)
 Return the cross section for the chosen phase space point.
virtual EventPtr generateEvent ()
 Generate an event.
virtual EventPtr continueEvent ()
 Continue generating an event if the generation has been stopped before finishing.
const LorentzRotationcurrentEventBoost () const
 Return the boost needed to transform the current event from the CMS system to the lab system.
Simple access functions
tCutsPtr cuts () const
 Return a reference to the Cuts of this EventHandler.
int nBins () const
 Return the number of separate bins of StandardXComb objects to sample.
int maxDim (int bin) const
 Return the number of phase space dimensions needed for the sampling of indicated bin of StandardXComb objects.
bool weighted () const
 Return true if this event handler should produce weightes events.
int lumiDim () const
 The number of phase space dimensions used by the luminosity function.
int nDim (int bin) const
 The number of dimensions of the basic phase space to generate sub-processes in for a given bin of StandardXComb objects.
Standard Interfaced functions.
virtual void doupdate ()
 Check sanity of the object during the setup phase.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
virtual void doinitrun ()
 Initialize this object.
virtual void dofinish ()
 Finalize this object.
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 ()
 Standard Init function used to initialize the interface.

Protected Member Functions

virtual CrossSection dSigDR (const pair< double, double > ll, Energy2 maxS, int ibin, int nr, const double *r)
 Generate a phase space point and return the corresponding cross section.
tStdXCombPtr select (int bin, double &weight)
 Select an StandardXComb.
void addME (Energy maxEnergy, tSubHdlPtr sub, tPExtrPtr extractor, tCutsPtr cuts, tCascHdlPtr ckkw, tMEPtr me, const PBPair &pBins)
 Create and add StandardXComb objects.
tCollPtr performCollision ()
 For the sub-procss and phase-space point selected in the previous call to dSigDR, produce the first step of an actual Collision.
virtual void initGroups ()
 Initialize groups of StepHandlers.
LorentzRotationcurrentEventBoost ()
 Return the boost needed to transform the current collision from the CMS system to the lab system.
void setScale (Energy2)
 Set information about the current sub-process.
const XVectorxCombs () const
 Return the vector of StandardXComb objects.
XVectorxCombs ()
 Return the vector of StandardXComb objects.
const XSVectorxSecs () const
 Return the vector of cross sections.
XSVectorxSecs ()
 Return the vector of cross sections.
int binStrategy () const
 Return the strategy to be used when sampling different StandardXComb objects.
void reject (double weight)
 Reject a (partially) generated event.
tSamplerPtr sampler ()
 Return the sampler assigned to this event handler.
tcSamplerPtr sampler () const
 Return the sampler assigned to this event handler.
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

const SubHandlerListsubProcesses () const
 Access the list of sub-process handlers.
SubHandlerListsubProcesses ()
 Access the list of sub-process handlers.
void setIncomingA (PDPtr)
 Helper function for the interface.
void setIncomingB (PDPtr)
 Helper function for the interface.
const StandardEventHandleroperator= (const StandardEventHandler &)
 Private and non-existent assignment operator.

Private Attributes

PDPtr theIncomingA
 The first of the incoming particle types.
PDPtr theIncomingB
 The second of the incoming particle types.
SubHandlerList theSubProcesses
 The list of SubProcessHandlers.
CutsPtr theCuts
 The kinematical cuts used for this collision handler.
XVector theXCombs
 The StandardXComb objects.
XSVector theXSecs
 The (incrementally summed) cross sections associated with the StandardXComb objects for the last selected phase space point.
int theBinStrategy
 The strategy to be used when sampling different StandardXComb objects.
MEXMap theMEXMap
 The map used to store all XBins with the same matrix element for option 1 in theBinStrategy.
vector< int > theMaxDims
 The number of degrees of freedom needed to generate the phase space for the different bins.
LorentzRotation theCurrentEventBoost
 The boost needed to transform the current collision from the CMS system to the lab system.
bool weightedEvents
 True if this event handler should produce weightes events.
SamplerPtr theSampler
 The phase space sampler responsible for generating phase space points according to the cross section given by this event handler.
int theLumiDim
 The number of phase space dimensions used by the luminosity function.

Static Private Attributes

static ClassDescription
< StandardEventHandler
initStandardEventHandler
 Standard Initialization object.


Detailed Description

The StandardEventHandler class is the main class for generating simple events without overlayed collisions.

It is derived from the basic EventHandler class.

Besides the standard doinit() method, the StandardEventHandler needs to be separately initialized with the initialize() method. In the dofinish() method statistics is written out to the EventGenerators default output file.

See also:
The interfaces defined for StandardEventHandler.

EventHandler

EventGenerator

Event

Definition at line 43 of file StandardEventHandler.h.


Member Typedef Documentation

A vector of SubProcessHandlers.

Definition at line 48 of file StandardEventHandler.h.

A weighted list of pointers to StandardXComb objects.

Definition at line 51 of file StandardEventHandler.h.

A vector of pointers to StandardXComb objects.

Definition at line 54 of file StandardEventHandler.h.

A vector of cross sections.

Definition at line 57 of file StandardEventHandler.h.

Map of pointers to StandardXComb objects indexed by pointers to the corresponding MEBase object.

Definition at line 61 of file StandardEventHandler.h.


Member Function Documentation

virtual CrossSection ThePEG::StandardEventHandler::histogramScale (  )  const [virtual]

Histogram scale.

A histogram bin which has been filled with the weights associated with the Event objects should be scaled by this factor to give the correct cross section.

Reimplemented from ThePEG::EventHandler.

virtual CrossSection ThePEG::StandardEventHandler::integratedXSec (  )  const [virtual]

The estimated total integrated cross section of the processes generated in this run.

Returns:
0 if no integrated cross section could be estimated.

Reimplemented from ThePEG::EventHandler.

virtual CrossSection ThePEG::StandardEventHandler::integratedXSecErr (  )  const [virtual]

The estimated error int total integrated cross section of the processes generated in this run.

Returns:
0 if no integrated cross section error could be estimated.

Reimplemented from ThePEG::EventHandler.

virtual CrossSection ThePEG::StandardEventHandler::dSigDR ( const vector< double > &  r  )  [virtual]

Return the cross section for the chosen phase space point.

Parameters:
r a vector of random numbers to be used in the generation of a phase space point.

tCutsPtr ThePEG::StandardEventHandler::cuts (  )  const [inline]

Return a reference to the Cuts of this EventHandler.

Note that these cuts may be overridden by the SubProcess chosen.

Reimplemented from ThePEG::EventHandler.

Definition at line 147 of file StandardEventHandler.h.

References theCuts.

virtual CrossSection ThePEG::StandardEventHandler::dSigDR ( const pair< double, double >  ll,
Energy2  maxS,
int  ibin,
int  nr,
const double *  r 
) [protected, virtual]

Generate a phase space point and return the corresponding cross section.

Is called from sSigDR(const vector<double> &).

Parameters:
ll a pair of doubles giving the logarithms of the (inverse energy fractions of the maximum CMS energy of the incoming particles.
maxS the maximum squared CMS energy of the incoming particles.
ibin the preselected bin of StandardXComb objects to choose sub-process from
nr the number of random numbers availiable in r.
r an array of random numbers to be used to generate a phase-space point.

tStdXCombPtr ThePEG::StandardEventHandler::select ( int  bin,
double &  weight 
) [protected]

Select an StandardXComb.

Given a preselected bin, ibin of StandardXComb objects pick one to generate the corresponding sub-process with the given weight.

void ThePEG::StandardEventHandler::addME ( Energy  maxEnergy,
tSubHdlPtr  sub,
tPExtrPtr  extractor,
tCutsPtr  cuts,
tCascHdlPtr  ckkw,
tMEPtr  me,
const PBPair pBins 
) [protected]

Create and add StandardXComb objects.

Parameters:
maxEnergy the maximum CMS energy of the incoming particles.
sub a pointer to the SubProcessHandler object.
extractor a pointer to the PartonExtractor object.
cuts a pointer to the Cuts object.
ckkw a pointer to a CascadeHandler to be used for CKKW reweighting.
me a pointer to the MEBase object.
pBins a pair of PartonBins describing the partons extracted from the particles

virtual void ThePEG::StandardEventHandler::initGroups (  )  [protected, virtual]

Initialize groups of StepHandlers.

This overrides the method in the EventHandler, and the StepHandlers given in the currently selected SubProcess take precedence over the ones specified in the EventHandler sub class.

Reimplemented from ThePEG::EventHandler.

LorentzRotation& ThePEG::StandardEventHandler::currentEventBoost (  )  [inline, protected]

Return the boost needed to transform the current collision from the CMS system to the lab system.

By default this is the unit transformation, but an EventHandler derived from this class may override it.

Definition at line 240 of file StandardEventHandler.h.

References theCurrentEventBoost.

int ThePEG::StandardEventHandler::binStrategy (  )  const [inline, protected]

Return the strategy to be used when sampling different StandardXComb objects.

Returns:
0 if all StandardXComb objects are sampled together. 1 if all StandardXComb objects which have the same matrix element object are sampled together. 2 if all StandardXComb objects are sampled separately.

Definition at line 274 of file StandardEventHandler.h.

References theBinStrategy.

virtual void ThePEG::StandardEventHandler::doinit (  )  [virtual]

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions:
InitException if object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.

virtual void ThePEG::StandardEventHandler::doinitrun (  )  [virtual]

Initialize this object.

Called in the run phase just before a run begins.

Reimplemented from ThePEG::InterfacedBase.

virtual void ThePEG::StandardEventHandler::dofinish (  )  [virtual]

Finalize this object.

Called in the run phase just after a run has ended. Writes out statistics on the generation.

Reimplemented from ThePEG::EventHandler.

void ThePEG::StandardEventHandler::persistentOutput ( PersistentOStream os  )  const

Function used to write out object persistently.

Parameters:
os the persistent output stream written to.

Reimplemented from ThePEG::EventHandler.

void ThePEG::StandardEventHandler::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters:
is the persistent input stream read from.
version the version number of the object when written.

Reimplemented from ThePEG::EventHandler.

virtual IBPtr ThePEG::StandardEventHandler::clone (  )  const [protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Reimplemented from ThePEG::EventHandler.

virtual IBPtr ThePEG::StandardEventHandler::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::EventHandler.

void ThePEG::StandardEventHandler::reject ( double  weight  )  [protected]

Reject a (partially) generated event.

Parameters:
weight the weight given for the event.


Member Data Documentation

The strategy to be used when sampling different StandardXComb objects.

0 means all StandardXComb objects are sampled together. 1 means all StandardXComb objects which have the same matrix element object are sampled together. 2 means all StandardXComb objects are sampled separately.

Definition at line 412 of file StandardEventHandler.h.

Referenced by binStrategy().


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

Generated on Thu Apr 29 12:43:05 2010 for ThePEG by  doxygen 1.5.5