|
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
|
A cylindrical tracking detector. More...
#include <Tracker.h>
Public Member Functions | |
| Tracker (double magneticField=2., double nRadiationLengths=0.01, double resolution=0.001) | |
| Constructor. More... | |
| virtual | ~Tracker () |
| Destructor. More... | |
| virtual double | Resolution (const erhic::VirtualParticle &) const |
| Returns the resolution at the kinematics of this particle. More... | |
| void | Smear (const erhic::VirtualParticle &, ParticleMCS &) |
| Smear the properties of the input particle and store the smeared values in the ParticleMCS. More... | |
| virtual double | L (const erhic::VirtualParticle &) const =0 |
| Returns the path length of the particle through the tracker in metres. More... | |
| virtual double | LPrime (const erhic::VirtualParticle &) const =0 |
| Returns the transverse path length of the particle through the tracker in metres. More... | |
| virtual int | NPoints (const erhic::VirtualParticle &) const =0 |
| Returns the number of measurement points for the particle. More... | |
| virtual bool | Accepts (const erhic::VirtualParticle &) const =0 |
| Returns true if the particle falls within the angular acceptance of the detector. More... | |
| virtual double | GetThetaMin () const =0 |
| Returns the minimum theta of particles accepted by the tracker (radians). More... | |
| virtual double | GetThetaMax () const =0 |
| Returns the maximum theta of particles accepted by the tracker (radians). More... | |
| void | SetVertexConstraint (bool constrain) |
| Set whether a vertex constraint should be used when calculating the intrinsic resolution. More... | |
Public Member Functions inherited from Smear::Smearer | |
| virtual | ~Smearer () |
| Destructor. More... | |
| virtual Smearer * | Clone (const char *="") const =0 |
| Inherited from TObject. More... | |
Protected Member Functions | |
| virtual double | MultipleScatteringContribution (const erhic::VirtualParticle &) const |
| 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. More... | |
| virtual double | IntrinsicContribution (const erhic::VirtualParticle &) const |
| The intrinsic resolution of the detector, depending on momentum, magnetic field, the detector dimensions, the number of fit points and the point resolution. More... | |
Protected Attributes | |
| Int_t | mFactor |
| Factor in intrinsic resolution calculation dependent on vertex constraint. More... | |
| double | mMagField |
| Magnetic field strength in Tesla. More... | |
| double | mNRadLengths |
| Number of radiation lengths (dimensionless) More... | |
| double | mSigmaRPhi |
| Point resolution. More... | |
| Distributor | Distribution |
| Random distribution. More... | |
Additional Inherited Members | |
Public Attributes inherited from Smear::Smearer | |
| 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 |
|
protected |
|
protected |
|
protected |
|
protected |