Import Geant4 8.3.0 source tree
This commit is contained in:
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4GeomTestSegment.cc,v 1.5 2006/06/29 18:36:46 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: G4GeomTestSegment.cc,v 1.7 2007/04/26 15:15:02 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 class source file
|
||||
@@ -189,6 +189,8 @@ void G4GeomTestSegment::PatchInconsistencies( G4GeomTestLogger *logger )
|
||||
// Oh oh. No solution. Delete the current point and complain.
|
||||
//
|
||||
logger->SolidProblem( solid, "Spurious exiting intersection point", p );
|
||||
// G4cout<<" dir="<<curr->GetDistance()<<" entering="<<curr->Entering()<<" SigneNorm="<<v.dot(solid->SurfaceNormal(p))<<G4endl;
|
||||
|
||||
curr = points.erase(curr);
|
||||
break;
|
||||
}
|
||||
@@ -237,7 +239,7 @@ void G4GeomTestSegment::PatchInconsistencies( G4GeomTestLogger *logger )
|
||||
curr = points.erase(curr);
|
||||
}
|
||||
|
||||
curr = next + 1;
|
||||
if(curr!=points.end()){curr = next + 1;}
|
||||
} while( curr != points.end() );
|
||||
|
||||
//
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Navigator.cc,v 1.25 2006/11/11 01:28:23 japost Exp $
|
||||
// $Id: G4Navigator.cc,v 1.25.2.1 2007/01/31 15:05:07 gcosmo Exp $
|
||||
// GEANT4 tag $ Name: $
|
||||
//
|
||||
// class G4Navigator Implementation
|
||||
@@ -822,6 +822,7 @@ G4double G4Navigator::ComputeStep( const G4ThreeVector &pGlobalpoint,
|
||||
<< " in volume -" << motherPhysical->GetName()
|
||||
<< "- at point " << pGlobalpoint << G4endl
|
||||
<< " direction: " << pDirection << "." << G4endl;
|
||||
motherPhysical->CheckOverlaps(5000, false);
|
||||
G4Exception("G4Navigator::ComputeStep()",
|
||||
"StuckTrack", EventMustBeAborted,
|
||||
"Stuck Track: potential geometry or navigation problem.");
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4PropagatorInField.cc,v 1.29 2006/11/17 16:53:45 japost Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: G4PropagatorInField.cc,v 1.30 2007/01/25 21:27:50 japost Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
//
|
||||
// This class implements an algorithm to track a particle in a
|
||||
@@ -1118,11 +1118,20 @@ G4PropagatorInField::IntersectChord( G4ThreeVector StartPointA,
|
||||
intersects = false;
|
||||
|
||||
NewSafety= currentSafety;
|
||||
|
||||
#if 0
|
||||
G4cout << " G4PropagatorInField does not call Navigator::ComputeStep " << G4endl ;
|
||||
G4cout << " step= " << LinearStepLength << " safety= " << NewSafety << G4endl;
|
||||
G4cout << " safety: Origin = " << fPreviousSftOrigin << " val= " << fPreviousSafety << G4endl;
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
doCallNav= true;
|
||||
// Check whether any volumes are encountered by the chord AB
|
||||
|
||||
// G4cout << " G4PropagatorInField calling Navigator::ComputeStep " << G4endl ;
|
||||
|
||||
LinearStepLength =
|
||||
fNavigator->ComputeStep( StartPointA, ChordAB_Dir,
|
||||
ChordAB_Length, NewSafety );
|
||||
@@ -1131,6 +1140,8 @@ G4PropagatorInField::IntersectChord( G4ThreeVector StartPointA,
|
||||
// and it did not find a surface boundary at that length
|
||||
LinearStepLength = std::min( LinearStepLength, ChordAB_Length);
|
||||
|
||||
// G4cout << " G4PiF got step= " << LinearStepLength << " safety= " << NewSafety << G4endl;
|
||||
|
||||
// Save the last calculated safety!
|
||||
fPreviousSftOrigin = StartPointA;
|
||||
fPreviousSafety= NewSafety;
|
||||
@@ -1294,8 +1305,21 @@ G4PropagatorInField::SetTrajectoryFilter(G4VCurvedTrajectoryFilter* filter) {
|
||||
|
||||
void G4PropagatorInField::ClearPropagatorState()
|
||||
{
|
||||
G4Exception("G4PropagatorInField::ClearPropagatorState()", "NotImplemented",
|
||||
FatalException, "Functionality not yet implemented.");
|
||||
// G4Exception("G4PropagatorInField::ClearPropagatorState()", "NotImplemented",
|
||||
// FatalException, "Functionality not yet implemented.");
|
||||
|
||||
// Goal: Clear all memory of previous steps, cached information
|
||||
fParticleIsLooping= false;
|
||||
fNoZeroStep= 0;
|
||||
|
||||
End_PointAndTangent= G4FieldTrack( G4ThreeVector(0.,0.,0.),
|
||||
G4ThreeVector(0.,0.,0.),0.0,0.0,0.0,0.0,0.0);
|
||||
|
||||
fFull_CurveLen_of_LastAttempt = -1;
|
||||
fLast_ProposedStepLength = -1;
|
||||
|
||||
fPreviousSftOrigin= G4ThreeVector(0.,0.,0.);
|
||||
fPreviousSafety= 0.0;
|
||||
}
|
||||
|
||||
G4FieldManager*
|
||||
|
||||
Reference in New Issue
Block a user