19#ifndef BDSINTEGRATORMAG_H
20#define BDSINTEGRATORMAG_H
22#include "BDSAuxiliaryNavigator.hh"
23#include "BDSIntegratorDrift.hh"
24#include "BDSMagnetStrength.hh"
27#include "G4MagIntegratorStepper.hh"
78 const G4ThreeVector &localMom,
81 const G4double momScaling = 1.0);
Extra G4Navigator to get coordinate transforms.
Routine for drift algorithm.
Common functionality to BDSIM integrators.
G4double backupStepperMomLimit
static G4double nominalMatrixRelativeMomCut
BDSIntegratorMag(BDSIntegratorMag &)=delete
Assignment and copy constructor not implemented nor used.
void SetDistChord(G4double distChordIn)
Setter for distChord to private member.
static G4double thinElementLength
static G4bool currentTrackIsPrimary
G4double distChordPrivate
Variable used to record the distance from the chord calculated during the step.
BDSIntegratorMag & operator=(const BDSIntegratorMag &)=delete
Assignment and copy constructor not implemented nor used.
void ConvertToGlobal(const G4ThreeVector &localPos, const G4ThreeVector &localMom, G4double yOut[], G4double yErr[], const G4double momScaling=1.0)
scaling of momentum in case localMom is a unit vector
virtual G4int IntegratorOrder() const
Geant4 requires that the integrator order must be supplied by the derived class.
G4MagIntegratorStepper * backupStepper
const G4int nVariables
Cache of the number of variables.
BDSIntegratorMag()=delete
Private default constructor to force use of specific constructor.
virtual G4double DistChord() const
Estimate maximum distance of curved solution and chord.