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
erhic::EventPepsi Class Reference

Describes an event from the generator PEPSI. More...

#include <EventPepsi.h>

Inheritance diagram for erhic::EventPepsi:
erhic::EventMC erhic::EventDis erhic::VirtualEvent

Public Member Functions

virtual bool Parse (const std::string &)
 Parses the event information from a text string with the following format (no newlines): \verbatime "I ievent genevent process subprocess nucleon struckparton, partontrck trueY trueQ2 trueX trueW2 trueNu FixedWeight, weight dxsec Extraweight dilut F1 F2 A1 A2 R Depol d, eta eps chi gendilut genF1 genF2 genA1 genA2 genR genDepol, gend geneta geneps genchi Sigcor radgamEnucl nrTracks" Returns true in the event of a successful read operation, false in case of an error. More...
 
virtual const ParticleMCExchangeBoson () const
 Returns a pointer to the exchange boson, or NULL if it cannot be found. More...
 
virtual const ParticleMCScatteredLepton () const
 Returns a pointer to the scattered lepton, or NULL if it cannot be found. More...
 
- Public Member Functions inherited from erhic::EventMC
 EventMC ()
 Constructor. More...
 
virtual ~EventMC ()
 Destructor. More...
 
virtual bool RequiresEaParticleFields ()
 
virtual ULong64_t GetN () const
 Returns a unique identifier for this event. More...
 
virtual Int_t GetProcess () const
 Returns a code describing the production process of this event. More...
 
virtual UInt_t GetNTracks () const
 Returns the number of tracks in the event. More...
 
virtual const ParticleMCGetTrack (UInt_t) const
 Returns the nth track. More...
 
virtual ParticleMCGetTrack (UInt_t)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual const ParticleMCBeamLepton () const
 Returns a pointer to the incident lepton beam particle. More...
 
virtual const ParticleMCBeamHadron () const
 Returns a pointer to the incident hadron beam particle. More...
 
virtual void AddLast (ParticleMC *track)
 Add a copy of a track argument to the end of the track list. More...
 
virtual void Reset ()
 Resets event properties to defaults. More...
 
virtual void Clear (Option_t *="")
 Clears event contents. More...
 
virtual void SetProcess (int code)
 Sets the code describing the production process of this event. More...
 
virtual void SetN (int n)
 Sets the unique identifier for this event. More...
 
virtual void SetNTracks (int n)
 Sets the track count for this event. More...
 
virtual void SetELeptonInNuclearFrame (double energy)
 Set incident lepton energy in the nuclear rest frame. More...
 
virtual void SetEScatteredInNuclearFrame (double energy)
 Set scattered lepton energy in the nuclear rest frame. More...
 
void FinalState (ParticlePtrList &particles) const
 Stores pointers to all final state particles in the list. More...
 
void HadronicFinalState (ParticlePtrList &) const
 Yields all particles that belong to the hadronic final state. More...
 
TLorentzVector FinalStateMomentum () const
 Returns the total momentum of the final state in GeV/c. More...
 
TLorentzVector HadronicFinalStateMomentum () const
 Returns the total momentum of the hadronic final state in GeV/c. More...
 
Double_t FinalStateCharge () const
 Returns the total charge of the final state in units of e. More...
 
std::vector< const VirtualParticle * > GetTracks () const
 Returns pointers to all tracks in the event. More...
 
- Public Member Functions inherited from erhic::EventDis
virtual ~EventDis ()
 Destructor. More...
 
 EventDis ()
 Default constructor. More...
 
 EventDis (const EventDis &)
 Constructor copying another event's kinematics. More...
 
EventDisoperator= (const EventDis &)
 Assign another event's kinematics to this EventDis. More...
 
virtual Double_t GetX () const
 Returns Bjorken-x of the event. More...
 
virtual Double_t GetQ2 () const
 Returns the four-momentum transfer (exchange boson mass) Q2. More...
 
virtual Double_t GetY () const
 Returns the event inelasticity. More...
 
virtual Double_t GetYPlus () const
 Returns Y+ = y2 / (1 + (1-y)2) More...
 
virtual Double_t GetW2 () const
 Returns the invariant mass of the hadronic final state. More...
 
virtual Double_t GetNu () const
 Returns the exchange boson energy in the beam hadron rest frame. More...
 
