![]() |
eic-smear
1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
|
#include <EventMC.h>
Public Member Functions | |
EventMC () | |
virtual | ~EventMC () |
virtual ULong64_t | GetN () const |
virtual Int_t | GetProcess () const |
virtual UInt_t | GetNTracks () const |
virtual const ParticleMC * | GetTrack (UInt_t) const |
virtual ParticleMC * | GetTrack (UInt_t) |
virtual const ParticleMC * | BeamLepton () const |
virtual const ParticleMC * | BeamHadron () const |
virtual const ParticleMC * | ExchangeBoson () const |
virtual const ParticleMC * | ScatteredLepton () const |
virtual bool | Parse (const std::string &)=0 |
virtual void | AddLast (ParticleMC *track) |
virtual void | Reset () |
virtual void | Clear (Option_t *="") |
virtual void | SetProcess (int code) |
virtual void | SetN (int n) |
virtual void | SetNTracks (int n) |
virtual void | SetELeptonInNuclearFrame (double energy) |
virtual void | SetEScatteredInNuclearFrame (double energy) |
void | FinalState (ParticlePtrList &particles) const |
void | HadronicFinalState (ParticlePtrList &) const |
TLorentzVector | FinalStateMomentum () const |
TLorentzVector | HadronicFinalStateMomentum () const |
Double_t | FinalStateCharge () const |
std::vector< const VirtualParticle * > | GetTracks () const |
![]() | |
virtual | ~EventDis () |
EventDis () | |
EventDis (const EventDis &) | |
EventDis & | operator= (const EventDis &) |
virtual Double_t | GetX () const |
virtual Double_t | GetQ2 () const |
virtual Double_t | GetY () const |
virtual Double_t | GetYPlus () const |
virtual Double_t | GetW2 () const |
virtual Double_t | GetNu () const |
virtual double | GetXDoubleAngle () const |
virtual double | GetQ2DoubleAngle () const |
virtual double | GetYDoubleAngle () const |
virtual double | GetW2DoubleAngle () const |
virtual double | GetXJacquetBlondel () const |
virtual double | GetQ2JacquetBlondel () const |
virtual double | GetYJacquetBlondel () const |
virtual double | GetW2JacquetBlondel () const |
virtual void | SetLeptonKinematics (const DisKinematics &) |
virtual void | SetJacquetBlondelKinematics (const DisKinematics &) |
virtual void | SetDoubleAngleKinematics (const DisKinematics &) |
virtual void | CopyKinematics (const EventDis &) |
![]() | |
virtual | ~VirtualEvent () |
Protected Attributes | |
Int_t | number |
Event number. | |
Int_t | process |
PYTHIA code for the physics process producing the event. | |
Int_t | nTracks |
Number of Particles in the event (intermediate + final) | |
Double32_t | ELeptonInNucl |
Double32_t | ELeptonOutNucl |
TClonesArray | particles |
Particle list. | |
Additional Inherited Members | |
![]() | |
typedef std::vector< const erhic::VirtualParticle * > | ParticlePtrList |
![]() | |
Double32_t | x |
Bjorken scaling variable. | |
Double32_t | QSquared |
Q2 calculated from scattered electron. | |
Double32_t | y |
Inelasticity. | |
Double32_t | WSquared |
Invariant mass of the hadronic system. | |
Double32_t | nu |
Energy transfer from the electron. | |
Double32_t | yJB |
y calculated via the Jacquet-Blondel method | |
Double32_t | QSquaredJB |
Q2 calculated via the Jacquet-Blondel method. | |
Double32_t | xJB |
x calculated via the Jacquet-Blondel method | |
Double32_t | WSquaredJB |
W2 calculated via the Jacquet-Blondel method. | |
Double32_t | yDA |
y calculated via the double-angle method | |
Double32_t | QSquaredDA |
Q2 calculated via the double-angle method. | |
Double32_t | xDA |
x calculated via the double-angle method | |
Double32_t | WSquaredDA |
W2 calculated via the double-angle method. | |
Abstract base class for DIS Monte Carlo events. Implements common event properties and methods.
erhic::EventMC::EventMC | ( | ) |
Constructor.
Definition at line 34 of file EventMC.cxx.
|
virtual |
Destructor.
Definition at line 43 of file EventMC.cxx.
|
virtual |
Add a copy of a track argument to the end of the track list.
[in] | Pointer | to the track to add. |
Definition at line 150 of file EventMC.cxx.
|
virtual |
Returns a pointer to the incident hadron beam particle. See also notes in BeamLepton().
In the standard eRHIC Monte Carlo format, the incident hadron beam is assumed to be the second particle in the particle list.
Implements erhic::EventDis.
Definition at line 126 of file EventMC.cxx.
|
virtual |
Returns a pointer to the incident lepton beam particle. Returns a NULL pointer if the particle cannot be located in the event. IMPORTANT - DO NOT DELETE THE POINTER OR BAD THINGS WILL HAPPEN!
In the standard eRHIC Monte Carlo format, the incident lepton beam is assumed to be the first particle in the particle list. This is the behaviour implemented here. Derived classes can implement other selection mechanisms depending on their data format.
Implements erhic::EventDis.
Definition at line 122 of file EventMC.cxx.
|
virtual |
Clears event contents. Event properties are reset to defaults and track list is deleted.
Definition at line 145 of file EventMC.cxx.
|
virtual |
Returns a pointer to the exchanged boson. See also notes in BeamLepton().
In the standard eRHIC Monte Carlo format, the exchanged boson is assumed to be the third particle in the particle list.
Implements erhic::EventDis.
Reimplemented in erhic::EventDjangoh, and erhic::EventPepsi.
Definition at line 130 of file EventMC.cxx.
void erhic::EventMC::FinalState | ( | ParticlePtrList & | particles | ) | const |
Stores pointers to all final state particles in the list. These pointers should not be deleted by the user. Any existing entries in the list are not changed.
[out] | particles | The list in which to store particles. |
Definition at line 73 of file EventMC.cxx.
Double_t erhic::EventMC::FinalStateCharge | ( | ) | const |
Returns the total charge of the final state in units of e.
Definition at line 106 of file EventMC.cxx.
TLorentzVector erhic::EventMC::FinalStateMomentum | ( | ) | const |
Returns the total momentum of the final state in GeV/c.
Definition at line 84 of file EventMC.cxx.
|
inlinevirtual |
|
inlinevirtual |
Returns the number of tracks in the event.
Implements erhic::VirtualEvent.
|
inlinevirtual |
|
inlinevirtual |
Returns the nth track. Returns NULL if the track number is out of the range [0, GetNTracks()).
[in] | The | track index, in the range [0, GetNTracks()). |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Implements erhic::VirtualEvent.
|
inlinevirtual |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Implements erhic::VirtualEvent.
TrackVector erhic::EventMC::GetTracks | ( | ) | const |
Returns pointers to all tracks in the event. Do not delete the pointers.
Definition at line 48 of file EventMC.cxx.
|
virtual |
Yields all particles that belong to the hadronic final state. This is the same as the result of FinalState(), minus the scattered beam lepton.
Reimplemented from erhic::VirtualEvent.
Definition at line 58 of file EventMC.cxx.
TLorentzVector erhic::EventMC::HadronicFinalStateMomentum | ( | ) | const |
Returns the total momentum of the hadronic final state in GeV/c.
Definition at line 95 of file EventMC.cxx.
|
pure virtual |
Populates the event-wise variables from a string. Does not populate the particle list or compute derived quantities. See also Compute().
Implemented in erhic::EventPythia, erhic::EventGmcTrans, erhic::EventDjangoh, erhic::EventMilou, erhic::EventPepsi, erhic::EventDpmjet, and erhic::EventRapgap.
|
virtual |
Resets event properties to defaults. Does not clear particle list - use Clear() for that.
Definition at line 138 of file EventMC.cxx.
|
virtual |
Returns a pointer to the lepton beam particle after scattering. See also notes in BeamLepton().
In the standard eRHIC Monte Carlo format, the scattered lepton beam is assumed to be the first final-state particle in the particle list with the same PDG code as the incident lepton beam.
Implements erhic::EventDis.
Reimplemented in erhic::EventPythia, erhic::EventDjangoh, and erhic::EventPepsi.
Definition at line 134 of file EventMC.cxx.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
protected |
|
protected |