42 #include "G4UniformElectricField.hh" 43 #include "G4UniformMagField.hh" 44 #include "G4MagneticField.hh" 45 #include "G4FieldManager.hh" 46 #include "G4TransportationManager.hh" 47 #include "G4EquationOfMotion.hh" 48 #include "G4EqMagElectricField.hh" 49 #include "G4Mag_UsualEqRhs.hh" 50 #include "G4MagIntegratorStepper.hh" 51 #include "G4MagIntegratorDriver.hh" 52 #include "G4ChordFinder.hh" 54 #include "G4ExplicitEuler.hh" 55 #include "G4ImplicitEuler.hh" 56 #include "G4SimpleRunge.hh" 57 #include "G4SimpleHeum.hh" 58 #include "G4ClassicalRK4.hh" 59 #include "G4HelixExplicitEuler.hh" 60 #include "G4HelixImplicitEuler.hh" 61 #include "G4HelixSimpleRunge.hh" 62 #include "G4CashKarpRKF45.hh" 63 #include "G4RKG3_Stepper.hh" 65 #include "G4PhysicalConstants.hh" 66 #include "G4SystemOfUnits.hh" 73 : fFieldManager(fieldManager),
82 fEMfield =
new G4UniformElectricField(G4ThreeVector(0.0,500.0*
volt/
cm,0.0));
91 G4FieldManager* fieldManager)
127 G4cout<<
"The minimal step is equal to "<<
fMinStep/
mm<<
" mm"<<G4endl;
156 G4cout<<
"G4ExplicitEuler is calledS"<<G4endl;
160 G4cout<<
"G4ImplicitEuler is called"<<G4endl;
164 G4cout<<
"G4SimpleRunge is called"<<G4endl;
168 G4cout<<
"G4SimpleHeum is called"<<G4endl;
172 G4cout<<
"G4ClassicalRK4 (default) is called"<<G4endl;
176 G4cout<<
"G4CashKarpRKF45 is called"<<G4endl;
180 G4cout<<
"G4RKG3_Stepper is not currently working for Electric Field" 185 G4cout<<
"G4HelixExplicitEuler is not valid for Electric Field"<<G4endl;
189 G4cout<<
"G4HelixImplicitEuler is not valid for Electric Field"<<G4endl;
193 G4cout<<
"G4HelixSimpleRunge is not valid for Electric Field"<<G4endl;
205 return G4TransportationManager::GetTransportationManager()
static constexpr double cm
G4EqMagElectricField * fEquation
EMFieldSetup(G4ElectroMagneticField *field, G4FieldManager *m=0)
G4ChordFinder * fChordFinder
volt_as<> volt
Type of potential stored in volts, in double precision.
G4FieldManager * fFieldManager
G4MagIntegratorStepper * fStepper
G4MagInt_Driver * fIntgrDriver
G4ElectroMagneticField * fEMfield
static constexpr double mm
G4FieldManager * GetGlobalFieldManager()