Geant4-11
Public Member Functions | Static Protected Attributes | Friends
G4VIntegrationDriver Class Referenceabstract

#include <G4VIntegrationDriver.hh>

Inheritance diagram for G4VIntegrationDriver:
G4BFieldIntegrationDriver G4IntegrationDriver< G4BulirschStoer > G4MagInt_Driver G4OldMagIntDriver G4RKIntegrationDriver< T > G4FSALIntegrationDriver< T > G4IntegrationDriver< T > G4InterpolationDriver< T >

Public Member Functions

virtual G4bool AccurateAdvance (G4FieldTrack &track, G4double hstep, G4double eps, G4double hinitial=0)=0
 
virtual G4double AdvanceChordLimited (G4FieldTrack &track, G4double hstep, G4double eps, G4double chordDistance)=0
 
virtual G4double ComputeNewStepSize (G4double errMaxNorm, G4double hstepCurrent)=0
 
virtual G4bool DoesReIntegrate () const =0
 
virtual void GetDerivatives (const G4FieldTrack &track, G4double dydx[]) const =0
 
virtual void GetDerivatives (const G4FieldTrack &track, G4double dydx[], G4double field[]) const =0
 
virtual G4EquationOfMotionGetEquationOfMotion ()=0
 
virtual const G4MagIntegratorStepperGetStepper () const =0
 
virtual G4MagIntegratorStepperGetStepper ()=0
 
virtual G4int GetVerboseLevel () const =0
 
virtual void OnComputeStep ()=0
 
virtual void OnStartTracking ()=0
 
virtual G4bool QuickAdvance (G4FieldTrack &, const G4double[], G4double, G4double &, G4double &)
 
virtual void RenewStepperAndAdjust (G4MagIntegratorStepper *pItsStepper)
 
virtual void SetEquationOfMotion (G4EquationOfMotion *equation)=0
 
virtual void SetVerboseLevel (G4int level)=0
 
virtual void StreamInfo (std::ostream &os) const =0
 
virtual ~G4VIntegrationDriver ()=default
 

Static Protected Attributes

static constexpr G4double max_stepping_decrease = 0.1
 
static constexpr G4double max_stepping_increase = 5
 

Friends

std::ostream & operator<< (std::ostream &os, const G4VIntegrationDriver &id)
 

Detailed Description

Definition at line 51 of file G4VIntegrationDriver.hh.

Constructor & Destructor Documentation

◆ ~G4VIntegrationDriver()

virtual G4VIntegrationDriver::~G4VIntegrationDriver ( )
virtualdefault

Member Function Documentation

◆ AccurateAdvance()

virtual G4bool G4VIntegrationDriver::AccurateAdvance ( G4FieldTrack track,
G4double  hstep,
G4double  eps,
G4double  hinitial = 0 
)
pure virtual

◆ AdvanceChordLimited()

virtual G4double G4VIntegrationDriver::AdvanceChordLimited ( G4FieldTrack track,
G4double  hstep,
G4double  eps,
G4double  chordDistance 
)
pure virtual

◆ ComputeNewStepSize()

virtual G4double G4VIntegrationDriver::ComputeNewStepSize ( G4double  errMaxNorm,
G4double  hstepCurrent 
)
pure virtual

◆ DoesReIntegrate()

virtual G4bool G4VIntegrationDriver::DoesReIntegrate ( ) const
pure virtual

◆ GetDerivatives() [1/2]

virtual void G4VIntegrationDriver::GetDerivatives ( const G4FieldTrack track,
G4double  dydx[] 
) const
pure virtual

◆ GetDerivatives() [2/2]

virtual void G4VIntegrationDriver::GetDerivatives ( const G4FieldTrack track,
G4double  dydx[],
G4double  field[] 
) const
pure virtual

◆ GetEquationOfMotion()

virtual G4EquationOfMotion * G4VIntegrationDriver::GetEquationOfMotion ( )
pure virtual

◆ GetStepper() [1/2]

virtual const G4MagIntegratorStepper * G4VIntegrationDriver::GetStepper ( ) const
pure virtual

◆ GetStepper() [2/2]

virtual G4MagIntegratorStepper * G4VIntegrationDriver::GetStepper ( )
pure virtual

◆ GetVerboseLevel()

virtual G4int G4VIntegrationDriver::GetVerboseLevel ( ) const
pure virtual

◆ OnComputeStep()

virtual void G4VIntegrationDriver::OnComputeStep ( )
pure virtual

◆ OnStartTracking()

virtual void G4VIntegrationDriver::OnStartTracking ( )
pure virtual

◆ QuickAdvance()

virtual G4bool G4VIntegrationDriver::QuickAdvance ( G4FieldTrack ,
const  G4double[],
G4double  ,
G4double ,
G4double  
)
inlinevirtual

◆ RenewStepperAndAdjust()

void G4VIntegrationDriver::RenewStepperAndAdjust ( G4MagIntegratorStepper pItsStepper)
virtual

Reimplemented in G4MagInt_Driver, G4OldMagIntDriver, and G4RKIntegrationDriver< T >.

Definition at line 34 of file G4VIntegrationDriver.cc.

35{
36 G4Exception("G4VIntegrationDriver::RenewStepperAndAdjust",
37 "Geometry001", FatalException,
38 "This method exists only for the original G4MagIntegratorDriver class. "
39 "Not defined for other classes derived from G4VIntegrationDriver");
40}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35

References FatalException, and G4Exception().

◆ SetEquationOfMotion()

virtual void G4VIntegrationDriver::SetEquationOfMotion ( G4EquationOfMotion equation)
pure virtual

◆ SetVerboseLevel()

virtual void G4VIntegrationDriver::SetVerboseLevel ( G4int  level)
pure virtual

◆ StreamInfo()

virtual void G4VIntegrationDriver::StreamInfo ( std::ostream &  os) const
pure virtual

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const G4VIntegrationDriver id 
)
friend

Definition at line 43 of file G4VIntegrationDriver.cc.

44{
45 id.StreamInfo( os );
46 return os;
47}

Field Documentation

◆ max_stepping_decrease

constexpr G4double G4VIntegrationDriver::max_stepping_decrease = 0.1
staticconstexprprotected

◆ max_stepping_increase

constexpr G4double G4VIntegrationDriver::max_stepping_increase = 5
staticconstexprprotected

The documentation for this class was generated from the following files: