Celeritas  0.5.0-86+4a8eea4
Public Member Functions | List of all members
celeritas::ZHelixStepper< EquationT > Class Template Reference

Analytically step along a helical path for a uniform Z magnetic field. More...

#include <ZHelixStepper.hh>

Public Types

Type aliases
using result_type = FieldStepperResult
 

Public Member Functions

CELER_FUNCTION ZHelixStepper (EquationT &&eq)
 Construct with the equation of motion.
 
CELER_FUNCTION auto operator() (real_type step, OdeState const &beg_state) const -> result_type
 An explicit helix stepper with analytical solutions at the end and the middle point for a given step. More...
 

Detailed Description

template<class EquationT>
class celeritas::ZHelixStepper< EquationT >

Analytically step along a helical path for a uniform Z magnetic field.

The analytical solution for the motion of a charged particle in a uniform magnetic field along the z-direction.

Member Function Documentation

◆ operator()()

template<class E >
CELER_FUNCTION auto celeritas::ZHelixStepper< E >::operator() ( real_type  step,
OdeState const &  beg_state 
) const -> result_type

An explicit helix stepper with analytical solutions at the end and the middle point for a given step.

Assuming that the magnetic field is uniform and chosen to be parallel to the z-axis, \(B = (0, 0, B_z)\), without loss of generality, the motion of a charged particle is described by a helix trajectory. For this algorithm, the radius of the helix, \(R = m gamma v/(qB)\) and the helicity, defined as \( -sign(q B_z)\) are evaluated through the right hand side of the ODE equation where q is the charge of the particle.


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