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::EventGmcTrans Class Reference

#include <EventGmcTrans.h>

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

Public Member Functions

 EventGmcTrans (const std::string &="")
 
virtual ~EventGmcTrans ()
 
virtual bool Parse (const std::string &)
 
Double_t GetPhiSpin () const
 
Double_t GetPhiHadron () const
 
Double_t GetHadronZ () const
 
Double_t GetHadronPt () const
 
Double_t GetF1 () const
 
Double_t GetG1 () const
 
Double_t GetH1 () const
 
Double_t GetD1 () const
 
Double_t GetF1TPerp () const
 
Double_t GetF1TPerp1 () const
 
Double_t GetH1Perp () const
 
Double_t GetH1Perp1 () const
 
Double_t GetH1Perp12 () const
 
Double_t GetSivers () const
 
Double_t GetSiversWeight () const
 
Double_t GetSiversStruckQuark () const
 
Double_t GetSiversStruckQuarkWeight () const
 
Double_t GetSiversPiDifference () const
 
Double_t GetSiversPiDifferenceWeight () const
 
Double_t GetCollins () const
 
Double_t GetCollinsWeight () const
 
Double_t GetCollinsStruckQuark () const
 
Double_t GetCollinsStructQuarkWeight () const
 
Double_t GetCollinsTwist3 () const
 
Double_t GetCollinsTwist3Weight () const
 
Double_t GetCrossSectionUnpolarised () const
 
Double_t GetCrossSectionSivers () const
 
Double_t GetCrossSectionCollins () const
 
TLorentzVector GetHadronPolarisation () const
 
virtual double GetHermesPhiS () const
 
- Public Member Functions inherited from erhic::EventMC
 EventMC ()
 
virtual ~EventMC ()
 
virtual ULong64_t GetN () const
 
virtual Int_t GetProcess () const
 
virtual UInt_t GetNTracks () const
 
virtual const ParticleMCGetTrack (UInt_t) const
 
virtual ParticleMCGetTrack (UInt_t)
 
virtual const ParticleMCBeamLepton () const
 
virtual const ParticleMCBeamHadron () const
 
virtual const ParticleMCExchangeBoson () const
 
virtual const ParticleMCScatteredLepton () const
 
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
 
- Public Member Functions inherited from erhic::EventDis
virtual ~EventDis ()
 
 EventDis ()
 
 EventDis (const EventDis &)
 
EventDisoperator= (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 &)
 
- Public Member Functions inherited from erhic::VirtualEvent
virtual ~VirtualEvent ()
 

Protected Attributes

Int_t mStruckQuark
 Flavour of struck quark.
 
Double32_t mQSquared
 
Double32_t mBjorkenX
 
Double32_t mInelasticity
 
Double32_t mWSquared
 Invariant mass of the hadronic final state.
 
Double32_t mNu
 Energy of the exchanged boson in the hadron rest frame.
 
Double32_t mS
 Square of the centre of mass energy.
 
Double32_t mZ
 z of the produced hadron
 
Double32_t mHadronPt
 pT of the produced hadron
 
Double32_t mLeptonTheta
 Polar angle of the scattered lepton.
 
Double32_t mLeptonPhi
 Azimuthal angle of the scattered lepton.
 
Double32_t mPhiSpin
 
Double32_t mPhiHadron
 
Double32_t mF1
 
Double32_t mG1
 
Double32_t mH1
 
Double32_t mD1
 
Double32_t mF1TPerp
 
Double32_t mF1TPerp1
 
Double32_t mF1TPerp12
 
Double32_t mH1Perp
 
Double32_t mH1Perp1
 
Double32_t mH1Perp12
 
Double32_t mAutSiv
 
Double32_t mAutWtSiv
 
Double32_t mAutSivAllQ
 
Double32_t mAutWtSivAllQ
 
Double32_t mAutSivPiDiff
 
Double32_t mAutWtSivPiDiff
 
Double32_t mAutCol
 
Double32_t mAutWtCol
 
Double32_t mAutTw3Col
 
Double32_t mAutWtTw3Col
 
Double32_t mAutColAllQ
 
