Import Geant4 4.0.0 source tree
This commit is contained in:
@@ -21,8 +21,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4PropagatorInField.icc,v 1.18.2.2 2001/06/28 20:18:53 gunter Exp $
|
||||
// GEANT4 tag $Name: $
|
||||
// $Id: G4PropagatorInField.icc,v 1.25 2001/12/08 00:07:24 japost Exp $
|
||||
// GEANT4 tag $Name: geant4-04-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------------------
|
||||
@@ -48,15 +48,21 @@ G4PropagatorInField::G4PropagatorInField(G4Navigator *theNavigator,
|
||||
End_PointAndTangent(G4ThreeVector(0.,0.,0.),
|
||||
G4ThreeVector(0.,0.,0.),0.0,0.0,0.0,0.0,0.0),
|
||||
fVerboseLevel(0),
|
||||
fmax_loop_count(10000)
|
||||
fEpsilonMin(fEpsilonMinDefault),
|
||||
fEpsilonMax(fEpsilonMaxDefault),
|
||||
fmax_loop_count(10000),
|
||||
fNoZeroStep(0)
|
||||
{
|
||||
// this->fChordFinder = new G4ChordFinder( (G4MagneticField*)0, 1e-6 );
|
||||
|
||||
fNoZeroStep=0;
|
||||
fThresholdNo_ZeroSteps= 2;
|
||||
fActionThreshold_NoZeroSteps= 2;
|
||||
fSevereActionThreshold_NoZeroSteps= 10;
|
||||
fAbandonThreshold_NoZeroSteps= 50;
|
||||
// fMidPoint_CurveLen_of_LastAttempt= -1;
|
||||
fFull_CurveLen_of_LastAttempt= -1;
|
||||
fLast_ProposedStepLength= -1;
|
||||
|
||||
fLargestAcceptableStep= 1000.0 * meter;
|
||||
}
|
||||
|
||||
inline
|
||||
@@ -186,3 +192,39 @@ void G4PropagatorInField::SetMinimumEpsilonStep(G4double newEpsMin)
|
||||
if( (newEpsMin > 0.0) && (fabs(1.0+newEpsMin)>1.0) )
|
||||
fEpsilonMin= newEpsMin;
|
||||
}
|
||||
|
||||
inline void G4PropagatorInField::SetLargestAcceptableStep(G4double newBigDist)
|
||||
{if(fLargestAcceptableStep>0.0) fLargestAcceptableStep= newBigDist; }
|
||||
|
||||
inline G4double G4PropagatorInField::GetLargestAcceptableStep()
|
||||
{return fLargestAcceptableStep;}
|
||||
|
||||
inline G4FieldManager* G4PropagatorInField::GetCurrentFieldManager()
|
||||
{ return fCurrentFieldMgr; }
|
||||
|
||||
inline void G4PropagatorInField::SetThresholdNoZeroStep( G4int noAct, G4int noHarsh, G4int noAbandon)
|
||||
{
|
||||
if(noAct>0)
|
||||
fActionThreshold_NoZeroSteps= noAct;
|
||||
|
||||
if( noHarsh > fActionThreshold_NoZeroSteps)
|
||||
fSevereActionThreshold_NoZeroSteps= noHarsh;
|
||||
else
|
||||
fSevereActionThreshold_NoZeroSteps= 2*(fActionThreshold_NoZeroSteps+1);
|
||||
|
||||
if( noAbandon > fSevereActionThreshold_NoZeroSteps+5)
|
||||
fAbandonThreshold_NoZeroSteps= noAbandon;
|
||||
else
|
||||
fAbandonThreshold_NoZeroSteps= 2*(fSevereActionThreshold_NoZeroSteps+3);
|
||||
}
|
||||
|
||||
inline G4int G4PropagatorInField::GetThresholdNoZeroSteps(G4int i)
|
||||
{
|
||||
G4int t=0;
|
||||
if( i==0 ) { t = 3; } // No of parameters
|
||||
else if (i==1) { t = fActionThreshold_NoZeroSteps; }
|
||||
else if (i==2) { t = fSevereActionThreshold_NoZeroSteps; }
|
||||
else if (i==3) { t = fAbandonThreshold_NoZeroSteps; }
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user