EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <eic-smear/blob/master/include/eicsmear/smear/RadialTracker.h>
Public Member Functions | |
RadialTracker () | |
RadialTracker (double innerRadius, double outerRadius, double zMin, double zMax, double magneticField, double numberOfRadiationLengths, double sigmaRPhi, double numberOfPoints) | |
virtual | ~RadialTracker () |
virtual RadialTracker * | Clone (const char *="") const |
virtual void | Print (Option_t *="") const |
double | L (const erhic::VirtualParticle &) const |
double | LPrime (const erhic::VirtualParticle &) const |
virtual int | NPoints (const erhic::VirtualParticle &) const |
virtual bool | Accepts (const erhic::VirtualParticle &) const |
virtual double | GetThetaMin () const |
virtual double | GetThetaMax () const |
Public Member Functions inherited from Smear::Tracker | |
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 &) |
void | SetVertexConstraint (bool constrain) |
Public Member Functions inherited from Smear::Smearer | |
virtual | ~Smearer () |
Protected Member Functions | |
TVector3 | ComputeIntersectionWithRadius (const erhic::VirtualParticle &, double radius) const |
TVector3 | ComputeIntersectionWithPlane (const erhic::VirtualParticle &, double z) const |
TVector3 | ComputePath (const erhic::VirtualParticle &) const |
Protected Member Functions inherited from Smear::Tracker | |
virtual double | MultipleScatteringContribution (const erhic::VirtualParticle &) const |
virtual double | IntrinsicContribution (const erhic::VirtualParticle &) const |
Protected Attributes | |
double | mNFitPoints |
Number of fit points. | |
double | mInnerRadius |
Inner radius (m) | |
double | mOuterRadius |
Outer radius (m) | |
double | mZMin |
Lower (most negative) z face. | |
double | mZMax |
Upper (most positive) z face. | |
Protected Attributes inherited from Smear::Tracker | |
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 | |
Public Attributes inherited from Smear::Smearer | |
Acceptance | Accept |
A cylindrical tracking detector. Implements both intrinsic and multiple-scattering resolution.
Definition at line 32 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 32 of file RadialTracker.h
Smear::RadialTracker::RadialTracker | ( | ) |
Default constructor. B = 2, NRL = 0.03, sigma(r-phi) = 0.001, N = 25, inner radius = 0.25 m, outer radius = 1 m, length = 6 m.
Definition at line 32 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 32 of file RadialTracker.cxx
Referenced by Clone().
Smear::RadialTracker::RadialTracker | ( | double | innerRadius, |
double | outerRadius, | ||
double | zMin, | ||
double | zMax, | ||
double | magneticField, | ||
double | numberOfRadiationLengths, | ||
double | sigmaRPhi, | ||
double | numberOfPoints | ||
) |
Constructor for a tracker with arbitrary positioning along z.
Definition at line 41 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 41 of file RadialTracker.cxx
|
virtual |
Destructor.
Definition at line 54 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 54 of file RadialTracker.cxx
|
virtual |
Returns true if the particle falls within the angular acceptance defined via the input parameters. This is defined as the particle's transverse path length being greater than half of (outer radius - inner radius) / number of fit points i.e. the particle has to pass through enough of the detector to cause at least one measureable point.
Implements Smear::Tracker.
Definition at line 152 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 152 of file RadialTracker.cxx
References NPoints().
|
inlinevirtual |
Returns a new copy of this Tracker. The argument is not used.
Implements Smear::Smearer.
Definition at line 138 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 138 of file RadialTracker.h
References RadialTracker().
|
protected |
Compute the intersection point of the particle with an x-y plane at z. Returns the 3-vector of the intersetion point if the radius of the intersection is within (inner radius, outer radius), or (0, 0, NaN) if not.
Definition at line 82 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 82 of file RadialTracker.cxx
References erhic::VirtualParticle::GetTheta(), erhic::VirtualParticle::GetVertex(), mInnerRadius, and mOuterRadius.
Referenced by ComputePath().
|
protected |
Compute the intersection point of the particle with a radial surface. Returns the 3-vector of the intersection point if the z of the intersection is within (zmin, zmax) of this detector, or (0, 0, NaN) if not.
Definition at line 69 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 69 of file RadialTracker.cxx
References erhic::VirtualParticle::GetTheta(), erhic::VirtualParticle::GetVertex(), mZMax, mZMin, and z.
Referenced by ComputePath().
|
protected |
Computes the path vector, defined as (v2 - v1), where v1 and v2 are the position vectors of the particle's intersections with the cylinder's surface. Returns (0, 0, 0) for particles that don't intersect, or if something goes wrong.
Definition at line 95 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 95 of file RadialTracker.cxx
References ComputeIntersectionWithPlane(), ComputeIntersectionWithRadius(), mInnerRadius, mOuterRadius, mZMax, and mZMin.
Referenced by L(), LPrime(), and NPoints().
|
virtual |
Returns the maximum theta of particles accepted by the tracker (radians).
Implements Smear::Tracker.
Definition at line 170 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 170 of file RadialTracker.cxx
References mInnerRadius, mOuterRadius, and mZMin.
|
virtual |
Returns the minimum theta of particles accepted by the tracker (radians).
Implements Smear::Tracker.
Definition at line 162 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 162 of file RadialTracker.cxx
References mInnerRadius, mOuterRadius, and mZMax.
|
virtual |
Returns the path length of the particle through the tracker in metres.
Implements Smear::Tracker.
Definition at line 130 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 130 of file RadialTracker.cxx
References ComputePath().
|
virtual |
Returns the transverse path length of the particle through the tracker in metres.
Implements Smear::Tracker.
Definition at line 135 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 135 of file RadialTracker.cxx
References ComputePath().
Referenced by NPoints().
|
virtual |
Returns the number of measurement points for the particle.
Implements Smear::Tracker.
Definition at line 139 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 139 of file RadialTracker.cxx
References ComputePath(), LPrime(), mInnerRadius, mNFitPoints, mOuterRadius, and n.
Referenced by Accepts().
|
virtual |
Print information about this device to standard output.
Definition at line 57 of file RadialTracker.cxx.
View newest version in sPHENIX GitHub at line 57 of file RadialTracker.cxx
References mInnerRadius, Smear::Tracker::mMagField, mNFitPoints, Smear::Tracker::mNRadLengths, mOuterRadius, Smear::Tracker::mSigmaRPhi, mZMax, and mZMin.
|
protected |
Inner radius (m)
Definition at line 130 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 130 of file RadialTracker.h
Referenced by ComputeIntersectionWithPlane(), ComputePath(), GetThetaMax(), GetThetaMin(), NPoints(), and Print().
|
protected |
Number of fit points.
Definition at line 129 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 129 of file RadialTracker.h
|
protected |
Outer radius (m)
Definition at line 131 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 131 of file RadialTracker.h
Referenced by ComputeIntersectionWithPlane(), ComputePath(), GetThetaMax(), GetThetaMin(), NPoints(), and Print().
|
protected |
Upper (most positive) z face.
Definition at line 133 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 133 of file RadialTracker.h
Referenced by ComputeIntersectionWithRadius(), ComputePath(), GetThetaMin(), and Print().
|
protected |
Lower (most negative) z face.
Definition at line 132 of file RadialTracker.h.
View newest version in sPHENIX GitHub at line 132 of file RadialTracker.h
Referenced by ComputeIntersectionWithRadius(), ComputePath(), GetThetaMax(), and Print().