virtual double GetXDoubleAngle () const
 Returns Bjorken x computed via the double-angle method. More...
 
virtual double GetQ2DoubleAngle () const
 Returns Q-squared computed via the double-angle method. More...
 
virtual double GetYDoubleAngle () const
 Returns inelasticity computed via the double-angle method. More...
 
virtual double GetW2DoubleAngle () const
 Returns W-squared computed via the double-angle method. More...
 
virtual double GetXJacquetBlondel () const
 Returns Bjorken x computed via the Jacquet-Blondel method. More...
 
virtual double GetQ2JacquetBlondel () const
 Returns Q-squared computed via the Jacquet-Blondel method. More...
 
virtual double GetYJacquetBlondel () const
 Returns inelasticity computed via the Jacquet-Blondel method. More...
 
virtual double GetW2JacquetBlondel () const
 Returns W-squared computed via the Jacquet-Blondel method. More...
 
virtual void SetLeptonKinematics (const DisKinematics &)
 Set the kinematics computed from the scattered lepton. More...
 
virtual void SetJacquetBlondelKinematics (const DisKinematics &)
 Set the kinematics computed from the Jacquet-Blondel method. More...
 
virtual void SetDoubleAngleKinematics (const DisKinematics &)
 Set the kinematics computed from the double-angle method. More...
 
virtual void CopyKinematics (const EventDis &)
 Copy the kinematics from another event to this event. More...
 
- Public Member Functions inherited from erhic::VirtualEvent
virtual ~VirtualEvent ()
 Destructor. More...
 

Public Attributes

Int_t nucleon
 PDG code of the hadron beam. More...
 
Int_t struckparton
 Parton hit in the target LST(25) More...
 
Int_t partontrck
 Number of parton track LST(26) More...
 
Int_t genevent
 Trials required for this event. More...
 
Int_t subprocess
 PEPSI subprocess LST(23) More...
 
Double32_t trueY
 Generated y of the event. More...
 
Double32_t trueQ2
 Generated Q2 of the event. More...
 
Double32_t trueX
 Generated x of the event. More...
 
Double32_t trueW2
 Generated W2 of the event. More...
 
Double32_t trueNu
 Generated nu of the event. More...
 
Double32_t FixedWeight
 Weight calculated from generation limits. More...
 
Double32_t Weight
 Total weight including everything. More...
 
Double32_t dxsec
 Cross section included in the weight. More...
 
Double32_t ExtraWeight
 PEPSI total cross section in pb from numerical integration PARL(23) More...
 
Double32_t Dilute
 True variables needed to calculate g1 More...
 
Double32_t F1
 True variables needed to calculate g1 More...
 
Double32_t F2
 True variables needed to calculate g1 More...
 
Double32_t A1
 True variables needed to calculate g1 More...
 
Double32_t A2
 True variables needed to calculate g1 More...
 
Double32_t R
 True variables needed to calculate g1 More...
 
Double32_t DePol
 True variables needed to calculate g1 More...
 
Double32_t D
 True variables needed to calculate g1 More...
 
Double32_t Eta
 True variables needed to calculate g1 More...
 
Double32_t Eps
 True variables needed to calculate g1 More...
 
Double32_t Chi
 True variables needed to calculate g1 More...
 
Double32_t gendilut
 Needed to calculate g1. More...
 
Double32_t genF1
 Needed to calculate g1. More...
 
Double32_t genF2
 Needed to calculate g1. More...
 
Double32_t genA1
 Needed to calculate g1. More...
 
Double32_t genA2
 Needed to calculate g1. More...
 
Double32_t genR
 Needed to calculate g1. More...
 
Double32_t genDepol
 Needed to calculate g1. More...
 
Double32_t gend
 Needed to calculate g1. More...
 
Double32_t geneta
 Needed to calculate g1. More...
 
Double32_t geneps
 Needed to calculate g1. More...
 
Double32_t genchi
 Needed to calculate g1. More...
 
Double32_t SigCorr
 Needed in the radiative correction code. More...
 
Double32_t radgamEnucl
 
- Public Attributes inherited from erhic::EventDis
Double32_t x
 Bjorken scaling variable. More...
 
Double32_t QSquared
 Q2 calculated from scattered electron. More...
 
Double32_t y
 Inelasticity. More...
 
