40#include "G4UniformElectricField.hh"
41#include "G4UniformMagField.hh"
42#include "G4MagneticField.hh"
43#include "G4FieldManager.hh"
44#include "G4TransportationManager.hh"
45#include "G4EquationOfMotion.hh"
46#include "G4EqMagElectricField.hh"
47#include "G4Mag_UsualEqRhs.hh"
48#include "G4MagIntegratorStepper.hh"
49#include "G4MagIntegratorDriver.hh"
50#include "G4ChordFinder.hh"
52#include "G4ExplicitEuler.hh"
53#include "G4ImplicitEuler.hh"
54#include "G4SimpleRunge.hh"
55#include "G4SimpleHeum.hh"
56#include "G4ClassicalRK4.hh"
57#include "G4HelixExplicitEuler.hh"
58#include "G4HelixImplicitEuler.hh"
59#include "G4HelixSimpleRunge.hh"
60#include "G4CashKarpRKF45.hh"
61#include "G4RKG3_Stepper.hh"
63#include "G4PhysicalConstants.hh"
64#include "G4SystemOfUnits.hh"
73 G4ThreeVector(0.0,100000.0*kilovolt/cm,0.0));
121 G4cout<<
" F02ElectricFieldSetup: The minimal step is equal to "
167 const G4int nvar = 8;
175 G4cout<<
"G4ExplicitEuler is calledS"<<G4endl;
179 G4cout<<
"G4ImplicitEuler is called"<<G4endl;
183 G4cout<<
"G4SimpleRunge is called"<<G4endl;
187 G4cout<<
"G4SimpleHeum is called"<<G4endl;
191 G4cout<<
"G4ClassicalRK4 is called"<<G4endl;
195 G4cout<<
"G4CashKarpRKF45 is called"<<G4endl;
199 G4cout<<
"G4RKG3_Stepper is not currently working for Electric Field"
204 G4cout<<
"G4HelixExplicitEuler is not valid for Electric Field"<<G4endl;
208 G4cout<<
"G4HelixImplicitEuler is not valid for Electric Field"<<G4endl;
212 G4cout<<
"G4HelixSimpleRunge is not valid for Electric Field"<<G4endl;
216 G4cout<<
"G4ClassicalRK4 (default) is called"<<G4endl;
236 G4ThreeVector fieldVector( 0.0, 0.0, fieldValue );
252 if (fieldVector != G4ThreeVector(0.,0.,0.))
262 fieldMgr->SetDetectorField(
fEMfield);
272 return G4TransportationManager::GetTransportationManager()
Definition of the F02ElectricFieldSetup class.
Definition of the F02FieldMessenger class.
G4FieldManager * fFieldManager
F02FieldMessenger * fFieldMessenger
G4EqMagElectricField * fEquation
G4FieldManager * GetGlobalFieldManager()
void SetFieldValue(G4ThreeVector fieldVector)
G4ChordFinder * fChordFinder
void SetFieldZValue(G4double fieldValue)
G4ElectricField * fEMfield
virtual ~F02ElectricFieldSetup()
G4MagInt_Driver * fIntgrDriver
G4MagIntegratorStepper * fStepper