|
CORSIKA
@c8_version@
The framework to simulate particle cascades for astroparticle physics
|
The class tracking_leapfrog_straight::Tracking inherits from tracking_line::Tracking and adds a (two-step) Leap-Frog algorithms with two halve-steps and magnetic deflection. More...
#include <TrackingLeapFrogStraight.hpp>
Public Member Functions | |
| Tracking (double const firstFraction=0.55) | |
| template<typename Particle > | |
| auto | getTrack (Particle &particle) |
Public Member Functions inherited from corsika::tracking_line::Tracking | |
| template<typename TParticle > | |
| auto | getTrack (TParticle const &particle) |
| Determine track of particle. | |
Protected Attributes | |
| double | firstFraction_ |
Additional Inherited Members | |
Protected Member Functions inherited from corsika::Intersect< Tracking > | |
| auto | nextIntersect (TParticle const &particle, TimeType const step_limit=std::numeric_limits< TimeType::value_type >::infinity() *second) const |
| Determines next intersection with any of the geometry volumes. | |
The class tracking_leapfrog_straight::Tracking inherits from tracking_line::Tracking and adds a (two-step) Leap-Frog algorithms with two halve-steps and magnetic deflection.
The two halve steps are implemented as two straight explicit tracking_line::Trackings and all geometry intersections are, thus, based on those two straight line elements.
As a precaution for numerical instability, the steplength is limited to correspond to a straight line distance to the next volume intersection. In typical situations this leads to about (at least) one full leap-frog step to the next volume boundary.
Definition at line 45 of file TrackingLeapFrogStraight.hpp.
|
inline |
| firstFraction | fraction of first leap-frog halve step relative to full linear step to next volume boundary. This should not be less than 0.5, otherwise you risk that particles will never travel from one volume to the next one. A crossing must be possible (even likely). However, if firstFraction is too big (~1) the resulting calculated numerical error will be largest. |
Definition at line 58 of file TrackingLeapFrogStraight.hpp.