Import Geant4 9.2.0 source tree
This commit is contained in:
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Cerenkov.hh,v 1.9 2007/09/30 22:17:04 gum Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// $Id: G4Cerenkov.hh,v 1.10 2008/10/22 01:17:36 gum Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
@@ -59,7 +59,7 @@
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4ParticleMomentum.hh"
|
||||
#include "G4Step.hh"
|
||||
#include "G4VDiscreteProcess.hh"
|
||||
#include "G4VProcess.hh"
|
||||
#include "G4OpticalPhoton.hh"
|
||||
#include "G4DynamicParticle.hh"
|
||||
#include "G4Material.hh"
|
||||
@@ -76,7 +76,7 @@
|
||||
// Class Definition
|
||||
/////////////////////
|
||||
|
||||
class G4Cerenkov : public G4VDiscreteProcess
|
||||
class G4Cerenkov : public G4VProcess
|
||||
{
|
||||
|
||||
private:
|
||||
@@ -115,15 +115,50 @@ public: // With description
|
||||
// Returns the discrete step limit and sets the 'StronglyForced'
|
||||
// condition for the DoIt to be invoked at every step.
|
||||
|
||||
G4double PostStepGetPhysicalInteractionLength(const G4Track& aTrack,
|
||||
G4double ,
|
||||
G4ForceCondition* );
|
||||
// Returns the discrete step limit and sets the 'StronglyForced'
|
||||
// condition for the DoIt to be invoked at every step.
|
||||
|
||||
G4VParticleChange* PostStepDoIt(const G4Track& aTrack,
|
||||
const G4Step& aStep);
|
||||
// This is the method implementing the Cerenkov process.
|
||||
|
||||
// no operation in AtRestDoIt and AlongStepDoIt
|
||||
virtual G4double AlongStepGetPhysicalInteractionLength(
|
||||
const G4Track&,
|
||||
G4double ,
|
||||
G4double ,
|
||||
G4double& ,
|
||||
G4GPILSelection*
|
||||
) { return -1.0; };
|
||||
|
||||
virtual G4double AtRestGetPhysicalInteractionLength(
|
||||
const G4Track& ,
|
||||
G4ForceCondition*
|
||||
) { return -1.0; };
|
||||
|
||||
// no operation in AtRestDoIt and AlongStepDoIt
|
||||
virtual G4VParticleChange* AtRestDoIt(
|
||||
const G4Track& ,
|
||||
const G4Step&
|
||||
) {return 0;};
|
||||
|
||||
virtual G4VParticleChange* AlongStepDoIt(
|
||||
const G4Track& ,
|
||||
const G4Step&
|
||||
) {return 0;};
|
||||
|
||||
void SetTrackSecondariesFirst(const G4bool state);
|
||||
// If set, the primary particle tracking is interrupted and any
|
||||
// produced Cerenkov photons are tracked next. When all have
|
||||
// been tracked, the tracking of the primary resumes.
|
||||
|
||||
void SetMaxBetaChangePerStep(const G4double d);
|
||||
// Set the maximum allowed change in beta = v/c in % (perCent)
|
||||
// per step.
|
||||
|
||||
void SetMaxNumPhotonsPerStep(const G4int NumPhotons);
|
||||
// Set the maximum number of Cerenkov photons allowed to be
|
||||
// generated during a tracking step. This is an average ONLY;
|
||||
@@ -165,7 +200,8 @@ protected:
|
||||
private:
|
||||
|
||||
G4bool fTrackSecondariesFirst;
|
||||
G4int fMaxPhotons;
|
||||
G4double fMaxBetaChange;
|
||||
G4int fMaxPhotons;
|
||||
};
|
||||
|
||||
////////////////////
|
||||
@@ -188,6 +224,12 @@ void G4Cerenkov::SetTrackSecondariesFirst(const G4bool state)
|
||||
fTrackSecondariesFirst = state;
|
||||
}
|
||||
|
||||
inline
|
||||
void G4Cerenkov::SetMaxBetaChangePerStep(const G4double value)
|
||||
{
|
||||
fMaxBetaChange = value*perCent;
|
||||
}
|
||||
|
||||
inline
|
||||
void G4Cerenkov::SetMaxNumPhotonsPerStep(const G4int NumPhotons)
|
||||
{
|
||||
@@ -207,7 +249,8 @@ void G4Cerenkov::DumpPhysicsTable() const
|
||||
}
|
||||
}
|
||||
|
||||
inline G4PhysicsTable* G4Cerenkov::GetPhysicsTable() const
|
||||
inline
|
||||
G4PhysicsTable* G4Cerenkov::GetPhysicsTable() const
|
||||
{
|
||||
return thePhysicsTable;
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4ForwardXrayTR.hh,v 1.14 2006/06/29 19:55:33 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// G4ForwardXrayTR -- header file
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4GammaXTRadiator.hh,v 1.4 2006/06/29 19:55:35 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4RegularXTRadiator.hh,v 1.3 2006/06/29 19:55:37 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Scintillation.hh,v 1.13 2006/06/29 19:55:39 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// $Id: G4Scintillation.hh,v 1.15 2008/06/13 01:04:49 gum Exp $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
@@ -71,6 +71,8 @@
|
||||
#include "G4MaterialPropertiesTable.hh"
|
||||
#include "G4PhysicsOrderedFreeVector.hh"
|
||||
|
||||
#include "G4EmSaturation.hh"
|
||||
|
||||
// Class Description:
|
||||
// RestDiscrete Process - Generation of Scintillation Photons.
|
||||
// Class inherits publicly from G4VRestDiscreteProcess.
|
||||
@@ -169,10 +171,16 @@ public: // With description
|
||||
G4PhysicsTable* GetSlowIntegralTable() const;
|
||||
// Returns the address of the slow scintillation integral table.
|
||||
|
||||
void AddSaturation(G4EmSaturation* sat) { emSaturation = sat; }
|
||||
// Adds Birks Saturation to the process.
|
||||
|
||||
G4EmSaturation* GetSaturation() const { return emSaturation; }
|
||||
// Returns the Birks Saturation.
|
||||
|
||||
void DumpPhysicsTable() const;
|
||||
// Prints the fast and slow scintillation integral tables.
|
||||
|
||||
private:
|
||||
protected:
|
||||
|
||||
void BuildThePhysicsTable();
|
||||
// It builds either the fast or slow scintillation integral table;
|
||||
@@ -182,12 +190,11 @@ private:
|
||||
// Class Data Members
|
||||
///////////////////////
|
||||
|
||||
protected:
|
||||
|
||||
G4PhysicsTable* theSlowIntegralTable;
|
||||
G4PhysicsTable* theFastIntegralTable;
|
||||
|
||||
private:
|
||||
|
||||
|
||||
G4bool fTrackSecondariesFirst;
|
||||
|
||||
@@ -195,6 +202,10 @@ private:
|
||||
|
||||
G4double ExcitationRatio;
|
||||
|
||||
private:
|
||||
|
||||
G4EmSaturation* emSaturation;
|
||||
|
||||
};
|
||||
|
||||
////////////////////
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4StrawTubeXTRadiator.hh,v 1.4 2007/09/29 17:49:34 vnivanch Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4SynchrotronRadiation.hh,v 1.4 2006/06/29 19:55:43 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4SynchrotronRadiationInMat.hh,v 1.2 2006/06/29 19:55:45 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TransitionRadiation.hh,v 1.9 2006/06/29 19:55:47 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// G4TransitionRadiation -- header file
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TransparentRegXTRadiator.hh,v 1.2 2006/06/29 19:55:49 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VTRModel.hh,v 1.3 2006/06/29 19:55:51 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// G4VTRModel -- header file
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VTransitionRadiation.hh,v 1.3 2006/06/29 19:55:53 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
// G4VTransitionRadiation -- header file
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VXTRenergyLoss.hh,v 1.24 2007/09/29 17:49:34 vnivanch Exp $
|
||||
// GEANT4 tag $Name: geant4-09-01 $
|
||||
// GEANT4 tag $Name: geant4-09-02 $
|
||||
//
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user