|
BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Routine for drift algorithm. More...
#include <BDSIntegratorDrift.hh>


Public Member Functions | |
| void | AdvanceDriftMag (const G4double yIn[], const G4double h, G4double yOut[], G4double yErr[]) const |
| Error array [6] all 0. | |
| void | AdvanceDriftMag (const G4double yIn[], const G4ThreeVector &unitMomentum, const G4double h, G4double yOut[], G4double yErr[]) const |
Routine for drift algorithm.
q_{out} = q_{in} + \hat{p}_{in} h
Definition at line 33 of file BDSIntegratorDrift.hh.
| BDSIntegratorDrift::BDSIntegratorDrift | ( | ) |
Definition at line 23 of file BDSIntegratorDrift.cc.
| BDSIntegratorDrift::~BDSIntegratorDrift | ( | ) |
Definition at line 26 of file BDSIntegratorDrift.cc.
| void BDSIntegratorDrift::AdvanceDriftMag | ( | const G4double | yIn[], |
| const G4double | h, | ||
| G4double | yOut[], | ||
| G4double | yErr[] | ||
| ) | const |
Error array [6] all 0.
Advance a particle by using a drift algorithm. Uses first 6 variables in array and assumes at least 6 elements in each array so only suitable for magnetic field integrators. Sets error to 0. Does not provide distance from chord parameter as this is by definition 0 for a drift and should be set elsewhere.
| yIn | Input coordinates x,y,z,px,py,pz,t |
| h | Step length in mm |
| yOut | Output array [6] |
Definition at line 29 of file BDSIntegratorDrift.cc.
References AdvanceDriftMag().
Referenced by AdvanceDriftMag(), BDSIntegratorDipoleRodrigues::AdvanceHelix(), BDSIntegratorDecapole::AdvanceHelix(), BDSIntegratorOctupole::AdvanceHelix(), BDSIntegratorSextupole::AdvanceHelix(), BDSIntegratorDipoleRodrigues2::AdvanceHelixForSpiralling(), BDSIntegratorDipoleFringe::BaseStepper(), BDSIntegratorDipoleQuadrupole::Stepper(), BDSIntegratorG4RK4MinStep::Stepper(), BDSIntegratorQuadrupole::Stepper(), BDSIntegratorSolenoid::Stepper(), BDSIntegratorDipoleRodrigues2::Stepper(), BDSIntegratorEulerOld::Stepper(), BDSIntegratorKickerThin::Stepper(), BDSIntegratorMultipoleThin::Stepper(), and BDSIntegratorEuler::Stepper().


| void BDSIntegratorDrift::AdvanceDriftMag | ( | const G4double | yIn[], |
| const G4ThreeVector & | unitMomentum, | ||
| const G4double | h, | ||
| G4double | yOut[], | ||
| G4double | yErr[] | ||
| ) | const |
Definition at line 39 of file BDSIntegratorDrift.cc.