Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
|
#include <G4VIntegrationDriver.hh>
Public Member Functions | |
virtual | ~G4VIntegrationDriver ()=default |
virtual G4double | AdvanceChordLimited (G4FieldTrack &track, G4double hstep, G4double eps, G4double chordDistance)=0 |
virtual G4bool | AccurateAdvance (G4FieldTrack &track, G4double hstep, G4double eps, G4double hinitial=0)=0 |
virtual void | SetEquationOfMotion (G4EquationOfMotion *equation)=0 |
virtual G4EquationOfMotion * | GetEquationOfMotion ()=0 |
virtual void | RenewStepperAndAdjust (G4MagIntegratorStepper *pItsStepper) |
virtual void | SetVerboseLevel (G4int level)=0 |
virtual G4int | GetVerboseLevel () const =0 |
virtual void | OnComputeStep (const G4FieldTrack *=nullptr)=0 |
virtual void | OnStartTracking ()=0 |
virtual G4bool | QuickAdvance (G4FieldTrack &, const G4double[], G4double, G4double &, G4double &) |
virtual void | GetDerivatives (const G4FieldTrack &track, G4double dydx[]) const =0 |
virtual void | GetDerivatives (const G4FieldTrack &track, G4double dydx[], G4double field[]) const =0 |
virtual const G4MagIntegratorStepper * | GetStepper () const =0 |
virtual G4MagIntegratorStepper * | GetStepper ()=0 |
virtual G4double | ComputeNewStepSize (G4double errMaxNorm, G4double hstepCurrent)=0 |
virtual G4bool | DoesReIntegrate () const =0 |
virtual void | StreamInfo (std::ostream &os) const =0 |
Static Protected Attributes | |
static constexpr G4double | max_stepping_increase = 5 |
static constexpr G4double | max_stepping_decrease = 0.1 |
Friends | |
std::ostream & | operator<< (std::ostream &os, const G4VIntegrationDriver &id) |
Definition at line 53 of file G4VIntegrationDriver.hh.
|
virtualdefault |
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, and G4OldMagIntDriver.
Referenced by G4BFieldIntegrationDriver::AccurateAdvance(), G4ChordFinder::ApproxCurvePointS(), G4ChordFinder::ApproxCurvePointV(), and G4BrentLocator::EstimateIntersectionPoint().
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, G4OldMagIntDriver, and G4QSSDriver< T >.
Referenced by G4BFieldIntegrationDriver::AdvanceChordLimited().
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4IntegrationDriver< G4BulirschStoer >, G4MagInt_Driver, G4OldMagIntDriver, and G4RKIntegrationDriver< T >.
Referenced by G4BFieldIntegrationDriver::ComputeNewStepSize().
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, and G4OldMagIntDriver.
Referenced by G4BFieldIntegrationDriver::DoesReIntegrate(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4IntegrationDriver< G4BulirschStoer >, G4MagInt_Driver, G4OldMagIntDriver, and G4RKIntegrationDriver< T >.
Referenced by G4BFieldIntegrationDriver::GetEquationOfMotion(), G4ErrorPropagatorManager::InitFieldForBackwards(), and G4FieldManager::SetDetectorField().
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, and G4OldMagIntDriver.
Referenced by G4BFieldIntegrationDriver::GetVerboseLevel().
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, G4OldMagIntDriver, and G4QSSDriver< T >.
Referenced by G4BFieldIntegrationDriver::AdvanceChordLimited().
|
pure virtual |
|
inlinevirtual |
Reimplemented in G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4MagInt_Driver, and G4OldMagIntDriver.
Definition at line 85 of file G4VIntegrationDriver.hh.
|
virtual |
Reimplemented in G4MagInt_Driver, G4OldMagIntDriver, and G4RKIntegrationDriver< T >.
Definition at line 34 of file G4VIntegrationDriver.cc.
|
pure virtual |
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, and G4OldMagIntDriver.
Referenced by G4PropagatorInField::SetVerboseLevel().
|
pure virtual |
Implemented in G4BFieldIntegrationDriver, G4BorisDriver, G4FSALIntegrationDriver< T >, G4IntegrationDriver< T >, G4IntegrationDriver< G4BulirschStoer >, G4InterpolationDriver< T, StepperCachesDchord >, G4InterpolationDriver< T, true >, G4MagInt_Driver, G4OldMagIntDriver, and G4RKIntegrationDriver< T >.
|
friend |
Definition at line 43 of file G4VIntegrationDriver.cc.
|
staticconstexprprotected |
Definition at line 125 of file G4VIntegrationDriver.hh.
Referenced by G4MagInt_Driver::ComputeNewStepSize_WithinLimits(), and G4OldMagIntDriver::ComputeNewStepSize_WithinLimits().
|
staticconstexprprotected |
Definition at line 124 of file G4VIntegrationDriver.hh.
Referenced by G4OldMagIntDriver::ComputeNewStepSize(), G4MagInt_Driver::ComputeNewStepSize_WithinLimits(), G4OldMagIntDriver::ComputeNewStepSize_WithinLimits(), G4MagInt_Driver::ComputeNewStepSize_WithoutReductionLimit(), G4MagInt_Driver::OneGoodStep(), and G4OldMagIntDriver::OneGoodStep().