ThePEG
1.8.0
|
The Event class contains all Particles produced in the generation of an event. More...
#include <Event.h>
Public Types | |
typedef map< tcColinePtr, int > | ColourLineMap |
Map colour lines to indices. More... | |
![]() | |
typedef unsigned int | CounterType |
The integer type used for counting. | |
Public Member Functions | |
Event (const PPair &newIncoming, tcEventBasePtr newHandler=tcEventBasePtr(), string newName="", long newNumber=-1, double weight=1.0) | |
The standard constructor for an Event takes as arguments a pair of colliding particles (corresponding to the primary collision in case of multiple collisions in an event). More... | |
Event (const Event &) | |
The copy constructor. | |
~Event () | |
The destructor. | |
EventPtr | clone () const |
Returns a full clone of this Event. More... | |
tcEventBasePtr | handler () const |
Return a pointer to the EventHandler which produced this Event. More... | |
tCollPtr | newCollision () |
Create a new Collision in this event and return a pointer to it. | |
tStepPtr | newStep () |
Create a new Step in the current Collision, which is a copy of the last Step (if any) and return a pointer to it. More... | |
void | transform (const LorentzRotation &) |
Transform all particles in this Event. | |
long | number () const |
Return the number assigned to this Event. More... | |
int | colourLineIndex (tcColinePtr) const |
Return the index of the given colour line. | |
double | weight () const |
Return the weight associated with this event. | |
double | optionalWeight (const string &name) const |
Return an optional named weight associated to this event. More... | |
const map< string, double > & | optionalWeights () const |
Return the optional named weights associated to this event. | |
void | printGraphviz () const |
Print this Event in Graphviz format on the standard output. | |
void | weight (double w) |
Set the weight associated with this event. | |
void | optionalWeight (const string &name, double value) |
Set an optional named weight associated to this event. | |
map< string, double > & | optionalWeights () |
Access the optional named weights associated to this event. | |
void | setInfo (tcEventBasePtr newHandler, string newName, long newNumber, double weight) |
Set event info. | |
void | addCollision (tCollPtr c) |
Add a collision to this Event. | |
void | primaryCollision (tCollPtr c) |
Set the primary collision in this Event. | |
void | persistentOutput (PersistentOStream &) const |
Standard function for writing to a persistent stream. | |
void | persistentInput (PersistentIStream &, int) |
Standard functions for reading from a persistent stream. | |
virtual void | debugme () const |
Print out debugging information for this object on std::cerr. More... | |
Functions for accessing particles etc. | |
template<class OutputIterator > | |
void | select (OutputIterator r, const SelectorBase &s) const |
Extract particles from this event which satisfies the requirements given by an object of the SelectorBase class. More... | |
template<class OutputIterator > | |
void | selectFinalState (OutputIterator r) const |
Extract all final state particles in this Event. More... | |
template<class Container > | |
void | getFinalState (Container &c) const |
Extract all final state particles in this Event. More... | |
tPVector | getFinalState () const |
Extract all final state particles in this Event. More... | |
tCollPtr | primaryCollision () const |
Return a pointer to the primary Collision in this Event. More... | |
const CollisionVector & | collisions () const |
Return a possibly empty list of collisions in this Event. | |
tSubProPtr | primarySubProcess () const |
Return a pointer to the primary SubProcess in the prinmary Collision in this Event. More... | |
const PPair & | incoming () const |
Return a reference to the pair of colliding particles in the primary Collision of this Event. | |
Functions for removing entires from an Event. | |
void | removeDecay (tPPtr) |
Remove (recursively) the decay products from a given Particle and add the particle to the list of final state particles. | |
void | removeParticle (tPPtr) |
Remove the given Particle from the Collision. More... | |
void | cleanSteps () |
Remove all steps which have no new particles introduced in them. | |
![]() | |
virtual | ~Base () |
The virtual destructor. | |
void | debug () const |
Print out debugging information for this object on std::cerr. More... | |
![]() | |
CounterType | referenceCount () const |
Return the reference count. | |
![]() | |
Named (const string &newName=string()) | |
Constructor with name. | |
const string & | name () const |
Return name. | |
bool | operator== (const Named &other) const |
Test for equality. | |
bool | operator< (const Named &other) const |
Lexicographical comparison. | |
Static Public Member Functions | |
static void | Init () |
Standard Init function. More... | |
![]() | |
static void | Init () |
The standard Init function used to initialize the interfaces. More... | |
Protected Member Functions | |
template<class Iterator > | |
void | addParticles (Iterator first, Iterator last) |
Add a range of particles to this Collision. | |
void | addParticle (tPPtr p) |
Add a particle to this Collision. | |
void | addSubProcess (tSubProPtr p) |
Add a new SubProcess to this Event. More... | |
void | removeSubProcess (tSubProPtr p) |
Remove a SubProcess from this Event. | |
void | addStep (tStepPtr s) |
Add a new Step to this Collision. More... | |
void | removeEntry (tPPtr p) |
Remove a given Particle entry. | |
void | rebind (const EventTranslationMap &trans) |
Rebind to cloned objects. More... | |
![]() | |
ReferenceCounted () | |
Default constructor. | |
ReferenceCounted (const ReferenceCounted &) | |
Copy-constructor. | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Assignment. | |
![]() | |
const Named & | operator= (const Named &other) |
Assignment. | |
const string & | name (const string &newName) |
Set new name. | |
Private Member Functions | |
Event () | |
Private default constructor must only be used by the PersistentIStream class via the ClassTraits<Event> class . | |
Event & | operator= (const Event &) |
The assignment operator is private and not implemented. | |
Private Attributes | |
PPair | theIncoming |
The pair of colliding particles. | |
CollisionVector | theCollisions |
A vector of collisions in this Event. | |
StepSet | allSteps |
A set of all particles in this Event. | |
SubProcessSet | allSubProcesses |
A set of all sub-processes in this Event. | |
ParticleSet | allParticles |
A set of all particles in this Event. | |
tcEventBasePtr | theHandler |
A pointer to the EventHandler which performed the generation of this Event. | |
ColourLineMap | theColourLines |
Map of all registered colour lines to their index numbers. | |
long | theNumber |
The number assigned to this Event. | |
double | theWeight |
The weight associated with this event. | |
map< string, double > | theOptionalWeights |
Optional named weights. | |
long | theParticleNumber |
Counter to keep track of particle numbering. | |
Static Private Attributes | |
static ClassDescription< Event > | initEvent |
Describe concrete class with persistent data. | |
Friends | |
class | EventHandler |
EventHandler is a friend of most Event classes. | |
class | Collision |
Most of the Event classes are friends with each other. More... | |
struct | ClassTraits< Event > |
The ClassTraits<Event> class must be a friend to be able to use the private default constructor. | |
Additional Inherited Members | |
![]() | |
const unsigned long | uniqueId |
The unique ID. More... | |
The Event class contains all Particles produced in the generation of an event.
The particles are divided into Collisions corresponding to the actiual collisions between incoming particles in a bunch crossing.
Event inherits from the Named which holds the name of an event.
typedef map<tcColinePtr, int> ThePEG::Event::ColourLineMap |
ThePEG::Event::Event | ( | const PPair & | newIncoming, |
tcEventBasePtr | newHandler = tcEventBasePtr() , |
||
string | newName = "" , |
||
long | newNumber = -1 , |
||
double | weight = 1.0 |
||
) |
The standard constructor for an Event takes as arguments a pair of colliding particles (corresponding to the primary collision in case of multiple collisions in an event).
Optionally a pointer to the EventHandler which performed the generation, an event name and event number can be given.
|
inlineprotected |
|
inlineprotected |
Add a new SubProcess to this Event.
For book keeping purposes only. The sub-processes are accessed from the different Collisions in this Event.
Definition at line 284 of file Event.h.
References allSubProcesses.
EventPtr ThePEG::Event::clone | ( | ) | const |
|
virtual |
Print out debugging information for this object on std::cerr.
To be called from within a debugger via the debug() function.
Reimplemented from ThePEG::Base.
|
inline |
Extract all final state particles in this Event.
c | a container where the extracted (pointers to) particles will be appended. |
Definition at line 121 of file Event.h.
References ThePEG::inserter(), and selectFinalState().
|
inline |
Extract all final state particles in this Event.
Definition at line 129 of file Event.h.
References selectFinalState().
|
inline |
Return a pointer to the EventHandler which produced this Event.
May be the null pointer.
Definition at line 90 of file Event.h.
References theHandler.
|
static |
Standard Init function.
tStepPtr ThePEG::Event::newStep | ( | ) |
|
inline |
double ThePEG::Event::optionalWeight | ( | const string & | name | ) | const |
Return an optional named weight associated to this event.
Returns 0, if no weight identified by this name is present.
|
inline |
Return a pointer to the primary Collision in this Event.
May be the null pointer.
Definition at line 139 of file Event.h.
References collisions().
Referenced by primarySubProcess(), and select().
|
inline |
Return a pointer to the primary SubProcess in the prinmary Collision in this Event.
May be the null pointer.
Definition at line 457 of file Event.h.
References collisions(), and primaryCollision().
|
protected |
void ThePEG::Event::removeParticle | ( | tPPtr | ) |
void ThePEG::Event::select | ( | OutputIterator | r, |
const SelectorBase & | s | ||
) | const |
Extract particles from this event which satisfies the requirements given by an object of the SelectorBase class.
r | an output iterator specifying where the extracted (pointers to) particles will be appended. |
s | SelectorBase object defining which particles should be extracted. |
Definition at line 464 of file Event.h.
References ThePEG::SelectorBase::allCollisions(), primaryCollision(), and theCollisions.
Referenced by selectFinalState().
|
inline |
Extract all final state particles in this Event.
r | an output iterator specifying where the extracted (pointers to) particles will be appended. |
Definition at line 111 of file Event.h.
References select().
Referenced by getFinalState().
|
friend |