CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::tracking_leapfrog_straight::Tracking Class Reference

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>

Inheritance diagram for corsika::tracking_leapfrog_straight::Tracking:

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.
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ Tracking()

corsika::tracking_leapfrog_straight::Tracking::Tracking ( double const  firstFraction = 0.55)
inline
Parameters
firstFractionfraction 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.


The documentation for this class was generated from the following file: