2 #ifndef FASTSIM_HELIXTRAJECTORY_H 3 #define FASTSIM_HELIXTRAJECTORY_H 48 void move(
double deltaTimeC)
override;
const double minR_
The minimal distance of the helix from the center of the tracker.
const double phi_
Ranges from 0 to 2PI: 0 corresponds to the positive X direction, phi increases counterclockwise.
const double radius_
The radius of the helix.
Implementation of a barrel detector layer (cylindrical).
const double centerY_
Y-coordinate of the center of the helix.
bool crosses(const BarrelSimplifiedGeometry &layer) const override
Check if an intersection of the trajectory with a barrel layer exists.
constexpr std::array< uint8_t, layerIndexSize > layer
const double maxR_
The maximum distance of the helix from the center of the tracker.
const double phiSpeed_
The angular speed of the particle on the helix trajectory.
Definition the generic trajectory of a particle (base class for helix/straight trajectories).
const double centerX_
X-coordinate of the center of the helix.
void move(double deltaTimeC) override
Move the particle along the helix trajectory for a given time.
HelixTrajectory(const Particle &particle, double magneticFieldZ)
Constructor.
double getRadParticle(double phi) const
Return distance of particle from center of the detector if it was at given angle phi of the helix...
const double centerR_
Distance of the center of the helix from the center of the tracker.
Mathematical representation of a helix.
double nextCrossingTimeC(const BarrelSimplifiedGeometry &layer, bool onLayer=false) const override
Return delta time (t*c) of the next intersection of trajectory and barrel layer.