EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
Public Member Functions | |
virtual | ~EPhenixMomentum () |
EPhenixMomentum (bool multipleScattering=true) | |
void | Initialise () |
TMultiGraph * | Graphs () |
virtual EPhenixMomentum * | Clone (const char *) const |
virtual void | Smear (const erhic::VirtualParticle &particle, Smear::ParticleMCS &smeared) |
virtual double | computeMultipleScattering (const erhic::VirtualParticle &particle) const |
virtual void | Draw (Option_t *option="ac") |
Public Member Functions inherited from Smear::Smearer | |
virtual | ~Smearer () |
Static Public Member Functions | |
static double | etaToTheta (double eta) |
Private Attributes | |
TMultiGraph * | mGraphDrawer |
Collection of graphs for each eta range. | |
Bool_t | mMultipleScattering |
Flag to include multiple scattering. | |
Additional Inherited Members | |
Public Attributes inherited from Smear::Smearer | |
Acceptance | Accept |
Smearing class describing ePHENIX momentum resolution.
The ePHENIX momentum resolution is too complicated to handle with a simple parameterisation via the Smear::Device class. Therefore we define a custom Smearer class to implement the resolution. See the email in comments at the end of the file for details of the resolution values we use.
Definition at line 58 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 58 of file SmearePHENIX_0_0.cxx
|
virtual |
Destructor.
Definition at line 128 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 128 of file SmearePHENIX_0_0.cxx
References mGraphDrawer.
EPhenixMomentum::EPhenixMomentum | ( | bool | multipleScattering = true | ) |
Constructor.
If multipleScattering is true, apply the multiple scattering resolution in the region where it is known, 2 < eta < 4. Otherwise apply only the linear resolution term.
Definition at line 122 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 122 of file SmearePHENIX_0_0.cxx
References Smear::Smearer::Accept, Smear::kCharged, and Smear::Acceptance::SetCharge().
Referenced by Clone().
|
virtual |
Duplicate this object.
Implements Smear::Smearer.
Definition at line 188 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 188 of file SmearePHENIX_0_0.cxx
References EPhenixMomentum(), and mGraphDrawer.
|
virtual |
Return sigma(P) due to multiple scattering
Note this means sigma(P) (GeV) not sigma(P)/P
Definition at line 227 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 227 of file SmearePHENIX_0_0.cxx
References Acts::VectorHelpers::eta(), erhic::VirtualParticle::GetEta(), and erhic::VirtualParticle::GetP().
Referenced by Smear().
|
virtual |
Draw all graphs
Definition at line 251 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 251 of file SmearePHENIX_0_0.cxx
References Graphs().
|
inlinestatic |
Helper function to convert eta to theta (radians)
Detector acceptances require theta, not eta
Definition at line 111 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 111 of file SmearePHENIX_0_0.cxx
Referenced by BuildePHENIX_0_0().
TMultiGraph * EPhenixMomentum::Graphs | ( | ) |
Returns a pointer to the graphs.
Initialises all graphs if not yet done.
Definition at line 181 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 181 of file SmearePHENIX_0_0.cxx
References Initialise(), and mGraphDrawer.
Referenced by Draw(), and Smear().
void EPhenixMomentum::Initialise | ( | ) |
Initialise the object
This is called automatically by the smearing routine, so the user needn't call it themselves before smearing.
Definition at line 135 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 135 of file SmearePHENIX_0_0.cxx
References Acts::VectorHelpers::eta(), mGraphDrawer, name, and Acts::VectorHelpers::position().
Referenced by Graphs().
|
virtual |
Smears the input ParticleMC and stores the results in the ParticleMCS.
Implements Smear::Smearer.
Definition at line 196 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 196 of file SmearePHENIX_0_0.cxx
References computeMultipleScattering(), Acts::VectorHelpers::eta(), erhic::VirtualParticle::GetEta(), erhic::VirtualParticle::GetP(), Graphs(), max, mMultipleScattering, and Smear::ParticleMCS::SetP().
|
private |
Collection of graphs for each eta range.
Definition at line 117 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 117 of file SmearePHENIX_0_0.cxx
Referenced by Clone(), Graphs(), Initialise(), and ~EPhenixMomentum().
|
private |
Flag to include multiple scattering.
Definition at line 118 of file SmearePHENIX_0_0.cxx.
View newest version in sPHENIX GitHub at line 118 of file SmearePHENIX_0_0.cxx
Referenced by Smear().