50 fMinStep(0.01*
mm), fDeltaChord(3.0*
mm),
51 fDeltaOneStep(0.01*
mm), fDeltaIntersection(0.1*
mm),
52 fEpsMin(2.5
e-7*
mm), fEpsMax(0.05*
mm),
53 fEquation(0), fFieldManager(0),
54 fFieldPropagator(0), fStepper(0), fChordFinder(0)
77 F04GlobalField::~F04GlobalField()
81 delete fFieldMessenger;
83 if (fEquation)
delete fEquation;
84 if (fFieldManager)
delete fFieldManager;
85 if (fFieldPropagator)
delete fFieldPropagator;
86 if (fStepper)
delete fStepper;
87 if (fChordFinder)
delete fChordFinder;
142 G4cout <<
"Accuracy Parameters:" <<
143 " MinStep=" << fMinStep <<
144 " DeltaChord=" << fDeltaChord <<
145 " DeltaOneStep=" << fDeltaOneStep <<
G4endl;
147 " DeltaIntersection=" << fDeltaIntersection <<
148 " EpsMin=" << fEpsMin <<
149 " EpsMax=" << fEpsMax <<
G4endl;
167 if(fStepper)
delete fStepper;
169 switch ( fStepperType )
194 G4cout <<
"G4ClassicalRK4 (default) is called" <<
G4endl;
201 default: fStepper = 0;
221 field[0] = field[1] = field[2] = field[3] = field[4] = field[5] = 0.0;
224 if(point[0] != point[0])
return;
229 for (
int i=0; i<fNfp; ++i) {
243 if (fFields->size()>0) {
244 FieldList::iterator i;
245 for (i=fFields->begin(); i!=fFields->end(); ++i)
delete *i;
250 if (fFp)
delete[] fFp;
260 void F04GlobalField::SetupArray()
263 fNfp = fFields->size();
265 for (
int i=0; i<fNfp; ++i) fFp[i] = (*fFields)[i];