Celeritas
0.5.0-56+6b053cd
|
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... | |
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.
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.