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. | |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
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). | |
Event (const Event &) | |
The copy constructor. | |
~Event () | |
The destructor. | |
EventPtr | clone () const |
Returns a full clone of this Event. | |
tcEventBasePtr | handler () const |
Return a pointer to the EventHandler which produced this Event. | |
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. | |
template<class OutputIterator > | |
void | selectFinalState (OutputIterator r) const |
Extract all final state particles in this Event. | |
template<class Container > | |
void | getFinalState (Container &c) const |
Extract all final state particles in this Event. | |
tPVector | getFinalState () const |
Extract all final state particles in this Event. | |
tCollPtr | primaryCollision () const |
Return a pointer to the primary Collision in this Event. | |
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. | |
const PPair & | incoming () const |
Return a reference to the pair of colliding particles in the primary Collision of this Event. | |
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. | |
void | transform (const LorentzRotation &) |
Transform all particles in this Event. | |
long | number () const |
Return the number assigned to this Event. | |
int | colourLineIndex (tcColinePtr) const |
Return the index of the given colour line. | |
Public Member Functions inherited from ThePEG::Base | |
virtual | ~Base () |
The virtual destructor. | |
void | debug () const |
Print out debugging information for this object on std::cerr. | |
virtual void | debugme () const |
Print out debugging information for this object on std::cerr. | |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Return the reference count. | |
Public Member Functions inherited from ThePEG::Named | |
Named (const string &newName=string()) | |
Constructor with name. | |
Named (const Named &)=default | |
Explicit default copy-constructor (too avoid compiler warnings) | |
const string & | name () const |
Return name. | |
bool | operator== (const Named &other) const |
Test for equality. | |
bool | operator< (const Named &other) const |
Lexicographical comparison. | |
Friends | |
class | EventHandler |
EventHandler is a friend of most Event classes. | |
class | Collision |
Most of the Event classes are friends with each other. | |
Functions for removing entires from an Event. | |
struct | ClassTraits< Event > |
The ClassTraits<Event> class must be a friend to be able to use the private default constructor. | |
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. | |
map< string, AnyReference > | theMeta |
The meta information. | |
static ClassDescription< Event > | initEvent |
Describe concrete class with persistent data. | |
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. | |
void | cleanSteps () |
Remove all steps which have no new particles introduced in them. | |
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. | |
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. | |
bool | hasMeta (const string &id) const |
Check for meta information. | |
template<class T > | |
void | meta (const string &id, T &ref) |
Set meta information. | |
void | eraseMeta (const string &id) |
Erase meta information. | |
template<class T > | |
T & | meta (const string &id) const |
Retrieve meta information. | |
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. | |
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. | |
void | removeSubProcess (tSubProPtr p) |
Remove a SubProcess from this Event. | |
void | addStep (tStepPtr s) |
Add a new Step to this Collision. | |
void | removeEntry (tPPtr p) |
Remove a given Particle entry. | |
void | rebind (const EventTranslationMap &trans) |
Rebind to cloned objects. | |
static void | Init () |
Standard Init function. | |
Event () | |
Private default constructor must only be used by the PersistentIStream class via the ClassTraits<Event> class . | |
Event & | operator= (const Event &)=delete |
The assignment operator is private and not implemented. | |
Additional Inherited Members | |
Static Public Member Functions inherited from ThePEG::Base | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
The unique ID. | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted () | |
Default constructor. | |
ReferenceCounted (const ReferenceCounted &) | |
Copy-constructor. | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Assignment. | |
Protected Member Functions inherited from ThePEG::Named | |
const Named & | operator= (const Named &other) |
Assignment. | |
const string & | name (const string &newName) |
Set new name. | |
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.
|
inlineprivate |
Private default constructor must only be used by the PersistentIStream class via the ClassTraits<Event> class .
|
inlineprotected |
Add a range of particles to this Collision.
Definition at line 303 of file Event.h.
References addParticle().
|
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 317 of file Event.h.
References allSubProcesses.
EventPtr ThePEG::Event::clone | ( | ) | const |
|
inline |
Return a possibly empty list of collisions in this Event.
Definition at line 147 of file Event.h.
References theCollisions.
Referenced by primaryCollision(), and primarySubProcess().
|
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 |
|
inline |
Extract all final state particles in this Event.
Definition at line 130 of file Event.h.
References selectFinalState().
|
inline |
Extract all final state particles in this Event.
c | a container where the extracted (pointers to) particles will be appended. |
Definition at line 122 of file Event.h.
References ThePEG::inserter(), and selectFinalState().
|
inline |
Return a pointer to the EventHandler which produced this Event.
May be the null pointer.
Definition at line 91 of file Event.h.
References theHandler.
|
inline |
|
inline |
Return a reference to the pair of colliding particles in the primary Collision of this Event.
Definition at line 159 of file Event.h.
References theIncoming.
|
static |
Standard Init function.
|
inline |
|
inline |
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 |
Access the optional named weights associated to this event.
Definition at line 247 of file Event.h.
References theOptionalWeights.
|
inline |
Return the optional named weights associated to this event.
Definition at line 227 of file Event.h.
References theOptionalWeights.
|
inline |
Return a pointer to the primary Collision in this Event.
May be the null pointer.
Definition at line 140 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 495 of file Event.h.
References collisions(), primaryCollision(), and primarySubProcess().
Referenced by primarySubProcess().
|
protected |
void ThePEG::Event::removeParticle | ( | tPPtr | ) |
|
inlineprotected |
Remove a SubProcess from this Event.
Definition at line 324 of file Event.h.
References allSubProcesses.
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 502 of file Event.h.
References 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 112 of file Event.h.
References select().
Referenced by getFinalState().
|
inline |
|
inline |
|
friend |
|
friend |
|
friend |
EventHandler is a friend of most Event classes.
|
private |
|
private |
|
private |
A set of all sub-processes in this Event.
Definition at line 386 of file Event.h.
Referenced by addSubProcess(), and removeSubProcess().
|
staticprivate |
|
private |
A vector of collisions in this Event.
Definition at line 376 of file Event.h.
Referenced by collisions(), and select().
|
mutableprivate |
|
private |
A pointer to the EventHandler which performed the generation of this Event.
Definition at line 397 of file Event.h.
Referenced by handler().
|
private |
|
private |
The meta information.
Definition at line 427 of file Event.h.
Referenced by eraseMeta(), hasMeta(), and meta().
|
private |
|
private |
|
private |
|
private |