Import Geant4 0.0.0 source tree
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Alpha.hh,v 2.3 1998/09/24 11:24:39 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 4-th April 1996, G.Cosmo
|
||||
// ****************************************************************
|
||||
// Added particle definitions, H.Kurashige, 19 April 1996
|
||||
// Revised, G.Cosmo, 6 June 1996
|
||||
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
// Each class inheriting from G4VIon
|
||||
// corresponds to a particle type; one and only one
|
||||
// instance for each class is guaranteed.
|
||||
|
||||
#ifndef G4Alpha_h
|
||||
#define G4Alpha_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4VIon.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### ALPHA ###
|
||||
// ######################################################################
|
||||
|
||||
class G4Alpha : public G4VIon
|
||||
{
|
||||
private:
|
||||
static G4Alpha theAlpha;
|
||||
static G4double theAlphaLengthCut;
|
||||
static G4double* theAlphaKineticEnergyCuts;
|
||||
|
||||
public:
|
||||
G4Alpha(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable
|
||||
);
|
||||
static G4Alpha* AlphaDefinition();
|
||||
static G4Alpha* Alpha(){return &theAlpha;}
|
||||
static G4double GetCuts() {return theAlphaLengthCut;}
|
||||
static G4double* GetCutsInEnergy() {return theAlphaKineticEnergyCuts;};
|
||||
|
||||
void SetCuts(G4double aCut);
|
||||
};
|
||||
|
||||
inline void G4Alpha::SetCuts(G4double aCut)
|
||||
{
|
||||
CalcEnergyCuts(aCut);
|
||||
theAlphaLengthCut = theCutInMaxInteractionLength;
|
||||
theAlphaKineticEnergyCuts = theKineticEnergyCuts;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,75 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Deuteron.hh,v 2.3 1998/09/24 11:24:42 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 4-th April 1996, G.Cosmo
|
||||
// ****************************************************************
|
||||
// Added particle definitions, H.Kurashige, 19 April 1996
|
||||
// Revised, G.Cosmo, 6 June 1996
|
||||
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
// Each class inheriting from G4VIon
|
||||
// corresponds to a particle type; one and only one
|
||||
// instance for each class is guaranteed.
|
||||
|
||||
#ifndef G4Deuteron_h
|
||||
#define G4Deuteron_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4VIon.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### DEUTERON ###
|
||||
// ######################################################################
|
||||
|
||||
class G4Deuteron : public G4VIon
|
||||
{
|
||||
private:
|
||||
static G4Deuteron theDeuteron;
|
||||
static G4double theDeuteronLengthCut;
|
||||
static G4double* theDeuteronKineticEnergyCuts;
|
||||
|
||||
public:
|
||||
G4Deuteron(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable
|
||||
);
|
||||
static G4Deuteron* DeuteronDefinition();
|
||||
static G4Deuteron* Deuteron(){return &theDeuteron;}
|
||||
static G4double GetCuts() {return theDeuteronLengthCut;}
|
||||
static G4double* GetCutsInEnergy() {return theDeuteronKineticEnergyCuts;};
|
||||
|
||||
void SetCuts(G4double aCut);
|
||||
};
|
||||
|
||||
inline void G4Deuteron::SetCuts(G4double aCut)
|
||||
{
|
||||
CalcEnergyCuts(aCut);
|
||||
theDeuteronLengthCut = theCutInMaxInteractionLength;
|
||||
theDeuteronKineticEnergyCuts = theKineticEnergyCuts;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,72 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4GenericIon.hh,v 1.1 1998/12/05 07:54:00 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 4-th Dec 1998, H.Kurashige
|
||||
// ****************************************************************
|
||||
// This class is used only by G4IonTable and not for tracking
|
||||
// G4IonTable creates various ions other than alpha,deuteron,triton,
|
||||
// and He3. Processes for these ions will be same as ones for
|
||||
// this "GenericIon". So, user should register processes for ions
|
||||
// to this class in his/her UserPhysicsList
|
||||
|
||||
#ifndef G4GenericIon_h
|
||||
#define G4GenericIon_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4VIon.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### GenericIon ###
|
||||
// ######################################################################
|
||||
|
||||
class G4GenericIon : public G4VIon
|
||||
{
|
||||
private:
|
||||
static G4GenericIon theGenericIon;
|
||||
static G4double theGenericIonLengthCut;
|
||||
static G4double* theGenericIonKineticEnergyCuts;
|
||||
|
||||
public:
|
||||
G4GenericIon(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable
|
||||
);
|
||||
static G4GenericIon* GenericIonDefinition();
|
||||
static G4GenericIon* GenericIon(){return &theGenericIon;}
|
||||
static G4double GetCuts() {return theGenericIonLengthCut;}
|
||||
static G4double* GetCutsInEnergy() {return theGenericIonKineticEnergyCuts;};
|
||||
|
||||
void SetCuts(G4double aCut);
|
||||
};
|
||||
|
||||
inline void G4GenericIon::SetCuts(G4double aCut)
|
||||
{
|
||||
CalcEnergyCuts(aCut);
|
||||
theGenericIonLengthCut = theCutInMaxInteractionLength;
|
||||
theGenericIonKineticEnergyCuts = theKineticEnergyCuts;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,72 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4He3.hh,v 2.3 1998/09/24 11:24:44 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 24-th April 1998,H.Kurashige
|
||||
// ****************************************************************
|
||||
// ----------------------------------------------------------------------
|
||||
// Each class inheriting from G4VIon
|
||||
// corresponds to a particle type; one and only one
|
||||
// instance for each class is guaranteed.
|
||||
|
||||
#ifndef G4He3_h
|
||||
#define G4He3_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4VIon.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### He3 ###
|
||||
// ######################################################################
|
||||
|
||||
class G4He3 : public G4VIon
|
||||
{
|
||||
private:
|
||||
static G4He3 theHe3;
|
||||
static G4double theHe3LengthCut;
|
||||
static G4double* theHe3KineticEnergyCuts;
|
||||
|
||||
public:
|
||||
G4He3(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable
|
||||
);
|
||||
static G4He3* He3Definition();
|
||||
static G4He3* He3() {return &theHe3;}
|
||||
static G4double GetCuts() {return theHe3LengthCut;}
|
||||
static G4double* GetCutsInEnergy() {return theHe3KineticEnergyCuts;};
|
||||
|
||||
void SetCuts(G4double aCut);
|
||||
};
|
||||
|
||||
inline void G4He3::SetCuts(G4double aCut)
|
||||
{
|
||||
CalcEnergyCuts(aCut);
|
||||
theHe3LengthCut = theCutInMaxInteractionLength;
|
||||
theHe3KineticEnergyCuts = theKineticEnergyCuts;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4IonConstructor.hh,v 2.1 1998/07/13 17:16:11 urbi Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
#ifndef G4IonConstructor_h
|
||||
#define G4IonConstructor_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
|
||||
class G4IonConstructor
|
||||
{
|
||||
//This class is a utility class for construction
|
||||
//short lived particles
|
||||
|
||||
public:
|
||||
G4IonConstructor();
|
||||
~G4IonConstructor();
|
||||
|
||||
public:
|
||||
void ConstructParticle();
|
||||
|
||||
protected:
|
||||
void ConstructLightIons();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,75 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Triton.hh,v 2.3 1998/09/24 11:24:47 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 4-th April 1996, G.Cosmo
|
||||
// ****************************************************************
|
||||
// Added particle definitions, H.Kurashige, 19 April 1996
|
||||
// Revised, G.Cosmo, 6 June 1996
|
||||
// Added not static GetEnergyCuts() and GetLengthCuts(), G.Cosmo, 11 July 1996
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
// Each class inheriting from G4VIon
|
||||
// corresponds to a particle type; one and only one
|
||||
// instance for each class is guaranteed.
|
||||
|
||||
#ifndef G4Triton_h
|
||||
#define G4Triton_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4VIon.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### TRITON ###
|
||||
// ######################################################################
|
||||
|
||||
class G4Triton : public G4VIon
|
||||
{
|
||||
private:
|
||||
static G4Triton theTriton;
|
||||
static G4double theTritonLengthCut;
|
||||
static G4double* theTritonKineticEnergyCuts;
|
||||
|
||||
public:
|
||||
G4Triton(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable
|
||||
);
|
||||
static G4Triton* TritonDefinition();
|
||||
static G4Triton* Triton() {return &theTriton;}
|
||||
static G4double GetCuts() {return theTritonLengthCut;}
|
||||
static G4double* GetCutsInEnergy() {return theTritonKineticEnergyCuts;};
|
||||
|
||||
void SetCuts(G4double aCut);
|
||||
};
|
||||
|
||||
inline void G4Triton::SetCuts(G4double aCut)
|
||||
{
|
||||
CalcEnergyCuts(aCut);
|
||||
theTritonLengthCut = theCutInMaxInteractionLength;
|
||||
theTritonKineticEnergyCuts = theKineticEnergyCuts;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,72 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VIon.hh,v 2.2 1998/07/13 17:16:14 urbi Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// History: first implementation, based on object model of
|
||||
// 2nd December 1995, G.Cosmo
|
||||
// ------------------------------------------------------------
|
||||
// Revised, Hisaya Kurashige, 16 Dec 1996
|
||||
// Revised, Hisaya Kurashige, 24 Frb 1997
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
#ifndef G4VIon_h
|
||||
#define G4VIon_h 1
|
||||
|
||||
#include "G4ios.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4Material.hh"
|
||||
|
||||
#include "G4PhysicsLogVector.hh"
|
||||
#include "G4ParticleWithCuts.hh"
|
||||
|
||||
class G4VIon : public G4ParticleWithCuts
|
||||
{
|
||||
// A virtual class for Ions particles. It defines
|
||||
// public methods which describe the behavior of a
|
||||
// ion.
|
||||
|
||||
private:
|
||||
|
||||
const G4VIon & operator=(const G4VIon &right);
|
||||
|
||||
public:
|
||||
|
||||
G4VIon(const G4String& aName,
|
||||
G4double mass,
|
||||
G4double width,
|
||||
G4double charge,
|
||||
G4int iSpin,
|
||||
G4int iParity,
|
||||
G4int iConjugation,
|
||||
G4int iIsospin,
|
||||
G4int iIsospinZ,
|
||||
G4int gParity,
|
||||
const G4String& pType,
|
||||
G4int lepton,
|
||||
G4int baryon,
|
||||
G4int encoding,
|
||||
G4bool stable,
|
||||
G4double lifetime,
|
||||
G4DecayTable *decaytable)
|
||||
: G4ParticleWithCuts(aName, mass, width, charge, iSpin, iParity,
|
||||
iConjugation, iIsospin, iIsospinZ, gParity,
|
||||
pType, lepton, baryon, encoding, stable,
|
||||
lifetime, decaytable) {};
|
||||
|
||||
virtual ~G4VIon() {};
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user