Import Geant4 9.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 15:58:43 +02:00
parent 96c8bcd0af
commit b79225fb37
7544 changed files with 245407 additions and 91099 deletions
+78 -40
View File
@@ -1,4 +1,4 @@
$Id: History,v 1.142 2007/11/27 18:32:16 japost Exp $
$Id: History,v 1.151 2008/11/26 13:03:28 japost Exp $
-------------------------------------------------------------------
=========================================================
@@ -16,56 +16,94 @@ committal in the CVS repository !
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
November 26th, 2008, J.Apostolakis transport-V09-01-03
----------------------------------
- G4CoupledTransportation:
o Fix: initialise new data member (in constructor) - found by STT
Nov 27th, 2007, J.Apostolakis transport-V09-00-05a
------------------------------
G4CoupledTransportation
- Added updating of particle-looping flag (was commented out.)
November 21st, 2008, J.Apostolakis transport-V09-01-02
----------------------------------
- G4Transportation & G4CoupledTransportation:
o Performance improvement/correction
Avoid to compute safety at end of step for neutral particles
Nov 8th, 2007, J.Apostolakis transport-V09-00-05
------------------------------
G4Transportation:
- Create new method (and class member) for flag on Short StepOptimisation.
* When it is true, the optimisation is 'on' steps shorter than the
safety will not call G4Navigator - so long as the particle goes straight
ie it is not charged or there is no field.
* Retained the default value as 'off' - as since changed in
transport-V09-00-02 following Alex's suggestion.
November 21st, 2008, J.Apostolakis transport-V09-01-01
----------------------------------
Nov 8th, 2007, J.Apostolakis transport-V09-00-04
------------------------------
G4Transportation (AlongStepGPIL)
- Moved the call to ConfigureForTrack before the check whether
- G4Transportation & G4CoupledTransportation:
o Push value & origin of safety to SafetyHelper
only when its value comes from ComputeSafety
January 17th, 2008, J.Apostolakis transport-V09-01-00
---------------------------------
- G4Transportation & G4CoupledTransportation:
o Clear state of all Chord Finders using G4FieldManagerStore.
- Syncronised with files on the HEAD.
- Requires co-working tag "field-V09-01-00" (or "field-V09-00-03").
Functionality corresponding to tag "transport-V09-00-52".
November 27th, 2007, J.Apostolakis transport-V09-00-08
----------------------------------
- G4CoupledTransportation
o Added updating of particle-looping flag (was commented out.).
November 10th, 2007, J.Apostolakis transport-V09-00-07
----------------------------------
- G4Transportation:
o Put back the default for short step optimisation to 'on'.
November 9th, 2007, J.Apostolakis transport-V09-00-06
---------------------------------
- G4Transportation:
o Update the SafetyHelper using the safety calculated by Navigator.
November 27th, 2007, J.Apostolakis transport-V09-00-05a
----------------------------------
- G4CoupledTransportation
o Added updating of particle-looping flag (was commented out.)
- Also called "transport-V09-00-51" to make it canonical.
November 8th, 2007, J.Apostolakis transport-V09-00-05
---------------------------------
- G4Transportation:
o Created new method (and class member) for flag on Short StepOptimisation.
* When it is true, the optimisation is 'on' steps shorter than the
safety will not call G4Navigator - so long as the particle goes straight
ie it is not charged or there is no field.
* Retained the default value as 'off' - as since changed in
transport-V09-00-02 following Alex's suggestion.
November 8th, 2007, J.Apostolakis transport-V09-00-04
---------------------------------
- G4Transportation (AlongStepGPIL):
o Moved the call to ConfigureForTrack before the check whether
fieldMgr has 0 field ptr, in order to enable it to be called
even if the field manager points to a zero field.
Needed to enable a user to switch a global field on (off was possible),
as a track goes between volume (or regions) of a setup.
[ Response to request of Atlas/ZM. ]
Note: this ordering already existed in G4CoupledTransportation.
Needed to enable a user to switch a global field on (off was possible), as a
track goes between volume (or regions) of a setup.
[ Response to request of Atlas/ZM. ]
Note: this ordering already existed in G4CoupledTransportation.
Oct 12th, 2007, J.Apostolakis transport-V09-00-03
------------------------------
G4CoupledTransportation
- Improves condition for flag that regulates Relocating when only
October 12th, 2007, J.Apostolakis transport-V09-00-03
---------------------------------
- G4CoupledTransportation:
o Improves condition for flag that regulates Relocating when only
any geometry (including a parallel geometry) limits the step.
New PathFinder method required.
-> Requires and co-works with tag geomnav-V09-00-03
- Requires and co-works with tag geomnav-V09-00-03
Oct 4th, 2007, J.Apostolakis transport-V09-00-02
------------------------------
G4CoupledTransportation
- First fix for problem in condition for Relocating when only a parallel
October 4th, 2007, J.Apostolakis transport-V09-00-02
--------------------------------
- G4CoupledTransportation:
o First fix for problem in condition for Relocating when only a parallel
geometry limited the step.
- Change of condition for recalculation safety (from Alex Howard) used,
o Change of condition for recalculation safety (from Alex Howard) used,
as currently it improves stability.
Sept 25th, 2007, J.Apostolakis transport-V09-00-01
------------------------------
G4Transportation
- Modification to disable 'optimisation' in G4Navigator for small linear
September 25th, 2007, J.Apostolakis transport-V09-00-01
-----------------------------------
- G4Transportation:
Modification to disable 'optimisation' in G4Navigator for small linear
step (ie when a track does less than the safety).
* Relevant only if there is no field, or the particle is neutral
* Temporary measure (in current form) to improve comparison
@@ -74,7 +112,7 @@ G4Transportation
July 12th, 2007, J.Apostolakis transport-V09-00-00
------------------------------
- Retagged to enable testing of new developments
(which were not included in release 9.0)
(which were not included in release 9.0)
June 6th, 2007, G.Cosmo transport-V08-03-14
-----------------------
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4CoupledTransportation.hh,v 1.6 2007/05/29 13:50:14 japost Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4CoupledTransportation.hh,v 1.7 2008/11/21 18:27:42 japost Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//
// ------------------------------------------------------------
@@ -60,6 +60,7 @@
#include "G4Track.hh"
#include "G4Step.hh"
#include "G4ParticleChangeForTransport.hh"
class G4SafetyHelper;
class G4CoupledTransportation : public G4VProcess
{
@@ -215,6 +216,8 @@ class G4CoupledTransportation : public G4VProcess
G4double fSumEnergyKilled;
G4double fMaxEnergyKilled;
G4SafetyHelper* fpSafetyHelper; // To pass it the safety value obtained
// Verbosity
G4int fVerboseLevel;
// Verbosity level for warnings
@@ -25,7 +25,7 @@
//
//
// $Id: G4CoupledTransportation.icc,v 1.4 2007/05/29 13:50:15 japost Exp $
// GEANT4 tag $Name: geant4-09-01 $
// GEANT4 tag $Name: geant4-09-02 $
//
//
@@ -23,8 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4NeutronKiller.hh,v 1.1 2006/11/17 15:53:04 vnivanch Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4NeutronKiller.hh,v 1.2 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//---------------------------------------------------------------------------
//
@@ -23,8 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4NeutronKillerMessenger.hh,v 1.1 2006/11/17 15:53:04 vnivanch Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4NeutronKillerMessenger.hh,v 1.2 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//---------------------------------------------------------------------------
//
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4StepLimiter.hh,v 1.3 2006/06/29 21:10:28 gunter Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4StepLimiter.hh,v 1.4 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// class description
//
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4TrackTerminator.hh,v 1.3 2006/06/29 21:10:30 gunter Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4TrackTerminator.hh,v 1.4 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// ----------------------------------------------------------------------
// Class G4TrackTerminator
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4Transportation.hh,v 1.16 2007/11/08 17:59:38 japost Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4Transportation.hh,v 1.17 2007/11/09 15:39:20 japost Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//
// ------------------------------------------------------------
@@ -54,6 +54,7 @@
#include "G4Track.hh"
#include "G4Step.hh"
#include "G4ParticleChangeForTransport.hh"
class G4SafetyHelper;
class G4Transportation : public G4VProcess
{
@@ -204,6 +205,8 @@ class G4Transportation : public G4VProcess
// If using it, the safety estimate for endpoint will likely be smaller.
G4bool fShortStepOptimisation;
G4SafetyHelper* fpSafetyHelper; // To pass it the safety value obtained
// Verbosity
G4int fVerboseLevel;
// Verbosity level for warnings
@@ -25,7 +25,7 @@
//
//
// $Id: G4Transportation.icc,v 1.11 2007/11/08 17:59:52 japost Exp $
// GEANT4 tag $Name: geant4-09-01 $
// GEANT4 tag $Name: geant4-09-02 $
//
//
@@ -23,8 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4UserSpecialCuts.hh,v 1.10 2006/06/29 21:10:36 gunter Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4UserSpecialCuts.hh,v 1.11 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// class description
//
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4VTrackTerminator.hh,v 1.7 2007/05/11 14:13:20 gcosmo Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4VTrackTerminator.hh,v 1.8 2007/06/01 07:53:26 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// ----------------------------------------------------------------------
// Class G4VTrackTerminator
@@ -24,9 +24,9 @@
// ********************************************************************
//
//
// $Id: G4CoupledTransportation.cc,v 1.23 2007/11/27 18:25:41 japost Exp $
// $Id: G4CoupledTransportation.cc,v 1.27 2008/11/26 13:01:28 japost Exp $
// --> Merged with 1.60.4.2.2.3 2007/05/09 09:30:28 japost
// GEANT4 tag $Name: geant4-09-01 $
// GEANT4 tag $Name: geant4-09-02 $
// ------------------------------------------------------------
// GEANT 4 class implementation
// =======================================================================
@@ -49,6 +49,7 @@
#include "G4ProductionCutsTable.hh"
#include "G4ParticleTable.hh"
#include "G4ChordFinder.hh"
#include "G4FieldManagerStore.hh"
class G4VSensitiveDetector;
//////////////////////////////////////////////////////////////////////////
@@ -84,6 +85,7 @@ G4CoupledTransportation::G4CoupledTransportation( G4int verboseLevel )
<< fNavigatorId << G4endl;
}
fPathFinder= G4PathFinder::GetInstance();
fpSafetyHelper = transportMgr->GetSafetyHelper(); // New
// Following assignment is to fix small memory leak from simple use of 'new'
static G4TouchableHandle nullTouchableHandle; // Points to (G4VTouchable*) 0
@@ -287,7 +289,7 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
fPreviousSftOrigin = startPosition ;
fPreviousMassSafety = newMassSafety ;
fPreviousFullSafety = newFullSafety ;
// fSafetyHelper->SetCurrentSafety( newFullSafety, startPosition);
// fpSafetyHelper->SetCurrentSafety( newFullSafety, startPosition);
#ifdef G4DEBUG_TRANSPORT
if( fVerboseLevel > 1 ){
@@ -395,8 +397,10 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
// Changed to accomodate processes that cannot update the safety -- JA 22 Nov 06
// Update safety for the end-point, if becomes negative at the end-point.
// To-Try: No safety update if at a boundary
if( startFullSafety < endpointDistance ) // && !fAnyGeometryLimitedStep )
if( (startFullSafety < endpointDistance )
&& ( particleCharge != 0.0 ) ) // Only needed to prepare for Mult Scat.
// && !fAnyGeometryLimitedStep ) // To-Try: No safety update if at a boundary
{
G4double endFullSafety =
fPathFinder->ComputeSafety( fTransportEndPosition);
@@ -406,6 +410,9 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
// currently revise the safety
// ==> so we use the all-geometry safety as a precaution
fpSafetyHelper->SetCurrentSafety( endFullSafety, fTransportEndPosition);
// Pushing safety to Helper avoids recalculation at this point
G4ThreeVector centerPt= G4ThreeVector(0.0, 0.0, 0.0); // Used for return value
G4double endMassSafety= fPathFinder->ObtainSafety( fNavigatorId, centerPt);
// Retrieves the mass value from PathFinder (it calculated it)
@@ -413,7 +420,6 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
fPreviousMassSafety = endMassSafety ;
fPreviousFullSafety = endFullSafety;
fPreviousSftOrigin = fTransportEndPosition ;
// fSafetyHelper->SetCurrentSafety( endFullSafety, fTransportEndPosition);
// The convention (Stepping Manager's) is safety from the start point
//
@@ -829,8 +835,10 @@ G4CoupledTransportation::StartTracking(G4Track* aTrack)
G4ChordFinder* chordF= fFieldPropagator->GetChordFinder();
if( chordF ) chordF->ResetStepEstimate();
// Should also do this for the chord finders of local field managers - TODO
}
// Clear the chord finders of all fields (ie managers) derived objects
static G4FieldManagerStore* fieldMgrStore= G4FieldManagerStore::GetInstance();
fieldMgrStore->ClearAllChordFindersState();
#ifdef G4DEBUG_TRANSPORT
if( fVerboseLevel > 1 ){
@@ -23,8 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4NeutronKiller.cc,v 1.1 2006/11/17 15:53:04 vnivanch Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4NeutronKiller.cc,v 1.2 2007/06/01 07:53:27 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//---------------------------------------------------------------------------
//
@@ -23,8 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4NeutronKillerMessenger.cc,v 1.1 2006/11/17 15:53:04 vnivanch Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4NeutronKillerMessenger.cc,v 1.2 2007/06/01 07:53:27 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
//---------------------------------------------------------------------------
//
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4StepLimiter.cc,v 1.3 2006/11/14 09:11:18 gcosmo Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4StepLimiter.cc,v 1.4 2007/06/01 07:53:27 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// --------------------------------------------------------------
// History
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4Transportation.cc,v 1.72 2007/11/08 17:55:57 japost Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4Transportation.cc,v 1.72.2.3 2008/11/21 18:35:15 japost Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// ------------------------------------------------------------
// GEANT 4 include file implementation
@@ -36,20 +36,23 @@
// a particle, ie the geometrical propagation that encounters the
// geometrical sub-volumes of the detectors.
//
// It is also tasked with part of updating the "safety".
// It is also tasked with the key role of proposing the "isotropic safety",
// which will be used to update the post-step point's safety.
//
// =======================================================================
// Modified:
// 19 Jan 2006, P.MoraDeFreitas: Fix for suspended tracks (StartTracking)
// 11 Aug 2004, M.Asai: Add G4VSensitiveDetector* for updating stepPoint.
// 21 June 2003, J.Apostolakis: Calling field manager with
// track, to enable it to configure its accuracy
// 13 May 2003, J.Apostolakis: Zero field areas now taken into
// account correclty in all cases (thanks to W Pokorski).
// 29 June 2001, J.Apostolakis, D.Cote-Ahern, P.Gumplinger:
// correction for spin tracking
// 20 Febr 2001, J.Apostolakis: update for new FieldTrack
// 22 Sept 2000, V.Grichine: update of Kinetic Energy
// 20 Nov 2008, J.Apostolakis: Push safety to helper - after ComputeSafety
// 9 Nov 2007, J.Apostolakis: Flag for short steps, push safety to helper
// 19 Jan 2006, P.MoraDeFreitas: Fix for suspended tracks (StartTracking)
// 11 Aug 2004, M.Asai: Add G4VSensitiveDetector* for updating stepPoint.
// 21 June 2003, J.Apostolakis: Calling field manager with
// track, to enable it to configure its accuracy
// 13 May 2003, J.Apostolakis: Zero field areas now taken into
// account correclty in all cases (thanks to W Pokorski).
// 29 June 2001, J.Apostolakis, D.Cote-Ahern, P.Gumplinger:
// correction for spin tracking
// 20 Febr 2001, J.Apostolakis: update for new FieldTrack
// 22 Sept 2000, V.Grichine: update of Kinetic Energy
// Created: 19 March 1997, J. Apostolakis
// =======================================================================
@@ -57,6 +60,8 @@
#include "G4ProductionCutsTable.hh"
#include "G4ParticleTable.hh"
#include "G4ChordFinder.hh"
#include "G4SafetyHelper.hh"
#include "G4FieldManagerStore.hh"
class G4VSensitiveDetector;
//////////////////////////////////////////////////////////////////////////
@@ -87,7 +92,7 @@ G4Transportation::G4Transportation( G4int verboseLevel )
fFieldPropagator = transportMgr->GetPropagatorInField() ;
// fpSafetyHelper = fpTransportManager->GetSafetyHelper(); // New
fpSafetyHelper = transportMgr->GetSafetyHelper(); // New
// Cannot determine whether a field exists here,
// because it would only work if the field manager has informed
@@ -95,14 +100,6 @@ G4Transportation::G4Transportation( G4int verboseLevel )
// is constructed.
// Instead later the method DoesGlobalFieldExist() is called
// Small memory leak from this new
// fCurrentTouchableHandle = new G4TouchableHistory();
// Fixes:
// 1) static G4TouchableHistory sfNullTouchableHistory = new G4TouchableHistory();
// fCurrentTouchableHandle = new G4TouchableHandle( sfNullTouchableHistory );
// 2) set it to (G4TouchableHistory*) 0
// fCurrentTouchableHandle = new G4TouchableHandle( (G4TouchableHistory*) 0 );
// 3) Below:
static G4TouchableHandle nullTouchableHandle; // Points to (G4VTouchable*) 0
fCurrentTouchableHandle = nullTouchableHandle;
@@ -114,15 +111,6 @@ G4Transportation::G4Transportation( G4int verboseLevel )
G4Transportation::~G4Transportation()
{
// --- Alternative code to delete 'junk data' in touchable handle
// ** Corresponds to the case that the constructor has
// fCurrentTouchableHandle = new G4TouchableHistory();
// ** Likely incorrect - as at the end of the simulation
// the handle no longer holds the original 'null' history
// G4VTouchable* pTouchable= fCurrentTouchableHandle(); // Incorrect
// delete pTouchable; // Incorrect
if( (fVerboseLevel > 0) && (fSumEnergyKilled > 0.0 ) ){
G4cout << " G4Transportation: Statistics for looping particles " << G4endl;
G4cout << " Sum of energy of loopers killed: " << fSumEnergyKilled << G4endl;
@@ -239,7 +227,7 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
//
fPreviousSftOrigin = startPosition ;
fPreviousSafety = newSafety ;
// fSafetyHelper->SetCurrentSafety( newSafety, startPosition);
// fpSafetyHelper->SetCurrentSafety( newSafety, startPosition);
// The safety at the initial point has been re-calculated:
//
@@ -318,7 +306,7 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
//
fPreviousSftOrigin = startPosition ;
fPreviousSafety = currentSafety ;
// fSafetyHelper->SetCurrentSafety( newSafety, startPosition);
// fpSafetyHelper->SetCurrentSafety( newSafety, startPosition);
// Get the End-Position and End-Momentum (Dir-ection)
//
@@ -421,26 +409,32 @@ AlongStepGetPhysicalInteractionLength( const G4Track& track,
//
if( currentSafety < endpointDistance )
{
G4double endSafety =
fLinearNavigator->ComputeSafety( fTransportEndPosition) ;
currentSafety = endSafety ;
fPreviousSftOrigin = fTransportEndPosition ;
fPreviousSafety = currentSafety ;
// fSafetyHelper->SetCurrentSafety( currentSafety, fTransportEndPosition);
// if( particleCharge == 0.0 )
// G4cout << " Avoiding call to ComputeSafety : charge = 0.0 " << G4endl;
if( particleCharge != 0.0 ) {
// Because the Stepping Manager assumes it is from the start point,
// add the StepLength
//
currentSafety += endpointDistance ;
G4double endSafety =
fLinearNavigator->ComputeSafety( fTransportEndPosition) ;
currentSafety = endSafety ;
fPreviousSftOrigin = fTransportEndPosition ;
fPreviousSafety = currentSafety ;
fpSafetyHelper->SetCurrentSafety( currentSafety, fTransportEndPosition);
// Because the Stepping Manager assumes it is from the start point,
// add the StepLength
//
currentSafety += endpointDistance ;
#ifdef G4DEBUG_TRANSPORT
G4cout.precision(12) ;
G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl ;
G4cout << " Called Navigator->ComputeSafety at " << fTransportEndPosition
<< " and it returned safety= " << endSafety << G4endl ;
G4cout << " Adding endpoint distance " << endpointDistance
<< " to obtain pseudo-safety= " << currentSafety << G4endl ;
G4cout.precision(12) ;
G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl ;
G4cout << " Called Navigator->ComputeSafety at " << fTransportEndPosition
<< " and it returned safety= " << endSafety << G4endl ;
G4cout << " Adding endpoint distance " << endpointDistance
<< " to obtain pseudo-safety= " << currentSafety << G4endl ;
#endif
}
}
fParticleChange.ProposeTrueStepLength(geometryStepLength) ;
@@ -723,12 +717,17 @@ G4Transportation::StartTracking(G4Track* aTrack)
//
if( DoesGlobalFieldExist() ) {
fFieldPropagator->ClearPropagatorState();
// Resets safety values, in case of overlaps.
// Resets all state of field propagator class (ONLY)
// including safety values (in case of overlaps and to wipe for first track).
G4ChordFinder* chordF= fFieldPropagator->GetChordFinder();
if( chordF ) chordF->ResetStepEstimate();
// G4ChordFinder* chordF= fFieldPropagator->GetChordFinder();
// if( chordF ) chordF->ResetStepEstimate();
}
// Make sure to clear the chord finders of all fields (ie managers)
static G4FieldManagerStore* fieldMgrStore= G4FieldManagerStore::GetInstance();
fieldMgrStore->ClearAllChordFindersState();
// Update the current touchable handle (from the track's)
//
fCurrentTouchableHandle = aTrack->GetTouchableHandle();
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4UserSpecialCuts.cc,v 1.16 2006/11/14 09:11:18 gcosmo Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4UserSpecialCuts.cc,v 1.17 2007/06/01 07:53:27 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// --------------------------------------------------------------
// History
@@ -24,8 +24,8 @@
// ********************************************************************
//
//
// $Id: G4VTrackTerminator.cc,v 1.6 2007/05/11 14:13:20 gcosmo Exp $
// GEANT4 tag $Name: geant4-09-01 $
// $Id: G4VTrackTerminator.cc,v 1.7 2007/06/01 07:53:27 ahoward Exp $
// GEANT4 tag $Name: geant4-09-02 $
//
// ----------------------------------------------------------------------
// GEANT 4 class source file