ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4NystromRK4 Class Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/magneticfield/include/G4NystromRK4.hh>

+ Inheritance diagram for G4NystromRK4:
+ Collaboration diagram for G4NystromRK4:

Public Member Functions

 G4NystromRK4 (G4Mag_EqRhs *EquationMotion, G4double distanceConstField=0.0)
 
virtual void Stepper (const G4double y[], const G4double dydx[], G4double hstep, G4double yOut[], G4double yError[]) override
 
void SetDistanceForConstantField (G4double length)
 
G4double GetDistanceForConstantField () const
 
virtual G4int IntegratorOrder () const override
 
virtual G4double DistChord () const override
 
- Public Member Functions inherited from G4MagIntegratorStepper
 G4MagIntegratorStepper (G4EquationOfMotion *Equation, G4int numIntegrationVariables, G4int numStateVariables=12, G4bool isFSAL=false)
 
virtual ~G4MagIntegratorStepper ()=default
 
 G4MagIntegratorStepper (const G4MagIntegratorStepper &)=delete
 
G4MagIntegratorStepperoperator= (const G4MagIntegratorStepper &)=delete
 
void NormaliseTangentVector (G4double vec[6])
 
void NormalisePolarizationVector (G4double vec[12])
 
void RightHandSide (const G4double y[], G4double dydx[]) const
 
void RightHandSide (const G4double y[], G4double dydx[], G4double field[]) const
 
G4int GetNumberOfVariables () const
 
G4int GetNumberOfStateVariables () const
 
G4int IntegrationOrder ()
 
G4EquationOfMotionGetEquationOfMotion ()
 
const G4EquationOfMotionGetEquationOfMotion () const
 
void SetEquationOfMotion (G4EquationOfMotion *newEquation)
 
unsigned long GetfNoRHSCalls ()
 
void ResetfNORHSCalls ()
 
G4bool IsFSAL () const
 

Private Member Functions

void GetFieldValue (const G4double point[4], G4double field[3])
 
G4double GetFCof ()
 
G4CachedMagneticFieldGetField ()
 
const G4CachedMagneticFieldGetField () const
 

Private Attributes

G4double fMomentum = 0.0
 
G4double fMomentum2 = 0.0
 
G4double fInverseMomentum = 0.0
 
G4double fCoefficient = 0.0
 
G4ThreeVector fInitialPoint
 
G4ThreeVector fMidPoint
 
G4ThreeVector fEndPoint
 
std::unique_ptr
< G4CachedMagneticField
fCachedField
 

Additional Inherited Members

- Protected Member Functions inherited from G4MagIntegratorStepper
void SetIntegrationOrder (G4int order)
 
void SetFSAL (G4bool flag=true)
 

Detailed Description

Definition at line 51 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 51 of file G4NystromRK4.hh

Constructor & Destructor Documentation

G4NystromRK4::G4NystromRK4 ( G4Mag_EqRhs EquationMotion,
G4double  distanceConstField = 0.0 
)

Definition at line 51 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 51 of file G4NystromRK4.cc

References SetDistanceForConstantField().

+ Here is the call graph for this function:

Member Function Documentation

G4double G4NystromRK4::DistChord ( ) const
overridevirtual

Implements G4MagIntegratorStepper.

Definition at line 183 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 183 of file G4NystromRK4.cc

References G4LineSection::Distline(), fEndPoint, and fInitialPoint.

+ Here is the call graph for this function:

G4double G4NystromRK4::GetDistanceForConstantField ( ) const

Definition at line 206 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 206 of file G4NystromRK4.cc

References G4CachedMagneticField::GetConstDistance(), and GetField().

+ Here is the call graph for this function:

G4double G4NystromRK4::GetFCof ( )
inlineprivate

Referenced by Stepper().

+ Here is the caller graph for this function:

G4CachedMagneticField * G4NystromRK4::GetField ( )
private

Definition at line 215 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 215 of file G4NystromRK4.cc

References G4MagIntegratorStepper::GetEquationOfMotion(), and G4EquationOfMotion::GetFieldObj().

Referenced by GetDistanceForConstantField(), GetField(), and SetDistanceForConstantField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4CachedMagneticField * G4NystromRK4::GetField ( ) const
private

Definition at line 220 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 220 of file G4NystromRK4.cc

References GetField().

+ Here is the call graph for this function:

void G4NystromRK4::GetFieldValue ( const G4double  point[4],
G4double  field[3] 
)
inlineprivate

Referenced by Stepper().

+ Here is the caller graph for this function:

virtual G4int G4NystromRK4::IntegratorOrder ( ) const
inlineoverridevirtual

Implements G4MagIntegratorStepper.

Definition at line 70 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 70 of file G4NystromRK4.hh

void G4NystromRK4::SetDistanceForConstantField ( G4double  length)

Definition at line 188 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 188 of file G4NystromRK4.cc

References fCachedField, G4Exception(), G4MagIntegratorStepper::GetEquationOfMotion(), GetField(), JustWarning, G4CachedMagneticField::SetConstDistance(), and G4EquationOfMotion::SetFieldObj().

Referenced by G4NystromRK4().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4NystromRK4::Stepper ( const G4double  y[],
const G4double  dydx[],
G4double  hstep,
G4double  yOut[],
G4double  yError[] 
)
overridevirtual

Implements G4MagIntegratorStepper.

Definition at line 60 of file G4NystromRK4.cc.

View newest version in sPHENIX GitHub at line 60 of file G4NystromRK4.cc

References fCoefficient, fEndPoint, fInitialPoint, fInverseMomentum, fMidPoint, fMomentum, fMomentum2, GetFCof(), GetFieldValue(), field_utils::getValue(), and field_utils::getValue2().

+ Here is the call graph for this function:

Member Data Documentation

std::unique_ptr<G4CachedMagneticField> G4NystromRK4::fCachedField
private

Definition at line 89 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 89 of file G4NystromRK4.hh

Referenced by SetDistanceForConstantField().

G4double G4NystromRK4::fCoefficient = 0.0
private

Definition at line 84 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 84 of file G4NystromRK4.hh

Referenced by Stepper().

G4ThreeVector G4NystromRK4::fEndPoint
private

Definition at line 87 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 87 of file G4NystromRK4.hh

Referenced by DistChord(), and Stepper().

G4ThreeVector G4NystromRK4::fInitialPoint
private

Definition at line 85 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 85 of file G4NystromRK4.hh

Referenced by DistChord(), and Stepper().

G4double G4NystromRK4::fInverseMomentum = 0.0
private

Definition at line 83 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 83 of file G4NystromRK4.hh

Referenced by Stepper().

G4ThreeVector G4NystromRK4::fMidPoint
private

Definition at line 86 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 86 of file G4NystromRK4.hh

Referenced by Stepper().

G4double G4NystromRK4::fMomentum = 0.0
private

Definition at line 81 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 81 of file G4NystromRK4.hh

Referenced by Stepper().

G4double G4NystromRK4::fMomentum2 = 0.0
private

Definition at line 82 of file G4NystromRK4.hh.

View newest version in sPHENIX GitHub at line 82 of file G4NystromRK4.hh

Referenced by Stepper().


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