Double32_t mAutWtColAllQ
 
Double32_t mXUnpolarised
 
Double32_t mXSivers
 
Double32_t mXCollins
 Cross sections.
 
- Protected Attributes inherited from erhic::EventMC
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

- Public Types inherited from erhic::VirtualEvent
typedef std::vector< const
erhic::VirtualParticle * > 
ParticlePtrList
 
- Public Attributes inherited from erhic::EventDis
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.
 

Detailed Description

Describes an event from the gmc_trans Monte Carlo.

Definition at line 23 of file EventGmcTrans.h.

Constructor & Destructor Documentation

erhic::EventGmcTrans::EventGmcTrans ( const std::string &  s = "")
explicit

Constructor.

Optionally initialise from a string. See Parse() for the string format.

Definition at line 18 of file EventGmcTrans.cxx.

virtual erhic::EventGmcTrans::~EventGmcTrans ( )
inlinevirtual

Destructor.

Definition at line 35 of file EventGmcTrans.h.

Member Function Documentation

TLorentzVector erhic::EventGmcTrans::GetHadronPolarisation ( ) const
inline

Returns the hadron beam spin vector in the current frame. If the spin vector in the rest frame of the hadron (of mass m) is n and the 4-momentum of the hadron in the current frame is p = (E,P), then the hadron spin 4-vector in the current frame is (Bjorken & Drell, 1965):

s = (s0, S)

where

s0 = n.P / m
S  = n + (E/m - 1)(P.n) P / |P|^2

Definition at line 131 of file EventGmcTrans.h.

Double_t erhic::EventGmcTrans::GetHadronZ ( ) const
inline
Remarks
Not called z() to avoid hiding Event::z().

Definition at line 64 of file EventGmcTrans.h.

virtual double erhic::EventGmcTrans::GetHermesPhiS ( ) const
inlinevirtual

Azimuthal angle of the produced hadron around the spin direction in the proton rest frame, as defined by the HERMES experiment. phi_s = [(qxk.S)/|qxk.S|]arccos[(qxk.qxS)/(|qxk||qxS|)], 0 <= arccos <= pi. Gives result in range [0,2pi].

Definition at line 140 of file EventGmcTrans.h.

Double_t erhic::EventGmcTrans::GetPhiHadron ( ) const
inline

Azimuthal angle of hadron in gamma*-proton centre of mass frame.

Definition at line 59 of file EventGmcTrans.h.

Double_t erhic::EventGmcTrans::GetPhiSpin ( ) const
inline

Azimuthal angle of spin vector in gamma*-proton centre of mass frame.

Definition at line 54 of file EventGmcTrans.h.

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

Set the event properties from a string. The string format should be as follows:

quark, x, Q2, nu, y, W2, z, hadronPt, leptonTheta, leptonPhi, phiSpin,
phiHadron, f1, g1, h1, D1, f1Tperp, f1Tperp1, f1Tperp12 H1perp, H1perp1,
H1perp12, AUT_Siv, AUT_WtSiv, AUT_Siv_allq, AUT_WtSiv_allq,
AUT_Siv_piDiff, AUT_WtSiv_piDiff, AUT_Col, AUT_WtCol, AUT_Col_allq,
AUT_WtCol_allq, AUT_Tw3_Col, AUT_WtTw3_Col, X_UU, X_SIV, X_COL

Returns true if the string is processed successfully, false if not.

Implements erhic::EventMC.

Definition at line 64 of file EventGmcTrans.cxx.

Member Data Documentation

Double32_t erhic::EventGmcTrans::mBjorkenX
protected

Longitudinal momentum fraction in the infinite momentum frame

Definition at line 146 of file EventGmcTrans.h.

Double32_t erhic::EventGmcTrans::mPhiSpin
protected

Azimuthal angle of spin vector in gamma*-proton centre-of-mass frame.

Definition at line 156 of file EventGmcTrans.h.

Double32_t erhic::EventGmcTrans::mQSquared
protected

Negative squared four-momentum of the exchanged boson

Definition at line 144 of file EventGmcTrans.h.


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