Import Geant4 10.7.1 source tree
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// class G4PathFinder Implementation
|
||||
// G4PathFinder Implementation
|
||||
//
|
||||
// Original author: John Apostolakis, April 2006
|
||||
// --------------------------------------------------------------------
|
||||
@@ -464,13 +464,16 @@ void G4PathFinder::Locate( const G4ThreeVector& position,
|
||||
{
|
||||
// Locate the point in each geometry
|
||||
|
||||
auto pNavIter = fpTransportManager->GetActiveNavigatorsIterator();
|
||||
|
||||
G4ThreeVector lastEndPosition = fRelocatedPoint
|
||||
? fLastLocatedPosition
|
||||
: fEndState.GetPosition();
|
||||
fLastLocatedPosition = position;
|
||||
|
||||
#ifdef G4DEBUG_PATHFINDER
|
||||
static const G4double movLenTol = 10*sqr(kCarTolerance);
|
||||
|
||||
std::vector<G4Navigator*>::iterator pNavIter =
|
||||
fpTransportManager->GetActiveNavigatorsIterator();
|
||||
|
||||
G4ThreeVector lastEndPosition = fRelocatedPoint ?
|
||||
fLastLocatedPosition : fEndState.GetPosition();
|
||||
G4ThreeVector moveVec = ( position - lastEndPosition );
|
||||
G4double moveLenSq = moveVec.mag2();
|
||||
if( (!fNewTrack) && ( moveLenSq > movLenTol ) )
|
||||
@@ -478,9 +481,7 @@ void G4PathFinder::Locate( const G4ThreeVector& position,
|
||||
ReportMove( lastEndPosition, position,
|
||||
" (End) Position / G4PathFinder::Locate" );
|
||||
}
|
||||
fLastLocatedPosition = position;
|
||||
|
||||
#ifdef G4DEBUG_PATHFINDER
|
||||
if( fVerboseLevel > 2 )
|
||||
{
|
||||
G4cout << G4endl;
|
||||
|
||||
@@ -226,12 +226,16 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
|
||||
{
|
||||
G4ThreeVector pGlobalpoint = history.GetTransform(ide)
|
||||
.InverseTransformPoint(localPoint);
|
||||
G4cout << "G4RegularNavigation::ComputeStepSkippingEqualMaterials(): another 'zero' step, # "
|
||||
std::ostringstream message;
|
||||
message.precision(16);
|
||||
message << "G4RegularNavigation::ComputeStepSkippingEqualMaterials(): another 'zero' step, # "
|
||||
<< fNumberZeroSteps
|
||||
<< ", at " << pGlobalpoint
|
||||
<< ", nav-comp-step calls # " << ii
|
||||
<< ", Step= " << newStep
|
||||
<< G4endl;
|
||||
<< ", Step= " << newStep;
|
||||
G4Exception("G4RegularNavigation::ComputeStepSkippingEqualMaterials()",
|
||||
"GeomRegNav1002", JustWarning, message,
|
||||
"Potential overlap in geometry!");
|
||||
}
|
||||
#endif
|
||||
if( fNumberZeroSteps > fActionThreshold_NoZeroSteps-1 )
|
||||
@@ -239,7 +243,7 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
|
||||
// Act to recover this stuck track. Pushing it along direction
|
||||
//
|
||||
newStep = std::min(101*kCarTolerance*std::pow(10,fNumberZeroSteps-2),0.1);
|
||||
#ifdef G4VERBOSE
|
||||
#ifdef G4DEBUG_NAVIGATION
|
||||
G4ThreeVector pGlobalpoint = history.GetTransform(ide)
|
||||
.InverseTransformPoint(localPoint);
|
||||
std::ostringstream message;
|
||||
@@ -254,7 +258,7 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
|
||||
<< G4endl
|
||||
<< " Trying pushing it of " << newStep << " mm ...";
|
||||
G4Exception("G4RegularNavigation::ComputeStepSkippingEqualMaterials()",
|
||||
"GeomRegNav1002", JustWarning, message,
|
||||
"GeomRegNav1003", JustWarning, message,
|
||||
"Potential overlap in geometry!");
|
||||
#endif
|
||||
}
|
||||
@@ -273,7 +277,7 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
|
||||
<< "- at point " << pGlobalpoint << G4endl
|
||||
<< " local direction: " << localDirection << G4endl;
|
||||
G4Exception("G4RegularNavigation::ComputeStepSkippingEqualMaterials()",
|
||||
"GeomRegNav1003",
|
||||
"GeomRegNav1004",
|
||||
EventMustBeAborted,
|
||||
message);
|
||||
}
|
||||
|
||||
@@ -925,7 +925,7 @@ G4ReplicaNavigation::ComputeStep(const G4ThreeVector& globalPoint,
|
||||
//
|
||||
if( ourStep<fMinStep )
|
||||
{
|
||||
ourStep = 100*kCarTolerance;
|
||||
ourStep = 2*kCarTolerance;
|
||||
}
|
||||
|
||||
if ( motherSafety<ourSafety )
|
||||
|
||||
Reference in New Issue
Block a user