Import Geant4 0.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 15:09:25 +02:00
parent b97f8d0df7
commit aaa409b6ee
2922 changed files with 55107 additions and 81674 deletions
+21 -9
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4EvtBiasMechanism.hh,v 2.2 1998/11/18 11:06:26 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4EvtBiasMechanism.hh,v 1.2 1999/04/13 09:43:20 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -17,6 +17,11 @@
//
// ------------------------------------------------------------
// This is a simple example for Event Biasing
// This mechanism is applied to only particleToBeBiased.
// If a track currently processed is the specifed particle type,
// ApplyMath methods multiply all secondaries in particle change
// by factor of MultiplicationForSecondaries with their weights of
// (parent weight)/(MultiplicationForSecondaries)
#ifndef G4EvtBiasMechanism_h
#define G4EvtBiasMechanism_h 1
@@ -34,28 +39,35 @@ class G4EvtBiasMechanism :public G4VEvtBiasMechanism
G4EvtBiasMechanism(const G4String& name = "EBSample", G4int mulFactor=10);
G4EvtBiasMechanism(const G4EvtBiasMechanism&);
~G4EvtBiasMechanism();
virtual ~G4EvtBiasMechanism();
virtual G4VParticleChange* ApplyMath( G4VParticleChange*, const G4Step& );
virtual G4bool IsApplicable(G4ParticleDefinition*) const;
// Set/Get particle type to be biased
void SetParticleBiased( G4ParticleDefinition* );
const G4ParticleDefinition* GetParticleBiased( ) const;
void SetParticleBiased( G4ParticleDefinition* );
G4ParticleDefinition* GetParticleBiased( ) const;
virtual G4bool IsApplicable(G4ParticleDefinition*) const;
private:
G4ParticleDefinition* particleToBeBiased;
const G4int MultiplicationForSecondaries;
};
inline G4bool G4EvtBiasMechanism::IsApplicable(G4ParticleDefinition* particle) const
inline
G4bool G4EvtBiasMechanism::IsApplicable(G4ParticleDefinition* particle) const
{
return (particle == particleToBeBiased);
}
inline void G4EvtBiasMechanism::SetParticleBiased(G4ParticleDefinition* particle)
inline
void G4EvtBiasMechanism::SetParticleBiased(G4ParticleDefinition* particle)
{
particleToBeBiased = particle;
}
inline G4ParticleDefinition* G4EvtBiasMechanism::GetParticleBiased() const
inline
const G4ParticleDefinition* G4EvtBiasMechanism::GetParticleBiased() const
{
return particleToBeBiased;
}
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ForceCondition.hh,v 2.1 1998/07/12 03:08:43 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ForceCondition.hh,v 1.1 1999/01/07 16:14:20 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4GPILSelection.hh,v 2.1 1998/07/12 03:08:43 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4GPILSelection.hh,v 1.1 1999/01/07 16:14:20 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
+6 -6
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4Mars5GeVMechanism.hh,v 2.3 1998/12/11 20:52:56 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4Mars5GeVMechanism.hh,v 1.2 1999/04/13 09:43:21 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -61,7 +61,7 @@ class G4Mars5GeVMechanism :public G4VEvtBiasMechanism
G4Mars5GeVMechanism(const G4String& name = "MARS5GeV");
G4Mars5GeVMechanism(const G4Mars5GeVMechanism&);
~G4Mars5GeVMechanism();
virtual ~G4Mars5GeVMechanism();
virtual G4VParticleChange* ApplyMath( G4VParticleChange*, const G4Step& );
virtual G4bool IsApplicable(G4ParticleDefinition*) const;
@@ -121,7 +121,7 @@ class G4Mars5GeVMechanism :public G4VEvtBiasMechanism
MarsMUplus, MarsMUminus, MarsGAM, MarsEminus, MarsEplus, MarsAP,
MarsPI0, MarsD, MarsT, MarsHe3, MarsHe4 };
G4int GetMarsEncoding(G4ParticleDefinition* )const;
G4int GetMarsEncoding(const G4ParticleDefinition* )const;
const G4String& GetParticleName(G4int marsEncoding) const;
G4ParticleDefinition* GetParticleDefinition(G4int marsEncoding) const;
@@ -161,7 +161,7 @@ class G4Mars5GeVMechanism :public G4VEvtBiasMechanism
#include "G4ParticleTable.hh"
inline
G4int G4Mars5GeVMechanism::GetMarsEncoding(G4ParticleDefinition* particle) const{
G4int G4Mars5GeVMechanism::GetMarsEncoding(const G4ParticleDefinition* particle) const{
const G4String& name = particle->GetParticleName();
G4int encoding = MarsUndefined;
if (name == "proton") {
@@ -270,7 +270,7 @@ inline
G4ParticleDefinition* G4Mars5GeVMechanism::GetParticleDefinition(G4int encoding) const
{
G4String name = GetParticleName(encoding);
G4ParticleDefinition* particle = NULL;
G4ParticleDefinition* particle = 0;
if (name != "None") {
particle = theParticleTable->FindParticle(name);
}
+12 -9
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChange.hh,v 2.6 1998/12/11 22:18:58 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChange.hh,v 1.3 1999/04/13 09:43:22 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -37,6 +37,7 @@
// modify AddSecondary methods for "GoodForTracking" flag
// 8 June 1998 H.Kurashige
// Add Track weight 12 Nov. 1998 H.Kurashige
// Add Get/SetMomentumDirectionChange 6 Feb. 1999 H.Kurashige
// -------------------------------------------------------------
#ifndef G4ParticleChange_h
#define G4ParticleChange_h 1
@@ -44,7 +45,7 @@
#include "globals.hh"
#include "G4ios.hh"
#include "G4ThreeVector.hh"
#include "G4ParticleMomentum.hh"
#include "G4ThreeVector.hh"
class G4DynamicParticle;
#include "G4VParticleChange.hh"
@@ -105,10 +106,13 @@ class G4ParticleChange: public G4VParticleChange
// "Change", what it stores (and returns in get) are the "FINAL"
// values of the Position, Momentum, etc.
const G4ParticleMomentum* GetMomentumChange() const;
const G4ThreeVector* GetMomentumDirectionChange() const;
void SetMomentumDirectionChange(G4double Px, G4double Py, G4double Pz);
void SetMomentumDirectionChange(const G4ThreeVector& Pfinal);
const G4ThreeVector* GetMomentumChange() const;
void SetMomentumChange(G4double Px, G4double Py, G4double Pz);
void SetMomentumChange(const G4ThreeVector& Pfinal);
// Get/Set theMomentumChange vector: it is the final momentum direction.
// Get/Set theMomentumDirectionChange vector: it is the final momentum direction.
const G4ThreeVector* GetPolarizationChange() const;
void SetPolarizationChange(G4double Px, G4double Py, G4double Pz);
@@ -145,7 +149,7 @@ class G4ParticleChange: public G4VParticleChange
// Convert the time delay to the global time.
G4ThreeVector CalcMomentum(G4double energy,
G4ParticleMomentum direction,
G4ThreeVector direction,
G4double mass ) const;
// Calculate momentum by using Energy, Momentum Direction, and Mass
// ----------------------------------------------------
@@ -178,7 +182,7 @@ class G4ParticleChange: public G4VParticleChange
virtual void DumpInfo() const;
protected:
G4ParticleMomentum theMomentumChange;
G4ThreeVector theMomentumDirectionChange;
// It is the vector containing the final momentum direction
// after the invoked process. The application of the change
// of the momentum direction of the particle is not Done here.
@@ -213,8 +217,7 @@ class G4ParticleChange: public G4VParticleChange
public:
// for Debug
G4bool debugFlag;
G4bool CheckIt(const G4Track&);
virtual G4bool CheckIt(const G4Track&);
};
#include "G4ParticleChange.icc"
+32 -9
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChange.icc,v 2.2 1998/12/11 20:52:59 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChange.icc,v 1.3 1999/02/18 04:11:59 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
inline
@@ -30,9 +30,9 @@ inline
}
inline
const G4ParticleMomentum* G4ParticleChange::GetMomentumChange() const
const G4ThreeVector* G4ParticleChange::GetMomentumChange() const
{
return &theMomentumChange;
return &theMomentumDirectionChange;
}
inline
@@ -41,15 +41,38 @@ inline
G4double Py,
G4double Pz )
{
theMomentumChange.setX(Px);
theMomentumChange.setY(Py);
theMomentumChange.setZ(Pz);
theMomentumDirectionChange.setX(Px);
theMomentumDirectionChange.setY(Py);
theMomentumDirectionChange.setZ(Pz);
}
inline
void G4ParticleChange::SetMomentumChange(const G4ThreeVector& P)
{
theMomentumChange = P;
theMomentumDirectionChange = P;
}
inline
const G4ThreeVector* G4ParticleChange::GetMomentumDirectionChange() const
{
return &theMomentumDirectionChange;
}
inline
void G4ParticleChange::SetMomentumDirectionChange(
G4double Px,
G4double Py,
G4double Pz )
{
theMomentumDirectionChange.setX(Px);
theMomentumDirectionChange.setY(Py);
theMomentumDirectionChange.setZ(Pz);
}
inline
void G4ParticleChange::SetMomentumDirectionChange(const G4ThreeVector& P)
{
theMomentumDirectionChange = P;
}
inline
@@ -148,7 +171,7 @@ inline
inline
G4ThreeVector G4ParticleChange::CalcMomentum(G4double energy,
G4ParticleMomentum direction,
G4ThreeVector direction,
G4double mass
) const
{
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForDecay.hh,v 2.2 1998/07/13 17:28:32 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChangeForDecay.hh,v 1.3 1999/04/13 09:43:23 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -30,7 +30,6 @@
#include "globals.hh"
#include "G4ios.hh"
#include "G4ThreeVector.hh"
#include "G4ParticleMomentum.hh"
class G4DynamicParticle;
#include "G4VParticleChange.hh"
@@ -60,7 +59,7 @@ class G4ParticleChangeForDecay: public G4VParticleChange
// by using final state information of the track given by a physics
// process
// !!! No effect for AlongStep
// !!! No effect for AlongSteyp
// virtual G4Step* UpdateStepForAlongStep(G4Step* Step);
virtual G4Step* UpdateStepForAtRest(G4Step* Step);
@@ -79,7 +78,10 @@ class G4ParticleChangeForDecay: public G4VParticleChange
protected:
G4double theTimeChange;
// The change of global time of a given particle.
public:
// for Debug
virtual G4bool CheckIt(const G4Track&);
};
inline
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForLoss.hh,v 2.1 1998/12/02 17:19:26 urban Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChangeForLoss.hh,v 1.2 1999/04/13 09:43:24 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -70,8 +70,7 @@ class G4ParticleChangeForLoss: public G4VParticleChange
public:
// for Debug
G4bool debugFlag;
G4bool CheckIt(const G4Track&);
virtual G4bool CheckIt(const G4Track&);
};
inline
+16 -6
View File
@@ -5,7 +5,7 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForMSC.hh,v 2.1 1998/12/02 17:19:24 urban Exp $
// $Id: G4ParticleChangeForMSC.hh,v 1.3 1999/04/13 09:43:25 kurasige Exp $
// GEANT4 tag $ $
//
//
@@ -17,6 +17,7 @@
//
// ------------------------------------------------------------
// Implemented for the new scheme 23 Mar. 1998 H.Kurahige
// Add Get/SetMomentumDirectionChange 6 Feb. 1999 H.Kurashige
//
// -------------------------------------------------------------
#ifndef G4ParticleChangeForMSC_h
@@ -25,7 +26,7 @@
#include "globals.hh"
#include "G4ios.hh"
#include "G4ThreeVector.hh"
#include "G4ParticleMomentum.hh"
#include "G4ThreeVector.hh"
class G4DynamicParticle;
#include "G4VParticleChange.hh"
@@ -66,10 +67,13 @@ class G4ParticleChangeForMSC: public G4VParticleChange
// "Change", what it stores (and returns in get) are the "FINAL"
// values of the Position, Momentum, etc.
const G4ParticleMomentum* GetMomentumChange() const;
const G4ThreeVector* GetMomentumChange() const;
void SetMomentumChange(G4double Px, G4double Py, G4double Pz);
void SetMomentumChange(const G4ThreeVector& Pfinal);
// Get/Set theMomentumChange vector: it is the final momentum direction.
const G4ThreeVector* GetMomentumDirectionChange() const;
void SetMomentumDirectionChange(G4double Px, G4double Py, G4double Pz);
void SetMomentumDirectionChange(const G4ThreeVector& Pfinal);
// Get/Set theMomentumDirectionChange vector: it is the final momentum direction.
const G4ThreeVector* GetPositionChange() const;
void SetPositionChange(G4double x, G4double y, G4double z);
@@ -80,7 +84,7 @@ class G4ParticleChangeForMSC: public G4VParticleChange
virtual void DumpInfo() const;
protected:
G4ParticleMomentum theMomentumChange;
G4ThreeVector theMomentumDirectionChange;
// It is the vector containing the final momentum direction
// after the invoked process. The application of the change
// of the momentum direction of the particle is not Done here.
@@ -89,7 +93,11 @@ class G4ParticleChangeForMSC: public G4VParticleChange
G4ThreeVector thePositionChange;
// The changed (final) position of a given particle.
public:
// for Debug
virtual G4bool CheckIt(const G4Track&);
};
#include "G4ParticleChangeForMSC.icc"
@@ -97,3 +105,5 @@ class G4ParticleChangeForMSC: public G4VParticleChange
#endif
@@ -5,15 +5,15 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForMSC.icc,v 2.1 1998/12/02 17:19:25 urban Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChangeForMSC.icc,v 1.2 1999/02/06 10:44:36 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
inline
const G4ParticleMomentum* G4ParticleChangeForMSC::GetMomentumChange() const
const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumChange() const
{
return &theMomentumChange;
return &theMomentumDirectionChange;
}
inline
@@ -22,15 +22,37 @@ inline
G4double Py,
G4double Pz )
{
theMomentumChange.setX(Px);
theMomentumChange.setY(Py);
theMomentumChange.setZ(Pz);
theMomentumDirectionChange.setX(Px);
theMomentumDirectionChange.setY(Py);
theMomentumDirectionChange.setZ(Pz);
}
inline
void G4ParticleChangeForMSC::SetMomentumChange(const G4ThreeVector& P)
{
theMomentumChange = P;
theMomentumDirectionChange = P;
}
inline
const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumDirectionChange() const
{
return &theMomentumDirectionChange;
}
inline
void G4ParticleChangeForMSC::SetMomentumDirectionChange(
G4double Px,
G4double Py,
G4double Pz )
{
theMomentumDirectionChange.setX(Px);
theMomentumDirectionChange.setY(Py);
theMomentumDirectionChange.setZ(Pz);
}
inline
void G4ParticleChangeForMSC::SetMomentumDirectionChange(const G4ThreeVector& P)
{
theMomentumDirectionChange = P;
}
inline
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForTransport.hh,v 2.3 1998/07/13 17:28:33 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChangeForTransport.hh,v 1.1 1999/01/07 16:14:22 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForTransport.icc,v 2.1 1998/07/10 11:11:51 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4ParticleChangeForTransport.icc,v 1.1 1999/01/07 16:14:22 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
+5 -4
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4Step.hh,v 2.4 1998/11/18 11:06:30 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4Step.hh,v 1.3 1999/04/13 09:43:26 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
@@ -96,7 +96,8 @@ class G4Step
void CopyPostToPreStepPoint( );
void ShowStep() const ;
//TS moved to SteppingVerbose
// void ShowStep() const ;
// Print all information of the Step to stdout
G4Polyline* CreatePolyline () const;
@@ -227,7 +228,7 @@ class G4Step
fpPreStepPoint->SetPolarization(fpTrack->GetPolarization());
fpPreStepPoint->SetSafety(0.);
fpPreStepPoint->SetStepStatus(fUndefined);
fpPreStepPoint->SetProcessDefinedStep(NULL);
fpPreStepPoint->SetProcessDefinedStep(0);
fpPreStepPoint->SetMass(fpTrack->GetDynamicParticle()->GetMass());
fpPreStepPoint->SetWeight(fpTrack->GetWeight());
+3 -3
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4StepPoint.hh,v 2.4 1998/11/18 11:06:32 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4StepPoint.hh,v 1.2 1999/04/13 09:43:27 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
@@ -160,7 +160,7 @@ class G4StepPoint
inline const G4VProcess* GetProcessDefinedStep() const
{ return fpProcessDefinedStep; }
// If the pointer is NULL, this means the Step is defined
// If the pointer is 0, this means the Step is defined
// by the user defined limit in the current volume.
inline void SetProcessDefinedStep(G4VProcess* aValue)
{ fpProcessDefinedStep = aValue; }
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4StepStatus.hh,v 2.1 1998/07/12 03:08:48 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4StepStatus.hh,v 1.1 1999/01/07 16:14:23 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4SteppingControl.hh,v 2.1 1998/07/12 03:08:49 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4SteppingControl.hh,v 1.1 1999/01/07 16:14:23 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
+14 -8
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4Track.hh,v 2.4 1998/11/18 11:06:34 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4Track.hh,v 1.2 1999/04/13 09:43:28 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
@@ -138,7 +138,7 @@ class G4Track
G4ThreeVector GetMomentum() const;
const G4DynamicParticle* GetDynamicParticle() const;
G4DynamicParticle* GetDynamicParticle() const;
G4ParticleDefinition* GetDefinition() const;
@@ -319,9 +319,9 @@ class G4Track
{
G4Material*
mat=fpTouchable->GetVolume()->GetLogicalVolume()->GetMaterial();
if(mat->GetMaterialPropertiesTable() != NULL)
if(mat->GetMaterialPropertiesTable() != 0)
{
if(mat->GetMaterialPropertiesTable()->GetProperty("RINDEX") != NULL )
if(mat->GetMaterialPropertiesTable()->GetProperty("RINDEX") != 0 )
velocity /=
mat->GetMaterialPropertiesTable()->GetProperty("RINDEX")->
GetMinProperty() ;
@@ -367,7 +367,7 @@ class G4Track
inline G4ThreeVector G4Track::GetMomentum() const
{ return fpDynamicParticle->GetMomentum(); }
inline const G4DynamicParticle* G4Track::GetDynamicParticle() const
inline G4DynamicParticle* G4Track::GetDynamicParticle() const
{ return fpDynamicParticle; }
inline G4ParticleDefinition* G4Track::GetDefinition() const
@@ -400,9 +400,9 @@ class G4Track
inline const G4VProcess* G4Track::GetCreatorProcess() const
{ return fpCreatorProcess; }
// If the pointer is NULL, this means the track is created
// If the pointer is 0, this means the track is created
// by the event generator, i.e. the primary track.If it is not
// NULL, it points to the process which created this track.
// 0, it points to the process which created this track.
inline void G4Track::SetCreatorProcess(G4VProcess* aValue)
{ fpCreatorProcess = aValue; }
@@ -447,3 +447,9 @@ class G4Track
+3 -8
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4TrackFastVector.hh,v 2.1 1998/07/13 17:28:35 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4TrackFastVector.hh,v 1.2 1999/02/09 14:19:17 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -21,16 +21,11 @@
#ifndef G4TrackFastVector_h
#define G4TrackFastVector_h 1
#include "globals.hh"
#include "G4ios.hh"
class G4Track;
#include "G4FastVector.hh"
const G4int G4TrackFastVectorSize = 512;
class G4TrackFastVector:
public G4FastVector<G4Track,G4TrackFastVectorSize>
{};
typedef G4FastVector<G4Track,G4TrackFastVectorSize> G4TrackFastVector;
// Contains pointers to G4Track objects which are
// generated by either primary or secondary interaction.
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4TrackStatus.hh,v 2.0 1998/07/02 17:28:38 gunter Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4TrackStatus.hh,v 1.1 1999/01/07 16:14:24 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//---------------------------------------------------------------
+21 -9
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VEvtBiasMechanism.hh,v 2.3 1998/11/18 11:06:35 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4VEvtBiasMechanism.hh,v 1.2 1999/04/13 09:43:29 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -32,17 +32,29 @@ class G4ParticleDefinition;
class G4VEvtBiasMechanism
{
public:
G4VEvtBiasMechanism(const G4String& name = ""){ theEBName = name;}
G4VEvtBiasMechanism(const G4VEvtBiasMechanism& right){ theEBName = right.theEBName;}
G4VEvtBiasMechanism(const G4String& name = "");
G4VEvtBiasMechanism(const G4VEvtBiasMechanism& right);
virtual ~G4VEvtBiasMechanism(){};
virtual ~G4VEvtBiasMechanism();
virtual G4VParticleChange* ApplyMath( G4VParticleChange*, const G4Step& ) =0;
virtual G4bool IsApplicable(G4ParticleDefinition*) const = 0;
// pure virtual functions
G4String GetName(){ return theEBName;}
G4int GetVerboseLevel() { return verboseLevel; }
// ApplyMath method will be invoked in G4VParticleChange::UpdateStepInfo()
// if G4VParticleChange::fUseEB is set
virtual G4VParticleChange* ApplyMath( G4VParticleChange*, const G4Step& ) =0;
// IsApplicable method returns 'true' if this Event Bias Mechanism is
// valid for the particle type
virtual G4bool IsApplicable(G4ParticleDefinition*) const = 0;
//
const G4String& GetName(){ return theEBName;}
// Set/Get Verbose level
G4int GetVerboseLevel() const { return verboseLevel; }
void SetVerboseLevel(G4int value) { verboseLevel = value; }
private:
G4String theEBName;
+26 -10
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VParticleChange.hh,v 2.5 1998/12/11 20:53:00 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4VParticleChange.hh,v 1.3 1999/05/06 11:42:52 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -48,8 +48,8 @@
//
// ------------------------------------------------------------
// Implement Event Biasing Scheme 9 Nov.,98 H.Kurashige
// add CheckIt 13 Apr.,99 H.Kurashige
// add accuracy leveles 5 May, 99 H.Kurashige
#ifndef G4VParticleChange_h
#define G4VParticleChange_h 1
@@ -79,6 +79,11 @@ class G4VParticleChange
G4bool operator==(const G4VParticleChange &right) const;
G4bool operator!=(const G4VParticleChange &right) const;
// "equal" means that teo objects have the same pointer.
protected:
// hide copy constructor and assignment operaor as protected
G4VParticleChange(const G4VParticleChange &right);
G4VParticleChange & operator=(const G4VParticleChange &right);
public:
// --- the following methods are for updating G4Step -----
@@ -197,11 +202,22 @@ class G4VParticleChange
G4int verboseLevel;
// The Verbose level
protected:
// hide copy constructor and assignment operaor as protected
G4VParticleChange(const G4VParticleChange &right);
G4VParticleChange & operator=(const G4VParticleChange &right);
public:
// CheckIt method is provided for debug
virtual G4bool CheckIt(const G4Track&);
// CheckIt method is activated
// if debug flag is set and 'G4VERBOSE' is defined
void ClearDebugFlag();
void SetDebugFlag();
G4bool GetDebugFlag() const;
protected:
G4bool debugFlag;
// accuracy levels
static const G4double accuracyForWarning;
static const G4double accuracyForException;
//---- following methods and members are used for Event Biasing
public:
@@ -209,7 +225,7 @@ class G4VParticleChange
virtual void SwOnEB();
virtual void SwOffEB();
virtual G4bool IsEBActive() const;
virtual G4VEvtBiasMechanism* GetEBMechanism() const;
virtual G4VEvtBiasMechanism* GetEBMechanism();
protected:
G4VEvtBiasMechanism* theEBMechanism;
+22 -4
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VParticleChange.icc,v 2.6 1998/12/11 20:53:01 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: G4VParticleChange.icc,v 1.2 1999/04/13 09:43:31 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//----------------------------------------------------------------
// Virtual methods for updating G4Step
@@ -264,7 +264,7 @@ inline
inline
void G4VParticleChange::SwOnEB()
{
if (theEBMechanism!=NULL) fUseEB = true;
if (theEBMechanism!=0) fUseEB = true;
}
inline
@@ -280,7 +280,25 @@ inline
}
inline
G4VEvtBiasMechanism* G4VParticleChange::GetEBMechanism() const
G4VEvtBiasMechanism* G4VParticleChange::GetEBMechanism()
{
return theEBMechanism;
}
inline
void G4VParticleChange::ClearDebugFlag()
{
debugFlag = false;
}
inline
void G4VParticleChange::SetDebugFlag()
{
debugFlag = true;
}
inline
G4bool G4VParticleChange::GetDebugFlag() const
{
return debugFlag;
}