|
Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
|
G4MagHelicalStepper is an abstract base class for integrator of particle's equation of motion, used in tracking in space dependent magnetic field, and for a set of steppers which use the helix as 'first order' solution. More...
#include <G4MagHelicalStepper.hh>
Protected Member Functions | |
| void | LinearStep (const G4double yIn[], G4double h, G4double yHelix[]) const |
| void | AdvanceHelix (const G4double yIn[], const G4ThreeVector &Bfld, G4double h, G4double yHelix[], G4double yHelix2[]=nullptr) |
| void | MagFieldEvaluate (const G4double y[], G4ThreeVector &Bfield) |
| G4double | GetInverseCurve (const G4double Momentum, const G4double Bmag) |
| void | SetAngCurve (const G4double Ang) |
| G4double | GetAngCurve () const |
| void | SetCurve (const G4double Curve) |
| G4double | GetCurve () const |
| void | SetRadHelix (const G4double Rad) |
| G4double | GetRadHelix () const |
| Protected Member Functions inherited from G4MagIntegratorStepper | |
| void | SetIntegrationOrder (G4int order) |
| void | SetFSAL (G4bool flag=true) |
G4MagHelicalStepper is an abstract base class for integrator of particle's equation of motion, used in tracking in space dependent magnetic field, and for a set of steppers which use the helix as 'first order' solution.
Definition at line 57 of file G4MagHelicalStepper.hh.
| G4MagHelicalStepper::G4MagHelicalStepper | ( | G4Mag_EqRhs * | EqRhs | ) |
Constructor for G4MagHelicalStepper.
| [in] | EqRhs | Pointer to the provided equation of motion. |
Definition at line 45 of file G4MagHelicalStepper.cc.
Referenced by G4ExactHelixStepper::G4ExactHelixStepper(), G4HelixExplicitEuler::G4HelixExplicitEuler(), G4HelixHeum::G4HelixHeum(), G4HelixImplicitEuler::G4HelixImplicitEuler(), G4HelixMixedStepper::G4HelixMixedStepper(), G4HelixSimpleRunge::G4HelixSimpleRunge(), G4MagHelicalStepper(), and operator=().
|
overridedefault |
Default Destructor.
|
delete |
Copy constructor and assignment operator not allowed.
|
protected |
A first order Step along a helix inside the field.
Definition at line 53 of file G4MagHelicalStepper.cc.
Referenced by G4ExactHelixStepper::DumbStepper(), G4HelixExplicitEuler::DumbStepper(), G4HelixHeum::DumbStepper(), G4HelixImplicitEuler::DumbStepper(), G4HelixMixedStepper::DumbStepper(), G4HelixSimpleRunge::DumbStepper(), G4ExactHelixStepper::Stepper(), G4HelixExplicitEuler::Stepper(), and G4HelixMixedStepper::Stepper().
|
overridevirtual |
Estimates the maximum distance of curved solution and chord.
Implements G4MagIntegratorStepper.
Definition at line 231 of file G4MagHelicalStepper.cc.
|
pure virtual |
Same as Stepper() function above, but should perform a 'dump' step without error calculation. To be implemented in concrete derived classes.
Implemented in G4ExactHelixStepper, G4HelixExplicitEuler, G4HelixHeum, G4HelixImplicitEuler, G4HelixMixedStepper, and G4HelixSimpleRunge.
Referenced by Stepper().
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
Evaluates inverse of Curvature of Track.
Referenced by AdvanceHelix(), and G4HelixMixedStepper::Stepper().
|
inlineprotected |
|
inlineprotected |
Performs a linear Step in regions without magnetic field.
Referenced by AdvanceHelix().
|
inlineprotected |
Evaluates the field at a certain point.
Referenced by G4HelixHeum::DumbStepper(), G4HelixImplicitEuler::DumbStepper(), G4HelixSimpleRunge::DumbStepper(), G4ExactHelixStepper::Stepper(), G4HelixExplicitEuler::Stepper(), G4HelixMixedStepper::Stepper(), and Stepper().
|
delete |
|
inlineprotected |
Modifiers and accessors for storing and using the parameters of a track: radius of curve, Stepping angle, Radius of projected helix.
Referenced by AdvanceHelix(), G4HelixExplicitEuler::Stepper(), and G4HelixMixedStepper::Stepper().
|
inlineprotected |
Referenced by AdvanceHelix(), and G4HelixMixedStepper::Stepper().
|
inlineprotected |
Referenced by AdvanceHelix().
|
overridevirtual |
The stepper for the Runge Kutta integration. The stepsize is fixed, with the step size given by 'h'. Integrates ODE starting values y[0 to 6]. Outputs yout[] and its estimated error yerr[].
| [in] | y | Starting values array of integration variables. |
| [in] | dydx | Derivatives array. |
| [in] | h | The given step size. |
| [out] | yout | Integration output. |
| [out] | yerr | The estimated error. |
Implements G4MagIntegratorStepper.
Definition at line 184 of file G4MagHelicalStepper.cc.