Import Geant4 9.4.0 source tree
This commit is contained in:
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4ParticleChangeForDecay.hh,v 1.9 2006/06/29 21:14:19 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4ParticleChangeForDecay.hh,v 1.10 2010/07/21 09:30:15 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
|
||||
//
|
||||
//
|
||||
@@ -157,19 +157,3 @@ inline
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4ParticleChangeForTransport.hh,v 1.16 2006/06/29 21:14:31 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4ParticleChangeForTransport.hh,v 1.17 2010/07/21 09:30:15 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
@@ -125,7 +125,7 @@ class G4ParticleChangeForTransport: public G4ParticleChange
|
||||
|
||||
private:
|
||||
G4bool isMomentumChanged;
|
||||
// The flag which is set if mometum is changed in this stepi
|
||||
// The flag which is set if momentum is changed in current step
|
||||
G4Material* theMaterialChange;
|
||||
const G4MaterialCutsCouple* theMaterialCutsCoupleChange;
|
||||
G4VSensitiveDetector* theSensitiveDetectorChange;
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Step.hh,v 1.19 2008/01/12 12:00:25 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4Step.hh,v 1.23 2010/11/10 08:42:47 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------
|
||||
@@ -120,14 +120,7 @@ class G4Step
|
||||
G4SteppingControl GetControlFlag() const;
|
||||
void SetControlFlag(G4SteppingControl StepControlFlag);
|
||||
|
||||
// difference of position, time, momentum and energy
|
||||
G4ThreeVector GetDeltaPosition() const;
|
||||
G4double GetDeltaTime() const;
|
||||
|
||||
G4ThreeVector GetDeltaMomentum() const;
|
||||
G4double GetDeltaEnergy() const;
|
||||
|
||||
// manipulation of total energy deposit
|
||||
// manipulation of total energy deposit
|
||||
void AddTotalEnergyDeposit(G4double value);
|
||||
void ResetTotalEnergyDeposit();
|
||||
|
||||
@@ -137,6 +130,8 @@ class G4Step
|
||||
|
||||
|
||||
// Get/Set/Clear flag for initial/last step
|
||||
// NOTE: following flags are not used
|
||||
// will be ready in later release
|
||||
G4bool IsFirstStepInVolume() const;
|
||||
G4bool IsLastStepInVolume() const;
|
||||
|
||||
@@ -145,6 +140,18 @@ class G4Step
|
||||
void SetLastStepFlag();
|
||||
void ClearLastStepFlag();
|
||||
|
||||
// difference of position, time, momentum and energy
|
||||
G4ThreeVector GetDeltaPosition() const;
|
||||
G4double GetDeltaTime() const;
|
||||
|
||||
// These methods will be deleted
|
||||
// NOTE: use GetTotalEnergyDeposit() to obtain
|
||||
// energy loss in the material
|
||||
//
|
||||
G4ThreeVector GetDeltaMomentum() const;
|
||||
G4double GetDeltaEnergy() const;
|
||||
|
||||
|
||||
// Other member functions
|
||||
void InitializeStep( G4Track* aValue );
|
||||
// initiaize contents of G4Step
|
||||
@@ -190,12 +197,24 @@ class G4Step
|
||||
|
||||
// Secondary buckets
|
||||
public:
|
||||
G4TrackVector* GetSecondary() const;
|
||||
// NOTE: Secondary bucket of the Step contains
|
||||
// all secondaries during tracking the current track
|
||||
// (i.e. NOT secondaries produced in the current step)
|
||||
// all following methods give same object (i.e. G4TrackVector )
|
||||
// but 2nd one will create bucket in addition
|
||||
const G4TrackVector* GetSecondary() const ;
|
||||
G4TrackVector* GetfSecondary();
|
||||
G4TrackVector* NewSecondaryVector();
|
||||
|
||||
// just delete secondary bucket
|
||||
// NOTE: G4Track objects inside the bucket are not deleted
|
||||
void DeleteSecondaryVector();
|
||||
|
||||
// Add secondary tracks to the bucket
|
||||
void SetSecondary( G4TrackVector* value);
|
||||
private:
|
||||
|
||||
private:
|
||||
// Secondaty bucket implemented by using std::vector of G4Track*
|
||||
G4TrackVector* fSecondary;
|
||||
|
||||
// Prototyping implementation of smooth representation of curved
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Step.icc,v 1.19 2008/02/05 01:46:57 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4Step.icc,v 1.23 2010/11/10 08:42:47 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------
|
||||
@@ -85,19 +85,6 @@ inline
|
||||
- fpPreStepPoint->GetLocalTime();
|
||||
}
|
||||
|
||||
inline
|
||||
G4ThreeVector G4Step::GetDeltaMomentum() const
|
||||
{
|
||||
return fpPostStepPoint->GetMomentum()
|
||||
- fpPreStepPoint->GetMomentum();
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4Step::GetDeltaEnergy() const
|
||||
{
|
||||
return fpPostStepPoint->GetKineticEnergy()
|
||||
- fpPreStepPoint->GetKineticEnergy();
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4Step::GetTotalEnergyDeposit() const
|
||||
@@ -162,10 +149,11 @@ inline
|
||||
|
||||
inline
|
||||
void G4Step::CopyPostToPreStepPoint( )
|
||||
{
|
||||
{
|
||||
//This method is called at the beggining of each step
|
||||
*(fpPreStepPoint) = *(fpPostStepPoint);
|
||||
fpPostStepPoint->SetStepStatus(fUndefined);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------------------
|
||||
@@ -221,7 +209,6 @@ inline
|
||||
fpPreStepPoint->SetCharge(fpTrack->GetDynamicParticle()->GetCharge());
|
||||
fpPreStepPoint->SetWeight(fpTrack->GetWeight());
|
||||
|
||||
|
||||
(*fpPostStepPoint) = (*fpPreStepPoint);
|
||||
}
|
||||
|
||||
@@ -250,23 +237,33 @@ inline
|
||||
fpTrack->SetNextTouchableHandle(fpPostStepPoint->GetTouchableHandle());
|
||||
fpTrack->SetWeight(fpPostStepPoint->GetWeight());
|
||||
|
||||
|
||||
// set velocity
|
||||
fpPostStepPoint->SetVelocity(fpTrack->GetVelocity());
|
||||
}
|
||||
|
||||
inline G4TrackVector* G4Step::GetfSecondary() {
|
||||
inline const G4TrackVector* G4Step::GetSecondary() const
|
||||
{
|
||||
return fSecondary;
|
||||
}
|
||||
inline G4TrackVector* G4Step::GetSecondary() const {
|
||||
}
|
||||
|
||||
inline G4TrackVector* G4Step::GetfSecondary()
|
||||
{
|
||||
return fSecondary;
|
||||
}
|
||||
inline void G4Step::SetSecondary(G4TrackVector* value) {
|
||||
}
|
||||
|
||||
inline void G4Step::SetSecondary(G4TrackVector* value)
|
||||
{
|
||||
fSecondary=value;
|
||||
}
|
||||
inline G4TrackVector* G4Step::NewSecondaryVector() {
|
||||
}
|
||||
|
||||
inline
|
||||
G4TrackVector* G4Step::NewSecondaryVector()
|
||||
{
|
||||
fSecondary=new G4TrackVector();
|
||||
return fSecondary;
|
||||
}
|
||||
}
|
||||
|
||||
inline void G4Step::DeleteSecondaryVector() {
|
||||
delete fSecondary;
|
||||
}
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Track.hh,v 1.19 2008/10/24 08:22:20 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4Track.hh,v 1.23 2010/11/08 21:25:38 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------
|
||||
@@ -58,6 +58,8 @@
|
||||
#include "G4TouchableHandle.hh" // Include from 'geometry'
|
||||
#include "G4VUserTrackInformation.hh"
|
||||
|
||||
#include "G4PhysicsLogVector.hh"
|
||||
|
||||
#include "G4Material.hh"
|
||||
|
||||
class G4Step; // Forward declaration
|
||||
@@ -115,6 +117,9 @@ public: // With description
|
||||
const G4DynamicParticle* GetDynamicParticle() const;
|
||||
|
||||
// particle definition
|
||||
const G4ParticleDefinition* GetParticleDefinition() const;
|
||||
// following method of GetDefinition remains
|
||||
// because of backward compatiblity. It will be removed in future
|
||||
G4ParticleDefinition* GetDefinition() const;
|
||||
|
||||
// position, time
|
||||
@@ -151,6 +156,10 @@ public: // With description
|
||||
const G4TouchableHandle& GetNextTouchableHandle() const;
|
||||
void SetNextTouchableHandle( const G4TouchableHandle& apValue);
|
||||
|
||||
const G4VTouchable* GetOriginTouchable() const;
|
||||
const G4TouchableHandle& GetOriginTouchableHandle() const;
|
||||
void SetOriginTouchableHandle( const G4TouchableHandle& apValue);
|
||||
|
||||
// energy
|
||||
G4double GetKineticEnergy() const;
|
||||
void SetKineticEnergy(const G4double aValue);
|
||||
@@ -234,6 +243,8 @@ public: // With description
|
||||
//---------
|
||||
private:
|
||||
//---------
|
||||
// prepare velocity table
|
||||
void PrepareVelocityTable();
|
||||
|
||||
// Member data
|
||||
G4int fCurrentStepNumber; // Total steps number up to now
|
||||
@@ -246,6 +257,7 @@ public: // With description
|
||||
|
||||
G4TouchableHandle fpTouchable;
|
||||
G4TouchableHandle fpNextTouchable;
|
||||
G4TouchableHandle fpOriginTouchable;
|
||||
// Touchable Handle
|
||||
|
||||
G4DynamicParticle* fpDynamicParticle;
|
||||
@@ -276,8 +288,18 @@ public: // With description
|
||||
const G4VProcess* fpCreatorProcess; // Process which created the track
|
||||
|
||||
G4VUserTrackInformation* fpUserInformation;
|
||||
|
||||
mutable G4Material* prev_mat;
|
||||
mutable G4MaterialPropertyVector* groupvel;
|
||||
mutable G4double prev_velocity;
|
||||
mutable G4double prev_momentum;
|
||||
|
||||
static G4PhysicsLogVector* velTable;
|
||||
static const G4double maxT;
|
||||
static const G4double minT;
|
||||
G4bool is_OpticalPhoton;
|
||||
};
|
||||
#include "G4Step.hh"
|
||||
|
||||
#include "G4Track.icc"
|
||||
|
||||
#endif
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Track.icc,v 1.16 2008/10/24 08:22:20 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4Track.icc,v 1.21 2010/11/08 21:25:38 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//-----------------------------------------------------------------
|
||||
// Definitions of inline functions
|
||||
@@ -38,6 +38,13 @@
|
||||
extern G4DLLIMPORT G4Allocator<G4Track> aTrackAllocator;
|
||||
#endif
|
||||
|
||||
//-------------------------------------------------------------
|
||||
// To implement bi-directional association between G4Step and
|
||||
// and G4Track, a combined usage of 'forward declaration' and
|
||||
// 'include' is necessary.
|
||||
//-------------------------------------------------------------
|
||||
#include "G4Step.hh"
|
||||
|
||||
// Operators
|
||||
|
||||
inline void* G4Track::operator new(size_t)
|
||||
@@ -65,6 +72,10 @@
|
||||
inline G4ParticleDefinition* G4Track::GetDefinition() const
|
||||
{ return fpDynamicParticle->GetDefinition(); }
|
||||
|
||||
// particle definition
|
||||
inline const G4ParticleDefinition* G4Track::GetParticleDefinition() const
|
||||
{ return fpDynamicParticle->GetParticleDefinition(); }
|
||||
|
||||
// parent track ID
|
||||
inline G4int G4Track::GetParentID() const
|
||||
{ return fParentID; }
|
||||
@@ -167,6 +178,20 @@
|
||||
fpNextTouchable = apValue;
|
||||
}
|
||||
|
||||
inline const G4VTouchable* G4Track::GetOriginTouchable() const
|
||||
{
|
||||
return fpOriginTouchable();
|
||||
}
|
||||
|
||||
inline const G4TouchableHandle& G4Track::GetOriginTouchableHandle() const
|
||||
{
|
||||
return fpOriginTouchable;
|
||||
}
|
||||
|
||||
inline void G4Track::SetOriginTouchableHandle( const G4TouchableHandle& apValue)
|
||||
{
|
||||
fpOriginTouchable = apValue;
|
||||
}
|
||||
|
||||
// kinetic energy
|
||||
inline G4double G4Track::GetKineticEnergy() const
|
||||
@@ -288,22 +313,8 @@
|
||||
inline void G4Track::SetUserInformation(G4VUserTrackInformation* aValue)
|
||||
{ fpUserInformation = aValue; }
|
||||
|
||||
|
||||
|
||||
//-------------------------------------------------------------
|
||||
// To implement bi-directional association between G4Step and
|
||||
// and G4Track, a combined usage of 'forward declaration' and
|
||||
// 'include' is necessary.
|
||||
//-------------------------------------------------------------
|
||||
#include "G4Step.hh"
|
||||
|
||||
inline const G4Step* G4Track::GetStep() const
|
||||
{ return fpStep; }
|
||||
|
||||
inline void G4Track::SetStep(const G4Step* aValue)
|
||||
{ fpStep = (aValue); }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{ fpStep = aValue; }
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4TrackVector.hh,v 1.2 2006/07/17 13:48:28 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
// $Id: G4TrackVector.hh,v 1.4 2010/11/10 08:42:47 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04 $
|
||||
//
|
||||
//---------------------------------------------------------------
|
||||
//
|
||||
@@ -46,12 +46,12 @@
|
||||
#define G4TrackVector_h 1
|
||||
|
||||
#include <vector>
|
||||
//#include "G4Track.hh" // Include form 'tracking'
|
||||
class G4Track;
|
||||
class G4Step;
|
||||
|
||||
|
||||
///////////////////////////////////////////////////
|
||||
typedef std::vector<G4Track*> G4TrackVector;
|
||||
///////////////////////////////////////////////////
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VUserTrackInformation.hh,v 1.8 2009/10/19 17:11:43 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-03 $
|
||||
// $Id: G4VUserTrackInformation.hh,v 1.9 2010/03/09 02:49:44 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-09-04-beta-01 $
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------
|
||||
@@ -68,20 +68,14 @@ class G4VUserTrackInformation
|
||||
|
||||
virtual ~G4VUserTrackInformation();
|
||||
|
||||
virtual void Print() const = 0;
|
||||
virtual void Print() const {};
|
||||
|
||||
const G4String& GetType() const;
|
||||
// get Type of this UserTrackInfo
|
||||
|
||||
protected:
|
||||
G4String fType;
|
||||
G4String* pType;
|
||||
};
|
||||
|
||||
inline
|
||||
const G4String& G4VUserTrackInformation::GetType() const
|
||||
{
|
||||
return fType;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user