Double32_t WSquared
 Invariant mass of the hadronic system. More...
 
Double32_t nu
 Energy transfer from the electron. More...
 
Double32_t yJB
 y calculated via the Jacquet-Blondel method More...
 
Double32_t QSquaredJB
 Q2 calculated via the Jacquet-Blondel method. More...
 
Double32_t xJB
 x calculated via the Jacquet-Blondel method More...
 
Double32_t WSquaredJB
 W2 calculated via the Jacquet-Blondel method. More...
 
Double32_t yDA
 y calculated via the double-angle method More...
 
Double32_t QSquaredDA
 Q2 calculated via the double-angle method. More...
 
Double32_t xDA
 x calculated via the double-angle method More...
 
Double32_t WSquaredDA
 W2 calculated via the double-angle method. More...
 

Additional Inherited Members

- Public Types inherited from erhic::VirtualEvent
typedef std::vector< const erhic::VirtualParticle * > ParticlePtrList
 typedef for a track pointer collection. More...
 
- Protected Attributes inherited from erhic::EventMC
Int_t number
 Event number. More...
 
Int_t process
 PYTHIA code for the physics process producing the event. More...
 
Int_t nTracks
 Number of Particles in the event (intermediate + final) More...
 
Double32_t ELeptonInNucl
 Incident lepton energy in the nuclear rest frame. More...
 
Double32_t ELeptonOutNucl
 Scattered lepton energy in the nuclear rest frame. More...
 
TClonesArray particles
 Particle list. More...
 

Detailed Description

Describes an event from the generator PEPSI.

Todo:
Add accessor and setter methods

Definition at line 26 of file EventPepsi.h.

Member Function Documentation

◆ ExchangeBoson()

const ParticleMC * erhic::EventPepsi::ExchangeBoson ( ) const
inlinevirtual

Returns a pointer to the exchange boson, or NULL if it cannot be found.

Reimplemented from erhic::EventMC.

Definition at line 100 of file EventPepsi.h.

◆ Parse()

bool erhic::EventPepsi::Parse ( const std::string &  line)
virtual

Parses the event information from a text string with the following format (no newlines): \verbatime "I ievent genevent process subprocess nucleon struckparton, partontrck trueY trueQ2 trueX trueW2 trueNu FixedWeight, weight dxsec Extraweight dilut F1 F2 A1 A2 R Depol d, eta eps chi gendilut genF1 genF2 genA1 genA2 genR genDepol, gend geneta geneps genchi Sigcor radgamEnucl nrTracks" Returns true in the event of a successful read operation, false in case of an error.

Implements erhic::EventMC.

Definition at line 17 of file EventPepsi.cxx.

◆ ScatteredLepton()

const ParticleMC * erhic::EventPepsi::ScatteredLepton ( ) const
inlinevirtual

Returns a pointer to the scattered lepton, or NULL if it cannot be found.

Reimplemented from erhic::EventMC.

Definition at line 104 of file EventPepsi.h.

Member Data Documentation

◆ A1

Double32_t erhic::EventPepsi::A1

True variables needed to calculate g1

Definition at line 71 of file EventPepsi.h.

◆ A2

Double32_t erhic::EventPepsi::A2

True variables needed to calculate g1

Definition at line 72 of file EventPepsi.h.

◆ Chi

Double32_t erhic::EventPepsi::Chi

True variables needed to calculate g1

Definition at line 78 of file EventPepsi.h.

◆ D

Double32_t erhic::EventPepsi::D

True variables needed to calculate g1

Definition at line 75 of file EventPepsi.h.

◆ DePol

Double32_t erhic::EventPepsi::DePol

True variables needed to calculate g1

Definition at line 74 of file EventPepsi.h.

◆ Dilute

Double32_t erhic::EventPepsi::Dilute

True variables needed to calculate g1

Definition at line 68 of file EventPepsi.h.

◆ dxsec

Double32_t erhic::EventPepsi::dxsec

Cross section included in the weight.

Definition at line 65 of file EventPepsi.h.

◆ Eps

Double32_t erhic::EventPepsi::Eps

True variables needed to calculate g1

Definition at line 77 of file EventPepsi.h.

◆ Eta

Double32_t erhic::EventPepsi::Eta

True variables needed to calculate g1

Definition at line 76 of file EventPepsi.h.

◆ ExtraWeight

