19#ifndef BDSINTEGRATORMULTIPOLETHIN_H
20#define BDSINTEGRATORMULTIPOLETHIN_H
22#include "BDSIntegratorMag.hh"
42 G4Mag_EqRhs* eqOfMIn);
49 virtual void Stepper(
const G4double yIn[],
50 const G4double dydx[],
58 void OneStep(
const G4ThreeVector& posIn,
59 const G4ThreeVector& momUIn,
61 G4ThreeVector& posOut,
62 G4ThreeVector& momOut,
78 std::list<double>
bnl;
79 std::list<double>
bsl;
Common functionality to BDSIM integrators.
Integrator that ignores the field and uses the analytical solution to a multipole.
std::vector< G4int > nfact
Higher order components.
G4int Factorial(G4int n)
Calculate the factorial of n.
void OneStep(const G4ThreeVector &posIn, const G4ThreeVector &momUIn, const G4double momIn, G4ThreeVector &posOut, G4ThreeVector &momOut, G4double h) const
BDSIntegratorMultipoleThin()=delete
Private default constructor to enforce use of supplied constructor.
G4double b0l
Dipole component.
std::list< double > bsl
Higher order components.
G4double brho
Magnetic rigidity for momentum scaling.
virtual void Stepper(const G4double yIn[], const G4double dydx[], const G4double h, G4double yOut[], G4double yErr[])
std::list< double > bnl
Higher order components.
Efficient storage of magnet strengths.