Import Geant4 9.6.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 17:01:34 +02:00
parent b1eb5424d2
commit e2d2f9810a
10384 changed files with 698580 additions and 628834 deletions
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/DetectorConstruction.hh
/// \brief Definition of the DetectorConstruction class
//
// $Id: DetectorConstruction.hh,v 1.1 2010-06-09 01:55:38 asaim Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -47,12 +49,12 @@ class DetectorConstruction : public G4VUserDetectorConstruction
G4VPhysicalVolume* Construct();
G4double GetWorldSizeXY() {return worldSizeXY;};
G4double GetWorldSizeZ() {return worldSizeZ;};
G4double GetWorldSizeXY() {return fWorldSizeXY;};
G4double GetWorldSizeZ() {return fWorldSizeZ;};
private:
G4double worldSizeXY, worldSizeZ;
G4double fWorldSizeXY, fWorldSizeZ;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/HistoManager.hh
/// \brief Definition of the HistoManager class
//
// $Id: HistoManager.hh,v 1.1 2010-06-09 01:55:38 asaim Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -34,15 +36,11 @@
#define HistoManager_h 1
#include "globals.hh"
#include "g4root.hh"
////#include "g4xml.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
namespace AIDA {
class IAnalysisFactory;
class ITree;
class IHistogram1D;
}
class HistoMessenger;
const G4int MaxHisto = 9;
@@ -57,39 +55,36 @@ class HistoManager
~HistoManager();
void SetFileName (const G4String& name) { fileName[0] = name;};
void SetFileType (const G4String& name) { fileType = name;};
void SetFileOption (const G4String& name) { fileOption = name;};
void book();
void save();
void SetHisto (G4int,G4int,G4double,G4double,const G4String& unit="none");
void FillHisto(G4int id, G4double e, G4double weight = 1.0);
void RemoveHisto (G4int);
void Normalize(G4int id, G4double fac);
void PrintHisto (G4int);
G4bool HistoExist (G4int id) {return exist[id];}
G4double GetHistoUnit(G4int id) {return Unit[id];}
G4double GetBinWidth (G4int id) {return Width[id];}
G4bool HistoExist (G4int id) {return fExist[id];}
G4double GetHistoUnit(G4int id) {return fUnit[id];}
G4double GetBinWidth (G4int id) {return fWidth[id];}
private:
G4String fileName[2];
G4String fileType;
G4String fileOption;
AIDA::IAnalysisFactory* af;
AIDA::ITree* tree;
AIDA::IHistogram1D* histo[MaxHisto];
G4bool exist[MaxHisto];
G4String Label[MaxHisto];
G4String Title[MaxHisto];
G4int Nbins[MaxHisto];
G4double Vmin [MaxHisto];
G4double Vmax [MaxHisto];
G4double Unit [MaxHisto];
G4double Width[MaxHisto];
G4bool ascii[MaxHisto];
G4String fileName[2];
G4bool factoryOn;
G4int fNbHist;
G4int fHistId[MaxHisto];
G4AnaH1* fHistPt[MaxHisto];
G4bool fExist[MaxHisto];
G4String fLabel[MaxHisto];
G4String fTitle[MaxHisto];
G4int fNbins[MaxHisto];
G4double fVmin [MaxHisto];
G4double fVmax [MaxHisto];
G4double fUnit [MaxHisto];
G4double fWidth[MaxHisto];
G4bool fAscii[MaxHisto];
G4bool factoryOn;
HistoMessenger* histoMessenger;
HistoMessenger* fHistoMessenger;
private:
void saveAscii();
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/HistoMessenger.hh
/// \brief Definition of the HistoMessenger class
//
// $Id: HistoMessenger.hh,v 1.2 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -57,15 +59,13 @@ class HistoMessenger: public G4UImessenger
private:
HistoManager* histoManager;
HistoManager* fHistoManager;
G4UIdirectory* histoDir;
G4UIcmdWithAString* factoryCmd;
G4UIcmdWithAString* typeCmd;
G4UIcmdWithAString* optionCmd;
G4UIcommand* histoCmd;
G4UIcmdWithAnInteger* prhistoCmd;
G4UIcmdWithAnInteger* rmhistoCmd;
G4UIdirectory* fHistoDir;
G4UIcmdWithAString* fFileNameCmd;
G4UIcommand* fHistoCmd;
G4UIcmdWithAnInteger* fPrtHistoCmd;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PhysicsList.hh
/// \brief Definition of the PhysicsList class
//
// $Id: PhysicsList.hh,v 1.1 2010-06-09 01:55:38 asaim Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PrimaryGeneratorAction.hh
/// \brief Definition of the PrimaryGeneratorAction class
//
// $Id: PrimaryGeneratorAction.hh,v 1.3 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PrimaryGeneratorAction1.hh
/// \brief Definition of the PrimaryGeneratorAction1 class
//
// $Id: PrimaryGeneratorAction1.hh,v 1.2 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -51,7 +53,7 @@ class PrimaryGeneratorAction1
void GeneratePrimaries(G4Event*);
private:
G4ParticleGun* particleGun;
G4ParticleGun* fParticleGun;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PrimaryGeneratorAction2.hh
/// \brief Definition of the PrimaryGeneratorAction2 class
//
// $Id: PrimaryGeneratorAction2.hh,v 1.3 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -58,12 +60,12 @@ class PrimaryGeneratorAction2
private:
G4ParticleGun* particleGun;
G4int nPoints; //tabulated function
G4int nPoints; //tabulated function
std::vector<G4double> x;
std::vector<G4double> f; //f(x)
std::vector<G4double> a; //slopes
std::vector<G4double> Fc; //cumulative of f
G4double fMax; //max(f)
std::vector<G4double> f; //f(x)
std::vector<G4double> a; //slopes
std::vector<G4double> Fc; //cumulative of f
G4double fMax; //max(f)
private:
void InitFunction();
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PrimaryGeneratorAction3.hh
/// \brief Definition of the PrimaryGeneratorAction3 class
//
// $Id: PrimaryGeneratorAction3.hh,v 1.3 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -52,14 +54,14 @@ class PrimaryGeneratorAction3
void GeneratePrimaries(G4Event*);
public:
G4ThreeVector GetNewUz() { return newUz; };
G4double GetAlphaMax() { return alphaMax; };
G4ThreeVector GetNewUz() { return fNewUz; };
G4double GetAlphaMax() { return fAlphaMax; };
private:
G4ThreeVector newUz;
G4double alphaMax; //max angle
G4ThreeVector fNewUz;
G4double fAlphaMax; //max angle
G4ParticleGun* particleGun;
G4ParticleGun* fParticleGun;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/PrimaryGeneratorAction4.hh
/// \brief Definition of the PrimaryGeneratorAction4 class
//
// $Id: PrimaryGeneratorAction4.hh,v 1.2 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -51,18 +53,18 @@ class PrimaryGeneratorAction4
public:
void GeneratePrimaries(G4Event*);
G4double GetRmin3() {return Rmin3;};
G4double GetRmax3() {return Rmax3;};
G4double GetCosAlphaMin() {return cosAlphaMin;};
G4double GetCosAlphaMax() {return cosAlphaMax;};
G4double GetRmin3() {return fRmin3;};
G4double GetRmax3() {return fRmax3;};
G4double GetCosAlphaMin() {return fCosAlphaMin;};
G4double GetCosAlphaMax() {return fCosAlphaMax;};
private:
G4double Rmin3;
G4double Rmax3; //vertex volume
G4double cosAlphaMin;
G4double cosAlphaMax; //opening angle
G4double fRmin3;
G4double fRmax3; //vertex volume
G4double fCosAlphaMin;
G4double fCosAlphaMax; //opening angle
G4ParticleGun* particleGun;
G4ParticleGun* fParticleGun;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,8 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: PrimaryGeneratorMessenger.hh,v 1.1 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
/// \file eventgenerator/particleGun/include/PrimaryGeneratorMessenger.hh
/// \brief Definition of the PrimaryGeneratorMessenger class
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -52,8 +54,8 @@ class PrimaryGeneratorMessenger: public G4UImessenger
private:
PrimaryGeneratorAction* Action;
G4UIdirectory* Dir;
G4UIcmdWithAnInteger* selectActionCmd;
G4UIdirectory* fDir;
G4UIcmdWithAnInteger* fSelectActionCmd;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/RunAction.hh
/// \brief Definition of the RunAction class
//
// $Id: RunAction.hh,v 1.1 2010-06-09 01:55:38 asaim Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -51,7 +53,7 @@ class RunAction : public G4UserRunAction
void EndOfRunAction(const G4Run*);
private:
HistoManager* histoManager;
HistoManager* fHistoManager;
};
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/SteppingVerbose.hh
/// \brief Definition of the SteppingVerbose class
//
// $Id: SteppingVerbose.hh,v 1.1 2010-06-09 01:55:38 asaim Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,9 +23,11 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file eventgenerator/particleGun/include/TrackingAction.hh
/// \brief Definition of the TrackingAction class
//
// $Id: TrackingAction.hh,v 1.3 2010-07-16 07:37:48 maire Exp $
// GEANT4 tag $Name: not supported by cvs2svn $
//
// $Id$
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -52,16 +54,16 @@ class TrackingAction : public G4UserTrackingAction {
void PostUserTrackingAction(const G4Track*);
private:
PrimaryGeneratorAction* primary;
HistoManager* histoManager;
PrimaryGeneratorAction* fPrimary;
HistoManager* fHistoManager;
// parameters for generator action #3
G4ThreeVector newUz;
G4ThreeVector fNewUz;
// parameters for generator action #4
G4double deltaR3;
G4double cosAlphaMin;
G4double cosAlphaMax; //opening angle
G4double fDeltaR3;
G4double fCosAlphaMin;
G4double fCosAlphaMax; //opening angle
};