![]() |
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 <Tracker.h>
Public Member Functions | |
Tracker (double magneticField=2., double nRadiationLengths=0.01, double resolution=0.001) | |
virtual | ~Tracker () |
virtual double | Resolution (const erhic::VirtualParticle &) const |
void | Smear (const erhic::VirtualParticle &, ParticleMCS &) |
virtual double | L (const erhic::VirtualParticle &) const =0 |
virtual double | LPrime (const erhic::VirtualParticle &) const =0 |
virtual int | NPoints (const erhic::VirtualParticle &) const =0 |
virtual bool | Accepts (const erhic::VirtualParticle &) const =0 |
virtual double | GetThetaMin () const =0 |
virtual double | GetThetaMax () const =0 |
void | SetVertexConstraint (bool constrain) |
![]() | |
virtual | ~Smearer () |
virtual Smearer * | Clone (const char *="") const =0 |
Protected Member Functions | |
virtual double | MultipleScatteringContribution (const erhic::VirtualParticle &) const |
virtual double | IntrinsicContribution (const erhic::VirtualParticle &) const |
Protected Attributes | |
Int_t | mFactor |
double | mMagField |
Magnetic field strength in Tesla. | |
double | mNRadLengths |
Number of radiation lengths (dimensionless) | |
double | mSigmaRPhi |
Point resolution. | |
Distributor | Distribution |
Random distribution. | |
Additional Inherited Members | |
![]() | |
Acceptance | Accept |
A cylindrical tracking detector. Implements both intrinsic and multiple-scattering resolution. Abstract base class: inheriting classes must implement L(), LPrime(), NPoints() and Accepts().
Smear::Tracker::Tracker | ( | double | magneticField = 2. , |
double | nRadiationLengths = 0.01 , |
||
double | resolution = 0.001 |
||
) |
Constructor.
Definition at line 32 of file Tracker.cxx.
|
virtual |
Destructor.
Definition at line 40 of file Tracker.cxx.
|
pure virtual |
Returns true if the particle falls within the angular acceptance of the detector.
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
pure virtual |
Returns the maximum theta of particles accepted by the tracker (radians).
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
pure virtual |
Returns the minimum theta of particles accepted by the tracker (radians).
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
protectedvirtual |
The intrinsic resolution of the detector, depending on momentum, magnetic field, the detector dimensions, the number of fit points and the point resolution.
Definition at line 55 of file Tracker.cxx.
|
pure virtual |
Returns the path length of the particle through the tracker in metres.
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
pure virtual |
Returns the transverse path length of the particle through the tracker in metres.
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
protectedvirtual |
Multiple scattering contribution, given by delta(p)/p = 0.0136 * z * sqrt(NRL) / (0.3 * B * L * beta) z = charge, NRL = # radiation lengths, B = mag field, L = track length, beta = particle velocity.
Definition at line 43 of file Tracker.cxx.
|
pure virtual |
Returns the number of measurement points for the particle.
Implemented in Smear::PlanarTracker, and Smear::RadialTracker.
|
virtual |
Returns the resolution at the kinematics of this particle.
Definition at line 72 of file Tracker.cxx.
void Smear::Tracker::SetVertexConstraint | ( | bool | constrain | ) |
Set whether a vertex constraint should be used when calculating the intrinsic resolution. Without it a factor of sqrt(720) is included in the resolution; with it the factor is sqrt(320). By defuault no constraint is assumed.
Definition at line 100 of file Tracker.cxx.
|
virtual |
Smear the properties of the input particle and store the smeared values in the ParticleMCS.
Implements Smear::Smearer.
Definition at line 82 of file Tracker.cxx.
|
protected |