Double32_t erhic::EventPepsi::ExtraWeight

PEPSI total cross section in pb from numerical integration PARL(23)

Definition at line 66 of file EventPepsi.h.

◆ F1

Double32_t erhic::EventPepsi::F1

True variables needed to calculate g1

Definition at line 69 of file EventPepsi.h.

◆ F2

Double32_t erhic::EventPepsi::F2

True variables needed to calculate g1

Definition at line 70 of file EventPepsi.h.

◆ FixedWeight

Double32_t erhic::EventPepsi::FixedWeight

Weight calculated from generation limits.

Definition at line 63 of file EventPepsi.h.

◆ genA1

Double32_t erhic::EventPepsi::genA1

Needed to calculate g1.

Definition at line 82 of file EventPepsi.h.

◆ genA2

Double32_t erhic::EventPepsi::genA2

Needed to calculate g1.

Definition at line 83 of file EventPepsi.h.

◆ genchi

Double32_t erhic::EventPepsi::genchi

Needed to calculate g1.

Definition at line 89 of file EventPepsi.h.

◆ gend

Double32_t erhic::EventPepsi::gend

Needed to calculate g1.

Definition at line 86 of file EventPepsi.h.

◆ genDepol

Double32_t erhic::EventPepsi::genDepol

Needed to calculate g1.

Definition at line 85 of file EventPepsi.h.

◆ gendilut

Double32_t erhic::EventPepsi::gendilut

Needed to calculate g1.

Definition at line 79 of file EventPepsi.h.

◆ geneps

Double32_t erhic::EventPepsi::geneps

Needed to calculate g1.

Definition at line 88 of file EventPepsi.h.

◆ geneta

Double32_t erhic::EventPepsi::geneta

Needed to calculate g1.

Definition at line 87 of file EventPepsi.h.

◆ genevent

Int_t erhic::EventPepsi::genevent

Trials required for this event.

Definition at line 56 of file EventPepsi.h.

◆ genF1

Double32_t erhic::EventPepsi::genF1

Needed to calculate g1.

Definition at line 80 of file EventPepsi.h.

◆ genF2

Double32_t erhic::EventPepsi::genF2

Needed to calculate g1.

Definition at line 81 of file EventPepsi.h.

◆ genR

Double32_t erhic::EventPepsi::genR

Needed to calculate g1.

Definition at line 84 of file EventPepsi.h.

◆ nucleon

Int_t erhic::EventPepsi::nucleon

PDG code of the hadron beam.

Definition at line 53 of file EventPepsi.h.

◆ partontrck

Int_t erhic::EventPepsi::partontrck

Number of parton track LST(26)

Definition at line 55 of file EventPepsi.h.

◆ R

Double32_t erhic::EventPepsi::R

True variables needed to calculate g1

Definition at line 73 of file EventPepsi.h.

◆ radgamEnucl

Double32_t erhic::EventPepsi::radgamEnucl

Definition at line 91 of file EventPepsi.h.

◆ SigCorr

Double32_t erhic::EventPepsi::SigCorr

Needed in the radiative correction code.

Definition at line 90 of file EventPepsi.h.

◆ struckparton

Int_t erhic::EventPepsi::struckparton

Parton hit in the target LST(25)

Definition at line 54 of file EventPepsi.h.

◆ subprocess

Int_t erhic::EventPepsi::subprocess

PEPSI subprocess LST(23)

Definition at line 57 of file EventPepsi.h.

◆ trueNu

Double32_t erhic::EventPepsi::trueNu

Generated nu of the event.

Definition at line 62 of file EventPepsi.h.

◆ trueQ2

Double32_t erhic::EventPepsi::trueQ2

Generated Q2 of the event.

Definition at line 59 of file EventPepsi.h.

◆ trueW2

Double32_t erhic::EventPepsi::trueW2

Generated W2 of the event.

Definition at line 61 of file EventPepsi.h.

◆ trueX

Double32_t erhic::EventPepsi::trueX

Generated x of the event.

Definition at line 60 of file EventPepsi.h.

◆ trueY

Double32_t erhic::EventPepsi::trueY

Generated y of the event.

Definition at line 58 of file EventPepsi.h.

◆ Weight

Double32_t erhic::EventPepsi::Weight

Total weight including everything.

Definition at line 64 of file EventPepsi.h.


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