EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <eic-smear/blob/master/include/eicsmear/smear/PlanarTracker.h>
Public Member Functions | |
PlanarTracker () | |
PlanarTracker (double innerRadius, double outerRadius, double zMin, double zMax, double magneticField, double nRadiationLengths, double sigmaRPhi, double nPlanes) | |
virtual | ~PlanarTracker () |
virtual PlanarTracker * | 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 | mNPlanes |
Number of planes. | |
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 PlanarTracker.h.
View newest version in sPHENIX GitHub at line 32 of file PlanarTracker.h
Smear::PlanarTracker::PlanarTracker | ( | ) |
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 21 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 21 of file PlanarTracker.cxx
Referenced by Clone().
Smear::PlanarTracker::PlanarTracker | ( | double | innerRadius, |
double | outerRadius, | ||
double | zMin, | ||
double | zMax, | ||
double | magneticField, | ||
double | nRadiationLengths, | ||
double | sigmaRPhi, | ||
double | nPlanes | ||
) |
Constructor for a tracker with arbitrary positioning along z.
Definition at line 30 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 30 of file PlanarTracker.cxx
|
virtual |
Destructor.
Definition at line 43 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 43 of file PlanarTracker.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 160 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 160 of file PlanarTracker.cxx
References NPoints().
|
inlinevirtual |
Returns a new copy of this Tracker. The argument is not used.
Implements Smear::Smearer.
Definition at line 124 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 124 of file PlanarTracker.h
References PlanarTracker().
|
protected |
Definition at line 87 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 87 of file PlanarTracker.cxx
References erhic::VirtualParticle::GetTheta(), erhic::VirtualParticle::GetVertex(), mInnerRadius, and mOuterRadius.
|
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 74 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 74 of file PlanarTracker.cxx
References erhic::VirtualParticle::GetTheta(), erhic::VirtualParticle::GetVertex(), mZMax, mZMin, and z.
|
protected |
|
virtual |
Returns the maximum theta of particles accepted by the tracker (radians).
Implements Smear::Tracker.
Definition at line 66 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 66 of file PlanarTracker.cxx
References mInnerRadius, mOuterRadius, and mZMin.
|
virtual |
Returns the minimum theta of particles accepted by the tracker (radians).
Implements Smear::Tracker.
Definition at line 58 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 58 of file PlanarTracker.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 100 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 100 of file PlanarTracker.cxx
References erhic::VirtualParticle::GetTheta(), mInnerRadius, mNPlanes, mOuterRadius, mZMax, mZMin, NPoints(), pi, r1, and r2.
|
virtual |
Returns the transverse path length of the particle through the tracker in metres.
Implements Smear::Tracker.
Definition at line 124 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 124 of file PlanarTracker.cxx
References erhic::VirtualParticle::GetTheta(), mInnerRadius, mNPlanes, mOuterRadius, mZMax, mZMin, NPoints(), pi, r1, and r2.
|
virtual |
Returns the number of measurement points for the particle. This is the number of planes hit in the planar tracker for the particle.
Implements Smear::Tracker.
Definition at line 143 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 143 of file PlanarTracker.cxx
References erhic::VirtualParticle::GetTheta(), mInnerRadius, mNPlanes, mOuterRadius, mZMax, mZMin, n, and pi.
Referenced by Accepts(), L(), and LPrime().
|
virtual |
Print information about this device to standard output.
Definition at line 46 of file PlanarTracker.cxx.
View newest version in sPHENIX GitHub at line 46 of file PlanarTracker.cxx
References mInnerRadius, Smear::Tracker::mMagField, mNPlanes, Smear::Tracker::mNRadLengths, mOuterRadius, Smear::Tracker::mSigmaRPhi, mZMax, and mZMin.
|
protected |
Inner radius (m)
Definition at line 116 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 116 of file PlanarTracker.h
Referenced by ComputeIntersectionWithPlane(), GetThetaMax(), GetThetaMin(), L(), LPrime(), NPoints(), and Print().
|
protected |
Number of planes.
Definition at line 115 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 115 of file PlanarTracker.h
|
protected |
Outer radius (m)
Definition at line 117 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 117 of file PlanarTracker.h
Referenced by ComputeIntersectionWithPlane(), GetThetaMax(), GetThetaMin(), L(), LPrime(), NPoints(), and Print().
|
protected |
Upper (most positive) z face.
Definition at line 119 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 119 of file PlanarTracker.h
Referenced by ComputeIntersectionWithRadius(), GetThetaMin(), L(), LPrime(), NPoints(), and Print().
|
protected |
Lower (most negative) z face.
Definition at line 118 of file PlanarTracker.h.
View newest version in sPHENIX GitHub at line 118 of file PlanarTracker.h
Referenced by ComputeIntersectionWithRadius(), GetThetaMax(), L(), LPrime(), NPoints(), and Print().