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
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.2 1998/10/14 15:47:16 allison Exp $
# $Id: GNUmakefile,v 1.1 1999/01/07 16:05:39 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.1 1998/07/02 15:26:45 gunter Exp $
# $Id: GNUmakefile,v 1.1 1999/01/07 16:05:40 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile.light,v 2.1 1998/07/23 07:15:18 gcosmo Exp $
# $Id: GNUmakefile.light,v 1.1 1999/01/07 16:05:40 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+3 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 2.0 1998/07/02 14:05:34 gunter Exp $
$Id: History,v 1.2 1999/04/16 10:48:47 kurasige Exp $
-------------------------------------------------------------------
=========================================================
@@ -14,6 +14,8 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
16th April 1999 H.Kurashige
- modify ExN01PhysicsList::SetCuts
May 07, 98 M.Asai
- First commitment of all classes.
+1 -1
View File
@@ -1,4 +1,4 @@
$Id: README,v 2.1 1998/09/27 07:19:57 asaim Exp $
$Id: README,v 1.1 1999/01/07 16:05:40 gunter Exp $
-------------------------------------------------------------------
=========================================================
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: exampleN01.cc,v 2.3 1998/12/08 16:37:27 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: exampleN01.cc,v 1.1 1999/01/07 16:05:41 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// --------------------------------------------------------------
+1 -1
View File
@@ -188,5 +188,5 @@ Terminate current event processing.
Run terminated.
Run Summary
Number of events processed : 3
User=0.05s Real=0.0666667s Sys=0.0166667s
User=0.11s Real=0.13s Sys=0.02s
G4 kernel has come to Quit state.
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01DetectorConstruction.hh,v 2.1 1998/07/12 02:40:52 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01DetectorConstruction.hh,v 1.1 1999/01/07 16:05:41 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#ifndef ExN01DetectorConstruction_H
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01PhysicsList.hh,v 2.1 1998/07/12 02:40:52 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01PhysicsList.hh,v 1.2 1999/04/16 10:48:49 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
//
@@ -36,7 +36,7 @@ class ExN01PhysicsList: public G4VUserPhysicsList
// Construct particle and physics process
void ConstructParticle();
void ConstructProcess();
void SetCuts(G4double cut);
void SetCuts();
};
@@ -44,3 +44,7 @@ class ExN01PhysicsList: public G4VUserPhysicsList
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01PrimaryGeneratorAction.hh,v 2.1 1998/07/12 02:40:53 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01PrimaryGeneratorAction.hh,v 1.1 1999/01/07 16:05:42 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#ifndef ExN01PrimaryGeneratorAction_h
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01DetectorConstruction.cc,v 1.1 1998/11/14 20:52:38 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01DetectorConstruction.cc,v 1.1 1999/01/07 16:05:42 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#include "ExN01DetectorConstruction.hh"
+8 -20
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01PhysicsList.cc,v 1.1 1998/11/14 20:52:42 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01PhysicsList.cc,v 1.2 1999/04/16 10:48:50 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -37,27 +37,15 @@ void ExN01PhysicsList::ConstructProcess()
AddTransportation();
}
void ExN01PhysicsList::SetCuts(G4double cut)
void ExN01PhysicsList::SetCuts()
{
// uppress error messages even in case e/gamma/proton do not exist
G4int temp = GetVerboseLevel();
SetVerboseLevel(0);
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(cut, "gamma");
SetCutValue(cut, "e-");
SetCutValue(cut, "e+");
// set cut values for proton and anti_proton before all other hadrons
// because some processes for hadrons need cut values for proton/anti_proton
SetCutValue(cut, "proton");
SetCutValue(cut, "anti_proton");
// set a cut value to all particles
G4int temp = GetVerboseLevel(); SetVerboseLevel(0);
// " G4VUserPhysicsList::SetCutsWithDefault" method sets
// the default cut value for all particle types
SetCutsWithDefault();
SetCutValueForOthers(cut);
// Retrieve verbose level
SetVerboseLevel(temp);
}
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN01PrimaryGeneratorAction.cc,v 1.1 1998/11/14 20:52:45 kurasige Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN01PrimaryGeneratorAction.cc,v 1.1 1999/01/07 16:05:42 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#include "ExN01PrimaryGeneratorAction.hh"
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.1 1998/07/02 15:26:52 gunter Exp $
# $Id: GNUmakefile,v 1.1 1999/01/07 16:05:42 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+4 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 2.13 1998/12/08 16:37:28 allison Exp $
$Id: History,v 1.2 1999/04/16 11:19:54 kurasige Exp $
-------------------------------------------------------------------
=========================================================
@@ -14,6 +14,9 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
16th April 1999 H.Kurashige
- modify ExN02SteppingAction::UserSteppingAction
- modify ExN02PhysicsList::SetCuts
4th December 1998 John Apostolakis
+1 -1
View File
@@ -1,4 +1,4 @@
$Id: README,v 2.4 1998/10/09 14:27:35 japost Exp $
$Id: README,v 1.1 1999/01/07 16:05:43 gunter Exp $
-------------------------------------------------------------------
=========================================================
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: exampleN02.cc,v 2.11 1998/12/08 16:37:28 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: exampleN02.cc,v 1.1 1999/01/07 16:05:43 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// --------------------------------------------------------------
+1 -3
View File
@@ -7,9 +7,7 @@
/gun/particle e+
/run/beamOn 1
/run/beamOn 10
/tracking/verbose 0
/run/beamOn 100
# /run/beamOn 1000
exit
File diff suppressed because it is too large Load Diff
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02ChamberParameterisation.hh,v 1.2 1998/11/30 17:18:43 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02ChamberParameterisation.hh,v 1.1 1999/01/07 16:05:46 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// A parameterisation that describes a series of boxes along Z
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02DetectorConstruction.hh,v 1.3 1998/10/09 14:31:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02DetectorConstruction.hh,v 1.1 1999/01/07 16:05:46 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: ExN02DetectorMessenger.hh,v 1.3 1998/10/09 14:31:02 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02DetectorMessenger.hh,v 1.1 1999/01/07 16:05:46 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: ExN02EventAction.hh,v 1.3 1998/10/09 14:31:02 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02EventAction.hh,v 1.2 1999/04/24 09:38:03 asaim Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -24,8 +24,8 @@ class ExN02EventAction : public G4UserEventAction
~ExN02EventAction();
public:
void BeginOfEventAction();
void EndOfEventAction();
void BeginOfEventAction(const G4Event*);
void EndOfEventAction(const G4Event*);
private:
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02MagneticField.hh,v 1.1 1998/10/09 14:31:03 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02MagneticField.hh,v 1.1 1999/01/07 16:05:47 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// A class for control of the Magnetic Field of the detector.
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02PhysicsList.hh,v 1.4 1998/10/09 14:31:03 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PhysicsList.hh,v 1.2 1999/04/16 11:19:56 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -52,8 +52,9 @@ class ExN02PhysicsList: public G4VUserPhysicsList
virtual void ConstructProcess();
//
virtual void SetCuts(G4double aCut);
virtual void SetCuts();
protected:
// these methods Construct particles
virtual void ConstructBosons();
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02PrimaryGeneratorAction.hh,v 1.3 1998/10/09 14:31:04 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PrimaryGeneratorAction.hh,v 1.1 1999/01/07 16:05:47 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: ExN02PrimaryGeneratorMessenger.hh,v 1.3 1998/10/09 14:31:05 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PrimaryGeneratorMessenger.hh,v 1.1 1999/01/07 16:05:47 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: ExN02RunAction.hh,v 1.3 1998/10/09 14:31:06 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02RunAction.hh,v 1.2 1999/04/16 11:19:56 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -22,11 +22,11 @@ class ExN02RunAction : public G4UserRunAction
{
public:
ExN02RunAction();
~ExN02RunAction();
virtual ~ExN02RunAction();
public:
void BeginOfRunAction(G4Run* aRun);
void EndOfRunAction(G4Run* aRun);
virtual void BeginOfRunAction(const G4Run* aRun);
virtual void EndOfRunAction(const G4Run* aRun);
private:
G4int runIDcounter;
@@ -34,3 +34,7 @@ class ExN02RunAction : public G4UserRunAction
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02SteppingAction.hh,v 1.3 1998/10/09 14:31:06 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02SteppingAction.hh,v 1.2 1999/04/16 11:19:57 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -23,9 +23,9 @@ class ExN02SteppingAction : public G4UserSteppingAction
{
public:
ExN02SteppingAction(ExN02DetectorConstruction* myDC,ExN02EventAction* myEA);
~ExN02SteppingAction(){};
virtual ~ExN02SteppingAction(){};
void UserSteppingAction();
virtual void UserSteppingAction(const G4Step*);
private:
ExN02DetectorConstruction* myDetector;
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02TrackerHit.hh,v 1.1 1998/10/09 14:31:07 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02TrackerHit.hh,v 1.1 1999/01/07 16:05:48 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#ifndef ExN02TrackerHit_h
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02TrackerSD.hh,v 1.1 1998/10/09 14:31:08 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02TrackerSD.hh,v 1.1 1999/01/07 16:05:48 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#ifndef ExN02TrackerSD_h
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02VisManager.hh,v 1.3 1998/10/09 14:31:09 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02VisManager.hh,v 1.2 1999/06/24 07:48:46 stesting Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -31,6 +31,8 @@
#ifndef ExN02VisManager_h
#define ExN02VisManager_h 1
#ifdef G4VIS_USE
#include "G4VisManager.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -48,3 +50,5 @@ private:
};
#endif
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02ChamberParameterisation.cc,v 1.1 1998/10/09 14:35:30 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02ChamberParameterisation.cc,v 1.1 1999/01/07 16:05:48 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#include "ExN02ChamberParameterisation.hh"
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02DetectorConstruction.cc,v 1.9 1998/12/04 21:26:12 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02DetectorConstruction.cc,v 1.1 1999/01/07 16:05:48 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: ExN02DetectorMessenger.cc,v 1.4 1998/10/09 14:35:32 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02DetectorMessenger.cc,v 1.1 1999/01/07 16:05:49 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
+4 -6
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02EventAction.cc,v 1.3 1998/10/09 14:35:32 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02EventAction.cc,v 1.2 1999/04/24 09:38:04 asaim Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -27,13 +27,11 @@ ExN02EventAction::ExN02EventAction()
ExN02EventAction::~ExN02EventAction()
{}
void ExN02EventAction::BeginOfEventAction()
void ExN02EventAction::BeginOfEventAction(const G4Event*)
{}
void ExN02EventAction::EndOfEventAction()
void ExN02EventAction::EndOfEventAction(const G4Event* evt)
{
const G4Event* evt = fpEventManager->GetConstCurrentEvent();
G4cout << ">>> Event " << evt->GetEventID() << endl;
G4TrajectoryContainer * trajectoryContainer = evt->GetTrajectoryContainer();
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02MagneticField.cc,v 1.2 1998/12/04 20:25:22 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02MagneticField.cc,v 1.1 1999/01/07 16:05:49 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// User Field class implementation.
+16 -28
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02PhysicsList.cc,v 1.4 1998/10/09 14:35:33 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PhysicsList.cc,v 1.2 1999/04/16 11:19:59 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// ------------------------------------------------------------
@@ -40,7 +40,7 @@ ExN02PhysicsList::ExN02PhysicsList(): G4VUserPhysicsList(),
theeplusAnnihilation(NULL)
{
defaultCutValue = 2.0*mm;
SetVerboseLevel(1);
SetVerboseLevel(1);
}
ExN02PhysicsList::~ExN02PhysicsList()
@@ -69,28 +69,29 @@ void ExN02PhysicsList::ConstructBosons()
// gamma
G4Gamma::GammaDefinition();
// optical photon
G4OpticalPhoton::OpticalPhotonDefinition();
}
void ExN02PhysicsList::ConstructLeptons()
{
// leptons
// e+/-
G4Electron::ElectronDefinition();
G4Positron::PositronDefinition();
// mu+/-
G4MuonPlus::MuonPlusDefinition();
G4MuonMinus::MuonMinusDefinition();
// nu_e
G4NeutrinoE::NeutrinoEDefinition();
G4AntiNeutrinoE::AntiNeutrinoEDefinition();
// nu_mu
G4NeutrinoMu::NeutrinoMuDefinition();
G4AntiNeutrinoMu::AntiNeutrinoMuDefinition();
}
void ExN02PhysicsList::ConstructMesons()
{
// mesons
// mesons
// light mesons
G4PionPlus::PionPlusDefinition();
G4PionMinus::PionMinusDefinition();
G4PionZero::PionZeroDefinition();
@@ -107,9 +108,10 @@ void ExN02PhysicsList::ConstructMesons()
void ExN02PhysicsList::ConstructBarions()
{
// barions
// barions
G4Proton::ProtonDefinition();
G4AntiProton::AntiProtonDefinition();
G4Neutron::NeutronDefinition();
G4AntiNeutron::AntiNeutronDefinition();
}
@@ -262,27 +264,13 @@ void ExN02PhysicsList::ConstructGeneral()
}
}
void ExN02PhysicsList::SetCuts(G4double cut)
void ExN02PhysicsList::SetCuts()
{
if (verboseLevel >0){
if (verboseLevel >1){
G4cout << "ExN02PhysicsList::SetCuts:";
G4cout << "CutLength : " << cut/mm << " (mm)" << endl;
}
// " G4VUserPhysicsList::SetCutsWithDefault" method sets
// the default cut value for all particle types
SetCutsWithDefault();
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(cut, "gamma");
SetCutValue(cut, "e-");
SetCutValue(cut, "e+");
// set cut values for proton and anti_proton before all other hadrons
// because some processes for hadrons need cut values for proton/anti_proton
SetCutValue(cut, "proton");
SetCutValue(cut, "anti_proton");
SetCutValueForOthers(cut);
if (verboseLevel>1) {
DumpCutValuesTable();
}
}
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02PrimaryGeneratorAction.cc,v 1.3 1998/10/09 14:35:34 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PrimaryGeneratorAction.cc,v 1.1 1999/01/07 16:05:49 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// $ Id: $
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02PrimaryGeneratorMessenger.cc,v 1.3 1998/10/09 14:35:34 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02PrimaryGeneratorMessenger.cc,v 1.1 1999/01/07 16:05:50 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
+8 -5
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02RunAction.cc,v 1.3 1998/10/09 14:35:34 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02RunAction.cc,v 1.2 1999/04/16 11:20:00 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -26,9 +26,9 @@ ExN02RunAction::~ExN02RunAction()
{
}
void ExN02RunAction::BeginOfRunAction(G4Run* aRun)
void ExN02RunAction::BeginOfRunAction(const G4Run* aRun)
{
aRun->SetRunID(runIDcounter++);
((G4Run *)(aRun))->SetRunID(runIDcounter++);
G4cout << "### Run " << aRun->GetRunID() << " start." << endl;
@@ -46,7 +46,7 @@ void ExN02RunAction::BeginOfRunAction(G4Run* aRun)
void ExN02RunAction::EndOfRunAction(G4Run* aRun)
void ExN02RunAction::EndOfRunAction(const G4Run*)
{
G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance();
@@ -56,3 +56,6 @@ void ExN02RunAction::EndOfRunAction(G4Run* aRun)
}
}
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02SteppingAction.cc,v 1.3 1998/10/09 14:35:35 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02SteppingAction.cc,v 1.2 1999/04/16 11:20:01 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -19,10 +19,8 @@ ExN02SteppingAction::ExN02SteppingAction(ExN02DetectorConstruction* myDC, ExN02E
:myDetector(myDC), eventAction(myEA)
{ }
void ExN02SteppingAction::UserSteppingAction()
void ExN02SteppingAction::UserSteppingAction(const G4Step* aStep)
{
G4Step* aStep = GetSteppingManager()->GetStep();
// collect the energy deposited in the absorber
const G4VPhysicalVolume* currentVolume = aStep->GetPreStepPoint()-> GetPhysicalVolume();
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02TrackerHit.cc,v 1.1 1998/10/09 14:35:35 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02TrackerHit.cc,v 1.1 1999/01/07 16:05:50 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#include "ExN02TrackerHit.hh"
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02TrackerSD.cc,v 1.1 1998/10/09 14:35:35 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02TrackerSD.cc,v 1.1 1999/01/07 16:05:50 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#include "ExN02TrackerSD.hh"
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN02VisManager.cc,v 1.4 1998/11/30 10:21:31 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN02VisManager.cc,v 1.1 1999/01/07 16:05:51 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// John Allison 24th January 1998.
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.1 1998/07/02 15:26:53 gunter Exp $
# $Id: GNUmakefile,v 1.1 1999/01/07 16:05:51 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+14 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 2.8 1998/10/30 12:30:12 maire Exp $
$Id: History,v 1.4 1999/05/31 14:48:07 maire Exp $
--------------------------------------------------
=========================================================
@@ -14,6 +14,19 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
31-05-99 Guy Barrand, Michel Maire
- introduce a command interface based on Motif: G4UIXm
16th April 1999 H.Kurashige
- modify ExN03SteppingAction::UserSteppingAction
- modify ExN03EventAction
- modify ExN03RunAction::BeginOfRunAction/EndOfRunAction
- Add cutForGamma/cutForElectron/cutForProton in ExN03PhysicsList
- modify ExN03PhysicsList::SetCuts
10-03-99 Michel Maire
- Choose RaneCu as the default random number generator.
- print the seed event%n
9-10-98 John Apostolakis
- This used to be example N02. It is now N03.
+19 -4
View File
@@ -1,4 +1,4 @@
$Id: README,v 2.2 1998/11/27 17:09:02 maire Exp $
$Id: README,v 1.2 1999/05/31 14:48:07 maire Exp $
-------------------------------------------------------------------
=========================================================
@@ -75,7 +75,7 @@ $Id: README,v 2.2 1998/11/27 17:09:02 maire Exp $
The Visualization Manager is set in the main().
The initialisation of the drawing is done via the command
/vis~/create_view in the macro prerunN03.mac. This macro is
a set of /vis commands in the macro prerunN03.mac. This macro is
automatically read from the main in case of interactive running mode.
The detector has a default view which is a longitudinal view of the
@@ -84,6 +84,11 @@ $Id: README,v 2.2 1998/11/27 17:09:02 maire Exp $
The tracks are drawn at the end of event, and erased at the end of run.
Optionaly one can choose to draw all particles, only the charged one,
or none. This command is defined in EventActionMessenger class.
NB: the visualization (with OpenGL) assumes two things:
1- the visualisation & interfaces categories have been compiled
with the environment variable G4VIS_BUILD_OPENGLX_DRIVER.
2- exampleN03.cc has been compiled with G4VIS_USE_OPENGLX.
5- PHYSICS DEMO
@@ -97,8 +102,18 @@ $Id: README,v 2.2 1998/11/27 17:09:02 maire Exp $
As a homework try to visualize a gamma conversion alone,
or the effect of the multiple scattering.
6- HOW TO START ?
6- USER INTERFACES
The default command interface, called G4UIterminal, is done via
standart cin/G4cout.
On can use a Motif driven command interface (called G4UIXm) if:
1- interfaces category has been compiled with G4UI_BUILD_XM_SESSION
2- exampleN03.cc has been compiled with G4UI_USE_XM.
7- HOW TO START ?
- compile and link to generate an executable
% cd N03
+21 -13
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: exampleN03.cc,v 2.9 1998/12/08 16:37:30 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: exampleN03.cc,v 1.7 1999/06/04 12:50:35 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// --------------------------------------------------------------
@@ -23,6 +23,8 @@
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4UIterminal.hh"
#include "G4UIXm.hh"
#include "Randomize.hh"
#ifdef G4VIS_USE
#include "ExN03VisManager.hh"
@@ -34,18 +36,13 @@
#include "ExN03RunAction.hh"
#include "ExN03EventAction.hh"
#include "ExN03SteppingAction.hh"
#ifdef GNU_GCC
#include <rw/tpordvec.h>
#include "ExN03CalorHit.hh"
template class RWTPtrOrderedVector <ExN03CalorHit>;
template class RWTPtrVector <ExN03CalorHit>;
template class G4Allocator <ExN03CalorHit>;
#endif
#include "Randomize.hh"
int main(int argc,char** argv) {
// choose the Random engine
HepRandom::setTheEngine(new RanecuEngine);
// Construct the default run manager
G4RunManager * runManager = new G4RunManager;
@@ -54,6 +51,18 @@ int main(int argc,char** argv) {
runManager->SetUserInitialization(detector);
runManager->SetUserInitialization(new ExN03PhysicsList);
G4UIsession* session=0;
if (argc==1) // Define UI session for interactive mode.
{
// G4UIterminal is a (dumb) terminal.
#ifdef G4UI_USE_XM
session = new G4UIXm(argc,argv);
#else
session = new G4UIterminal;
#endif
}
#ifdef G4VIS_USE
// visualization manager
G4VisManager* visManager = new ExN03VisManager;
@@ -72,10 +81,9 @@ int main(int argc,char** argv) {
// get the pointer to the User Interface manager
G4UImanager* UI = G4UImanager::GetUIpointer();
if (argc==1) // Define UI session for interactive mode.
if (session) // Define UI session for interactive mode.
{
// G4UIterminal is a (dumb) terminal.
G4UIsession * session = new G4UIterminal;
UI->ApplyCommand("/control/execute prerunN03.mac");
session->SessionStart();
delete session;
-1
View File
@@ -22,7 +22,6 @@
/calor/setNbOfLayers 30
/calor/setSizeYZ 1.5 m
/calor/update
/vis~/clear/scene
/gun/particle gamma
/gun/energy 500 MeV
/run/beamOn 1
+111 -82
View File
@@ -1,81 +1,80 @@
***** Table : Nb of materials = 13 *****
Material: Aluminium density: 2.700 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 8.893 cm
Material: Aluminium density: 2.700 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 8.893 cm
---> Element: Aluminium Z = 13.0 N = 27.0 A = 26.98 g/mole fractionMass: 100.00 % Abundance 100.00 %
Material: liquidArgon density: 1.390 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 14.065 cm
Material: liquidArgon density: 1.390 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 14.065 cm
---> Element: liquidArgon Z = 18.0 N = 40.0 A = 39.95 g/mole fractionMass: 100.00 % Abundance 100.00 %
Material: Copper density: 8.960 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 1.436 cm
Material: Copper density: 8.960 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 1.436 cm
---> Element: Copper Z = 29.0 N = 63.5 A = 63.55 g/mole fractionMass: 100.00 % Abundance 100.00 %
Material: Lead density: 11.350 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 5.612 mm
Material: Lead density: 11.350 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 5.612 mm
---> Element: Lead Z = 82.0 N = 207.2 A = 207.19 g/mole fractionMass: 100.00 % Abundance 100.00 %
Material: Water density: 1.000 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 36.092 cm
Material: Water density: 1.000 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 36.092 cm
---> Element: Hydrogen H Z = 1.0 N = 1.0 A = 1.01 g/mole fractionMass: 11.21 % Abundance 66.67 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 88.79 % Abundance 33.33 %
Material: Scintillator density: 1.032 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 42.549 cm
Material: Scintillator density: 1.032 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 42.549 cm
---> Element: Carbon C Z = 6.0 N = 12.0 A = 12.01 g/mole fractionMass: 91.45 % Abundance 47.37 %
---> Element: Hydrogen H Z = 1.0 N = 1.0 A = 1.01 g/mole fractionMass: 8.55 % Abundance 52.63 %
Material: quartz density: 2.200 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 12.295 cm
Material: quartz density: 2.200 g/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 12.295 cm
---> Element: Silicon Si Z = 14.0 N = 28.1 A = 28.09 g/mole fractionMass: 46.75 % Abundance 33.33 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 53.25 % Abundance 66.67 %
Material: Air density: 1.290 mg/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 285.161 m
Material: Air density: 1.290 mg/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 285.161 m
---> Element: Nitrogen N Z = 7.0 N = 14.0 A = 14.01 g/mole fractionMass: 70.00 % Abundance 72.71 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 30.00 % Abundance 27.29 %
Material: Aerogel density: 200.000 mg/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 1.493 m
Material: Aerogel density: 200.000 mg/cm3 temperature: 273.15 K pressure: 1.00 atm RadLength: 1.493 m
---> Element: Silicon Si Z = 14.0 N = 28.1 A = 28.09 g/mole fractionMass: 29.22 % Abundance 11.12 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 66.49 % Abundance 44.42 %
---> Element: Hydrogen H Z = 1.0 N = 1.0 A = 1.01 g/mole fractionMass: 4.19 % Abundance 44.37 %
---> Element: Carbon C Z = 6.0 N = 12.0 A = 12.01 g/mole fractionMass: 0.10 % Abundance 0.09 %
Material: CarbonicGas density: 27.000 mg/cm3 temperature: 325.00 K pressure: 50.00 atm RadLength: 13.406 m
Material: CarbonicGas density: 27.000 mg/cm3 temperature: 325.00 K pressure: 50.00 atm RadLength: 13.406 m
---> Element: Carbon C Z = 6.0 N = 12.0 A = 12.01 g/mole fractionMass: 27.29 % Abundance 33.33 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 72.71 % Abundance 66.67 %
Material: WaterSteam density: 0.300 mg/cm3 temperature: 500.00 K pressure: 2.00 atm RadLength: 1.203 km
Material: WaterSteam density: 0.300 mg/cm3 temperature: 500.00 K pressure: 2.00 atm RadLength: 1.203 km
---> Element: Hydrogen H Z = 1.0 N = 1.0 A = 1.01 g/mole fractionMass: 11.21 % Abundance 66.67 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 88.79 % Abundance 33.33 %
Material: Galactic density: 0.000 mg/cm3 temperature: 2.73 K pressure: 0.00 atm RadLength: 6317232936888469300000.000 km
Material: Galactic density: 0.000 mg/cm3 temperature: 2.73 K pressure: 0.00 atm RadLength: 6317232936888469291008.000 km
---> Element: Galactic Z = 1.0 N = 1.0 A = 1.01 g/mole fractionMass: 100.00 % Abundance 100.00 %
Material: Beam density: 0.010 mg/cm3 temperature: 273.15 K pressure: 0.02 atm RadLength: 36.786 km
Material: Beam density: 0.010 mg/cm3 temperature: 273.15 K pressure: 0.02 atm RadLength: 36.786 km
---> Element: Nitrogen N Z = 7.0 N = 14.0 A = 14.01 g/mole fractionMass: 70.00 % Abundance 72.71 %
---> Element: Oxygen O Z = 8.0 N = 16.0 A = 16.00 g/mole fractionMass: 30.00 % Abundance 27.29 %
The calorimeter is made of 10 layers of: [ 10mm of Lead + 5mm of liquidArgon ]
ExN03PhysicsList::SetCuts:CutLength : 2 (mm)
phot: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to 50 MeV for all Z
PhysicsTables from 10 keV to 50 MeV in 100 bins.
phot: Total cross sections from a parametrisation. Good description from 10 KeV to 50 MeV for all ZSandia crossSection below 50 KeV
PhysicsTables from 50 keV to 50 MeV in 100 bins.
compt: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to (100/Z) GeV.
compt: Total cross sections from a parametrisation. Good description from 10 KeV to (100/Z) GeV.
Scattered gamma energy according Klein-Nishina.
PhysicsTables from 10 keV to 1e+02 GeV in 100 bins.
conv: Total cross sections from a parametrisation(L.Urban). Good description from 1.5 MeV to 100 GeV for all Z.
conv: Total cross sections from a parametrisation. Good description from 1.5 MeV to 100 GeV for all Z.
e+e- energies according Bethe-Heitler
PhysicsTables from 1 MeV to 1e+02 GeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to 100 GeV.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 1e+02 TeV in 100 bins.
eBrem: Total cross sections from a parametrisation(L.Urban). Good description from 1 KeV to 100 GeV.
eBrem: Total cross sections from a parametrisation. Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 1e+02 TeV in 100 bins.
@@ -87,7 +86,7 @@ annihil: Total cross section from Heilter formula (annihilation into 2 photons)
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
hIoni: Knock-on electron cross sections .
Good description above the mean excitation energy.
@@ -97,22 +96,22 @@ hIoni: Knock-on electron cross sections .
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
PhysicsTables from 1e+02 eV to 1e+02 TeV in 100 bins.
MuIoni: knock-on electron cross sections .
Good description above the mean excitation energy.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 1e+03 PeV in 100 bins.
MuBrems: cross sections from R. Kokoulin
MuBrems: theoretical cross section
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1e+03 PeV in 100 bins.
MuPairProd: cross sections from R. Kokoulin
MuPairProd: theoretical cross sections
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1e+03 PeV in 50 bins.
#
# Macro file for the initialization phase of "exampleN02.cc"
# Macro file for the initialization phase of "exampleN03.cc"
#
# Sets some default verbose
# and initializes the graphic.
@@ -122,52 +121,64 @@ MuPairProd: cross sections from R. Kokoulin
#
/run/particle/dumpCutValues
============= The cut Energy ==============================
gamma e- mu- proton neutron
Cut in range [mm] 2 2 2 2 2
Cut in energy [KeV]
Aluminium 9.6 1e+03 7.4e+03 1.9e+04 0.99
liquidArgon 8.6 5.6e+02 4.8e+03 1.2e+04 0.99
Copper 36 2.7e+03 1.3e+04 3.4e+04 0.99
Lead 1.2e+02 2.6e+03 1.3e+04 3.2e+04 0.99
Water 3.9 5.7e+02 5e+03 1.3e+04 0.99
Scintillator 3.1 5.8e+02 5e+03 1.3e+04 0.99
quartz 7.6 9.1e+02 6.9e+03 1.8e+04 0.99
Air 0.99 0.99 82 1.7e+02 0.99
Aerogel 2.3 1.8e+02 1.9e+03 4.8e+03 0.99
CarbonicGas 0.99 54 6e+02 1.3e+03 0.99
WaterSteam 0.99 0.99 30 45 0.99
Galactic 0.99 0.99 0.99 0.99 0.99
Beam 0.99 0.99 0.99 0.99 0.99
gamma e- mu- proton neutron
Cut in range 2 mm 2 mm 2 mm 2 mm 2 mm
Cut in energy
Aluminium 9.56 keV 1.03 MeV 7.44 MeV 19.4 MeV 990 eV
liquidArgon 8.59 keV 561 keV 4.78 MeV 12.3 MeV 990 eV
Copper 35.7 keV 2.68 MeV 13.3 MeV 34.3 MeV 990 eV
Lead 121 keV 2.61 MeV 12.6 MeV 31.8 MeV 990 eV
Water 3.89 keV 568 keV 4.96 MeV 13.1 MeV 990 eV
Scintillator 3.07 keV 575 keV 5.02 MeV 13.4 MeV 990 eV
quartz 7.59 keV 907 keV 6.91 MeV 18.1 MeV 990 eV
Air 990 eV 990 eV 82.2 keV 174 keV 990 eV
Aerogel 2.32 keV 181 keV 1.9 MeV 4.84 MeV 990 eV
CarbonicGas 990 eV 54.1 keV 597 keV 1.34 MeV 990 eV
WaterSteam 990 eV 990 eV 29.6 keV 45 keV 990 eV
Galactic 990 eV 990 eV 990 eV 990 eV 990 eV
Beam 990 eV 990 eV 990 eV 990 eV 990 eV
===================================================
#
# Create empty scene ("world" is default)
/vis/scene/create
#
# Add volume to scene
/vis/scene/add/volume
#
# Create a scene handler for a specific graphics system
# Edit the next line(s) to choose another graphic system
#
#/vis~/create_view/new_graphics_system DAWNFILE
/vis~/create_view/new_graphics_system OGLIX
/vis~/draw/current
/vis~/show/view
#/vis/sceneHandler/create DAWNFILE
/vis/sceneHandler/create OGLIX
#
# Create a viewer
/vis/viewer/create
#
# Draw scene
/vis/scene/notifyHandlers
#
# for drawing the tracks
# if too many tracks cause core dump => storeTrajectory 0
/tracking/storeTrajectory 1
#/vis/scene/include/trajectories
Idle> /run/particle/dumpCutValues
============= The cut Energy ==============================
gamma e- mu- proton neutron
Cut in range [mm] 2 2 2 2 2
Cut in energy [KeV]
Aluminium 9.6 1e+03 7.4e+03 1.9e+04 0.99
liquidArgon 8.6 5.6e+02 4.8e+03 1.2e+04 0.99
Copper 36 2.7e+03 1.3e+04 3.4e+04 0.99
Lead 1.2e+02 2.6e+03 1.3e+04 3.2e+04 0.99
Water 3.9 5.7e+02 5e+03 1.3e+04 0.99
Scintillator 3.1 5.8e+02 5e+03 1.3e+04 0.99
quartz 7.6 9.1e+02 6.9e+03 1.8e+04 0.99
Air 0.99 0.99 82 1.7e+02 0.99
Aerogel 2.3 1.8e+02 1.9e+03 4.8e+03 0.99
CarbonicGas 0.99 54 6e+02 1.3e+03 0.99
WaterSteam 0.99 0.99 30 45 0.99
Galactic 0.99 0.99 0.99 0.99 0.99
Beam 0.99 0.99 0.99 0.99 0.99
gamma e- mu- proton neutron
Cut in range 2 mm 2 mm 2 mm 2 mm 2 mm
Cut in energy
Aluminium 9.56 keV 1.03 MeV 7.44 MeV 19.4 MeV 990 eV
liquidArgon 8.59 keV 561 keV 4.78 MeV 12.3 MeV 990 eV
Copper 35.7 keV 2.68 MeV 13.3 MeV 34.3 MeV 990 eV
Lead 121 keV 2.61 MeV 12.6 MeV 31.8 MeV 990 eV
Water 3.89 keV 568 keV 4.96 MeV 13.1 MeV 990 eV
Scintillator 3.07 keV 575 keV 5.02 MeV 13.4 MeV 990 eV
quartz 7.59 keV 907 keV 6.91 MeV 18.1 MeV 990 eV
Air 990 eV 990 eV 82.2 keV 174 keV 990 eV
Aerogel 2.32 keV 181 keV 1.9 MeV 4.84 MeV 990 eV
CarbonicGas 990 eV 54.1 keV 597 keV 1.34 MeV 990 eV
WaterSteam 990 eV 990 eV 29.6 keV 45 keV 990 eV
Galactic 990 eV 990 eV 990 eV 990 eV 990 eV
Beam 990 eV 990 eV 990 eV 990 eV 990 eV
===================================================
Idle> # e+ 300MeV
Idle> /gun/particle e+
@@ -176,42 +187,54 @@ Idle> /run/beamOn 1
### Run 0 start.
Start closing geometry.
Start Run processing.
---> Event: 0
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 9876, 54321
----------------------------------------
>>> Event 0
10 hits are stored in ExN03CalorHitsCollection.
Absorber: total energy: 2.9e+02 MeV total track length: 16 cm
Gap: total energy: 10 MeV total track length: 4.4 cm
185 trajectories stored in this event.
Absorber: total energy: 2.8e+02 MeV total track length: 14 cm
Gap: total energy: 12 MeV total track length: 5.9 cm
195 trajectories stored in this event.
Run terminated.
Run Summary
Number of events processed : 1
User=0.12s Real=0.13s Sys=0.033s
User=0.28s Real=0.33s Sys=0.03s
Idle> #
Idle> # list the existing physics processes
Idle> /process/list
Transportation, msc, hIoni, eIoni
eBrem, annihil, MuIoni, MuBrems
MuPairProd, phot, compt, conv
Transportation, msc, hIoni, MuIoni
MuBrems, MuPairProd, eIoni, eBrem
annihil, phot, compt, conv
Decay
Idle> #
Idle> # switch off MultipleScattering
Idle> /process/inactivate MultipleScattering
illegal process (or type) name
Idle> /process/inactivate msc
Idle> /run/beamOn 1
### Run 1 start.
Start Run processing.
---> Event: 0
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 2089514513, 1200712414
----------------------------------------
>>> Event 0
9 hits are stored in ExN03CalorHitsCollection.
Absorber: total energy: 2.8e+02 MeV total track length: 16 cm
Gap: total energy: 12 MeV total track length: 5.8 cm
187 trajectories stored in this event.
Absorber: total energy: 2.8e+02 MeV total track length: 15 cm
Gap: total energy: 17 MeV total track length: 7.6 cm
195 trajectories stored in this event.
Run terminated.
Run Summary
Number of events processed : 1
User=0.12s Real=0.13s Sys=0.017s
User=0.25s Real=0.28s Sys=0.02s
Idle> #
Idle> # switch on MultipleScattering
Idle> /process/activate MultipleScattering
illegal process (or type) name
Idle> /process/activate msc
Idle> #
Idle> # change detector parameter
Idle> /calor/setAbsMat Aluminium
@@ -227,22 +250,28 @@ Idle> /calor/setSizeYZ 1.5 m
Idle> /calor/update
The calorimeter is made of 30 layers of: [ 20mm of Aluminium + 50mm of Aerogel ]
Idle> /vis~/clear/scene
Idle> /gun/particle gamma
Idle> /gun/energy 500 MeV
Idle> /run/beamOn 1
### Run 2 start.
Start closing geometry.
Start Run processing.
---> Event: 0
--------- Ranecu engine status ---------
Initial seed (index) = 0
Current couple of seeds = 900551276, 1952365952
----------------------------------------
>>> Event 0
30 hits are stored in ExN03CalorHitsCollection.
Absorber: total energy: 3.8e+02 MeV total track length: 86 cm
Gap: total energy: 86 MeV total track length: 2.4 m
212 trajectories stored in this event.
21 hits are stored in ExN03CalorHitsCollection.
Absorber: total energy: 4.2e+02 MeV total track length: 98 cm
Gap: total energy: 68 MeV total track length: 1.9 m
176 trajectories stored in this event.
Run terminated.
Run Summary
Number of events processed : 1
User=0.32s Real=0.35s Sys=0.033s
User=0.62s Real=0.71s Sys=0.09s
Idle> G4 kernel has come to Quit state.
Deletion of G4 kernel class start.
UserDetectorConstruction deleted.
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03CalorHit.hh,v 1.1 1998/10/09 14:54:46 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03CalorHit.hh,v 1.1 1999/01/07 16:05:53 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: ExN03CalorimeterSD.hh,v 1.1 1998/10/09 14:54:46 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03CalorimeterSD.hh,v 1.1 1999/01/07 16:05:54 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: ExN03DetectorConstruction.hh,v 2.3 1998/10/09 15:25:28 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03DetectorConstruction.hh,v 1.1 1999/01/07 16:05:54 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: ExN03DetectorMessenger.hh,v 2.3 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03DetectorMessenger.hh,v 1.1 1999/01/07 16:05:54 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: ExN03EventAction.hh,v 2.3 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03EventAction.hh,v 1.3 1999/04/16 11:55:03 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -27,17 +27,19 @@ class ExN03EventAction : public G4UserEventAction
{
public:
ExN03EventAction();
~ExN03EventAction();
virtual ~ExN03EventAction();
public:
void BeginOfEventAction();
void EndOfEventAction();
virtual void BeginOfEventAction(const G4Event*);
virtual void EndOfEventAction(const G4Event*);
void SetDrawFlag(G4String val) {drawFlag = val;};
void SetDrawFlag (G4String val) {drawFlag = val;};
void SetPrintModulo(G4int val) {printModulo = val;};
private:
G4int calorimeterCollID; // Hits collection ID
G4String drawFlag; // control the drawing of event
G4int calorimeterCollID;
G4String drawFlag;
G4int printModulo;
ExN03EventActionMessenger* eventMessenger;
};
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03EventActionMessenger.hh,v 1.1 1998/10/09 14:54:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03EventActionMessenger.hh,v 1.2 1999/03/10 16:15:37 maire Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -21,6 +21,7 @@
class ExN03EventAction;
class G4UIcmdWithAString;
class G4UIcmdWithAnInteger;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -35,6 +36,7 @@ class ExN03EventActionMessenger: public G4UImessenger
private:
ExN03EventAction* eventAction;
G4UIcmdWithAString* DrawCmd;
G4UIcmdWithAnInteger* PrintCmd;
};
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03PhysicsList.hh,v 2.4 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PhysicsList.hh,v 1.2 1999/04/16 11:55:04 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -29,10 +29,19 @@ class ExN03PhysicsList: public G4VUserPhysicsList
protected:
// Construct particle and physics
void ConstructParticle();
void ConstructProcess();
virtual void ConstructParticle();
virtual void ConstructProcess();
void SetCuts(G4double);
virtual void SetCuts();
public:
// Set/Get cut values
void SetCutForGamma(G4double);
void SetCutForElectron(G4double);
void SetCutForProton(G4double);
G4double GetCutForGamma() const;
G4double GetCutForElectron() const;
G4double GetCutForProton() const;
protected:
// these methods Construct particles
@@ -45,6 +54,12 @@ class ExN03PhysicsList: public G4VUserPhysicsList
// these methods Construct physics processes and register them
void ConstructGeneral();
void ConstructEM();
private:
G4double cutForGamma;
G4double cutForElectron;
G4double cutForProton;
};
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03PrimaryGeneratorAction.hh,v 2.3 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PrimaryGeneratorAction.hh,v 1.1 1999/01/07 16:05:55 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: ExN03PrimaryGeneratorMessenger.hh,v 2.3 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PrimaryGeneratorMessenger.hh,v 1.1 1999/01/07 16:05:55 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: ExN03RunAction.hh,v 2.3 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03RunAction.hh,v 1.3 1999/04/22 21:45:15 asaim Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -30,11 +30,9 @@ class ExN03RunAction : public G4UserRunAction
~ExN03RunAction();
public:
void BeginOfRunAction(G4Run*);
void EndOfRunAction(G4Run*);
void BeginOfRunAction(const G4Run*);
void EndOfRunAction(const G4Run*);
private:
G4int runIDcounter;
};
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03SteppingAction.hh,v 2.2 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03SteppingAction.hh,v 1.2 1999/04/16 11:55:06 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -24,9 +24,9 @@ class ExN03SteppingAction : public G4UserSteppingAction
{
public:
ExN03SteppingAction();
~ExN03SteppingAction();
virtual ~ExN03SteppingAction();
void UserSteppingAction();
virtual void UserSteppingAction(const G4Step*);
};
#endif
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03VisManager.hh,v 2.6 1998/10/09 15:48:01 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03VisManager.hh,v 1.2 1999/06/24 07:48:48 stesting Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -31,6 +31,8 @@
#ifndef ExN03VisManager_h
#define ExN03VisManager_h 1
#ifdef G4VIS_USE
#include "G4VisManager.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -48,3 +50,5 @@ private:
};
#endif
#endif
+16 -4
View File
@@ -10,13 +10,25 @@
#
/run/particle/dumpCutValues
#
# Create empty scene ("world" is default)
/vis/scene/create
#
# Add volume to scene
/vis/scene/add/volume
#
# Create a scene handler for a specific graphics system
# Edit the next line(s) to choose another graphic system
#
#/vis~/create_view/new_graphics_system DAWNFILE
/vis~/create_view/new_graphics_system OGLIX
/vis~/draw/current
/vis~/show/view
#/vis/sceneHandler/create DAWNFILE
/vis/sceneHandler/create OGLIXm
#
# Create a viewer
/vis/viewer/create
#
# Draw scene
/vis/scene/notifyHandlers
#
# for drawing the tracks
# if too many tracks cause core dump => storeTrajectory 0
/tracking/storeTrajectory 1
#/vis/scene/include/trajectories
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: run1.mac,v 2.2 1998/10/30 12:30:16 maire Exp $
# $Id: run1.mac,v 1.1 1999/01/07 16:05:53 gunter Exp $
#
# Macro file for "exampleN03.cc"
#
+2 -1
View File
@@ -1,4 +1,4 @@
# $Id: run2.mac,v 2.2 1998/10/30 12:30:17 maire Exp $
# $Id: run2.mac,v 1.2 1999/03/10 16:15:36 maire Exp $
#
# Macro file of "exampleN03.cc"
#
@@ -14,6 +14,7 @@
#
# shoot randomly 20 events
#
/event/printModulo 5
/gun/random on
/run/beamOn 20
#
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03CalorHit.cc,v 1.1 1998/10/09 14:55:09 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03CalorHit.cc,v 1.1 1999/01/07 16:05:56 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: ExN03CalorimeterSD.cc,v 1.1 1998/10/09 14:55:09 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03CalorimeterSD.cc,v 1.2 1999/01/28 17:11:24 maire Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -69,7 +69,8 @@ G4bool ExN03CalorimeterSD::ProcessHits(G4Step* aStep,G4TouchableHistory* ROhist)
G4VPhysicalVolume* physVol = theTouchable->GetVolume();
//theTouchable->MoveUpHistory();
G4int LayerNumber = theTouchable->GetReplicaNumber(1);
G4int LayerNumber = 0;
if (Detector->GetNbOfLayers()>1) LayerNumber=theTouchable->GetReplicaNumber(1);
if (HitID[LayerNumber]==-1)
{
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03DetectorConstruction.cc,v 2.5 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03DetectorConstruction.cc,v 1.2 1999/02/03 16:07:23 maire Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -50,6 +50,7 @@ ExN03DetectorConstruction::ExN03DetectorConstruction()
GapThickness = 5.*mm;
NbOfLayers = 10;
CalorSizeYZ = 10.*cm;
ComputeCalorParameters();
// create commands for interactive definition of the calorimeter
detectorMessenger = new ExN03DetectorMessenger(this);
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03DetectorMessenger.cc,v 2.3 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03DetectorMessenger.cc,v 1.1 1999/01/07 16:05:56 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
+20 -11
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03EventAction.cc,v 2.5 1998/10/30 14:41:00 maire Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03EventAction.cc,v 1.3 1999/04/16 11:55:08 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -31,11 +31,13 @@
#include "G4UImanager.hh"
#include "G4ios.hh"
#include "G4UnitsTable.hh"
#include "Randomize.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
ExN03EventAction::ExN03EventAction()
:calorimeterCollID(-1),drawFlag("all"),eventMessenger(NULL)
:calorimeterCollID(-1),drawFlag("all"),eventMessenger(NULL),
printModulo(10000)
{
eventMessenger = new ExN03EventActionMessenger(this);
}
@@ -49,20 +51,27 @@ ExN03EventAction::~ExN03EventAction()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03EventAction::BeginOfEventAction()
{ if(calorimeterCollID==-1)
{
void ExN03EventAction::BeginOfEventAction(const G4Event* evt)
{
G4int evtNb = evt->GetEventID();
if (evtNb%printModulo == 0)
{
G4cout << "\n---> Event: " << evtNb << endl;
HepRandom::showEngineStatus();
}
if (calorimeterCollID==-1)
{
G4SDManager * SDman = G4SDManager::GetSDMpointer();
calorimeterCollID = SDman->GetCollectionID("CalCollection");
}
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03EventAction::EndOfEventAction()
void ExN03EventAction::EndOfEventAction(const G4Event* evt)
{
const G4Event* evt = fpEventManager->GetConstCurrentEvent();
G4cout << ">>> Event " << evt->GetEventID() << endl;
G4HCofThisEvent* HCE = evt->GetHCofThisEvent();
@@ -102,7 +111,7 @@ void ExN03EventAction::EndOfEventAction()
if(G4VVisManager::GetConcreteInstance())
{
for(G4int i=0; i<n_trajectories; i++)
{ G4Trajectory* trj = (*(evt->GetTrajectoryContainer()))[i];
{ G4Trajectory* trj = (G4Trajectory *)((*(evt->GetTrajectoryContainer()))[i]);
if (drawFlag == "all") trj->DrawTrajectory(50);
else if ((drawFlag == "charged")&&(trj->GetCharge() != 0.))
trj->DrawTrajectory(50);
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03EventActionMessenger.cc,v 1.1 1998/10/09 14:55:10 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03EventActionMessenger.cc,v 1.2 1999/03/10 16:15:38 maire Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -17,6 +17,7 @@
#include "ExN03EventAction.hh"
#include "G4UIcmdWithAString.hh"
#include "G4UIcmdWithAnInteger.hh"
#include "globals.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -31,6 +32,12 @@ ExN03EventActionMessenger::ExN03EventActionMessenger(ExN03EventAction* EvAct)
DrawCmd->SetDefaultValue("charged");
DrawCmd->SetCandidates("none charged all");
DrawCmd->AvailableForStates(Idle);
PrintCmd = new G4UIcmdWithAnInteger("/event/printModulo",this);
PrintCmd->SetGuidance("Print events modulo n");
PrintCmd->SetParameterName("EventNb",false);
PrintCmd->SetRange("EventNb>0");
PrintCmd->AvailableForStates(Idle);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -38,6 +45,7 @@ ExN03EventActionMessenger::ExN03EventActionMessenger(ExN03EventAction* EvAct)
ExN03EventActionMessenger::~ExN03EventActionMessenger()
{
delete DrawCmd;
delete PrintCmd;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -46,7 +54,9 @@ void ExN03EventActionMessenger::SetNewValue(G4UIcommand * command,G4String newVa
{
if(command == DrawCmd)
{eventAction->SetDrawFlag(newValue);}
if(command == PrintCmd)
{eventAction->SetPrintModulo(PrintCmd->GetNewIntValue(newValue));}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+63 -14
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03PhysicsList.cc,v 2.5 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PhysicsList.cc,v 1.2 1999/04/16 11:55:09 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -29,7 +29,11 @@
ExN03PhysicsList::ExN03PhysicsList(): G4VUserPhysicsList()
{
defaultCutValue = 2.0*mm;
SetVerboseLevel(1);
cutForGamma = defaultCutValue;
cutForElectron = defaultCutValue;
cutForProton = defaultCutValue;
SetVerboseLevel(1);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -209,29 +213,74 @@ void ExN03PhysicsList::ConstructGeneral()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03PhysicsList::SetCuts(G4double cut)
void ExN03PhysicsList::SetCuts()
{
if (verboseLevel >0){
if (verboseLevel >1){
G4cout << "ExN03PhysicsList::SetCuts:";
G4cout << "CutLength : " << cut/mm << " (mm)" << endl;
}
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(cut, "gamma");
SetCutValue(cut, "e-");
SetCutValue(cut, "e+");
SetCutValue(cutForGamma, "gamma");
SetCutValue(cutForElectron, "e-");
SetCutValue(cutForElectron, "e+");
// set cut values for proton and anti_proton before all other hadrons
// because some processes for hadrons need cut values for proton/anti_proton
SetCutValue(cut, "proton");
SetCutValue(cut, "anti_proton");
SetCutValueForOthers(cut);
SetCutValue(cutForProton, "proton");
SetCutValue(cutForProton, "anti_proton");
SetCutValueForOthers(defaultCutValue);
if (verboseLevel>1) DumpCutValuesTable();
if (verboseLevel>1) {
DumpCutValuesTable();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03PhysicsList::SetCutForGamma(G4double cut)
{
ResetCuts();
cutForGamma = cut;
}
void ExN03PhysicsList::SetCutForElectron(G4double cut)
{
ResetCuts();
cutForElectron = cut;
}
void ExN03PhysicsList::SetCutForProton(G4double cut)
{
ResetCuts();
cutForProton = cut;
}
G4double ExN03PhysicsList::GetCutForGamma() const
{
return cutForGamma;
}
G4double ExN03PhysicsList::GetCutForElectron() const
{
return cutForElectron;
}
G4double ExN03PhysicsList::GetCutForProton() const
{
return cutForGamma;
}
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03PrimaryGeneratorAction.cc,v 2.3 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PrimaryGeneratorAction.cc,v 1.1 1999/01/07 16:05:57 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: ExN03PrimaryGeneratorMessenger.cc,v 2.3 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03PrimaryGeneratorMessenger.cc,v 1.1 1999/01/07 16:05:57 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
+9 -10
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03RunAction.cc,v 2.7 1998/10/30 14:41:01 maire Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03RunAction.cc,v 1.5 1999/04/22 21:45:24 asaim Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -24,7 +24,6 @@
ExN03RunAction::ExN03RunAction()
{
runIDcounter = 0;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -34,26 +33,26 @@ ExN03RunAction::~ExN03RunAction()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03RunAction::BeginOfRunAction(G4Run* aRun)
void ExN03RunAction::BeginOfRunAction(const G4Run* aRun)
{
aRun->SetRunID(runIDcounter++);
G4cout << "### Run " << aRun->GetRunID() << " start." << endl;
if (G4VVisManager::GetConcreteInstance())
{
G4UImanager* UI = G4UImanager::GetUIpointer();
UI->ApplyCommand("/vis~/clear/view");
UI->ApplyCommand("/vis~/draw/current");
UI->ApplyCommand("/vis/clear/view");
UI->ApplyCommand("/vis/draw/current");
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03RunAction::EndOfRunAction(G4Run* aRun)
void ExN03RunAction::EndOfRunAction(const G4Run* )
{
if (G4VVisManager::GetConcreteInstance())
G4UImanager::GetUIpointer()->ApplyCommand("/vis~/show/view");
G4UImanager::GetUIpointer()->ApplyCommand("/vis/show/view");
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03SteppingAction.cc,v 2.2 1998/10/09 15:53:49 japost Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03SteppingAction.cc,v 1.2 1999/04/16 11:55:11 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -27,9 +27,10 @@ ExN03SteppingAction::~ExN03SteppingAction()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void ExN03SteppingAction::UserSteppingAction()
void ExN03SteppingAction::UserSteppingAction(const G4Step*)
{ }
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN03VisManager.cc,v 2.9 1998/11/30 10:21:29 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN03VisManager.cc,v 1.1 1999/01/07 16:05:58 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// John Allison 24th January 1998.
+20 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.1 1998/07/02 15:26:54 gunter Exp $
# $Id: GNUmakefile,v 1.4 1999/07/06 18:15:43 johna Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
@@ -15,3 +15,22 @@ endif
all: lib bin
include $(G4INSTALL)/config/binmake.gmk
CXXFLAGS_WITHOUT_O := $(filter-out -O% , $(CXXFLAGS))
CXXFLAGS_WITHOUT_O := $(filter-out +O% , $(CXXFLAGS_WITHOUT_O))
ifeq ($(G4SYSTEM),HP-aCC)
COMPILER := $(shell aCC -V 2>&1)
ifeq ($(COMPILER), aCC: HP ANSI C++ B3910B A.01.15)
$(G4TMP)/$(G4SYSTEM)/$(name)/ExN04PhysicsList.o: src/ExN04PhysicsList.cc
$(CXX) $(CXXFLAGS_WITHOUT_O) $(CPPFLAGS) -c $(OUT_OBJ)$@ src/ExN04PhysicsList.cc
endif
endif
ifeq ($(G4SYSTEM),Linux-g++)
COMPILER := $(shell g++ -v 2>&1 | grep version | grep egcs)
ifeq ($(findstring 1.1,$(COMPILER)),1.1)
$(G4TMP)/$(G4SYSTEM)/$(name)/ExN04PhysicsList.o: src/ExN04PhysicsList.cc
$(CXX) $(CXXFLAGS_WITHOUT_O) $(CPPFLAGS) -c $(OUT_OBJ)$@ src/ExN04PhysicsList.cc
endif
endif
+14 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 2.4 1998/11/21 16:55:06 allison Exp $
$Id: History,v 1.4 1999/06/05 12:41:28 stesting Exp $
-------------------------------------------------------------------
=========================================================
@@ -15,6 +15,19 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
5th June 1999 John Allison
- GNUmakefile: Force non-optimised compliation of some files on HP with
aCC: HP ANSI C++ B3910B A.01.15.
23th April 1999 H.Kurashige
- remove ConstructLeptHad, AddParameterisation inExN04PhysicsList
16th April 1999 H.Kurashige
- modify ExN04RunAction ExN04StackingAction ExN04SteppingAction ExN04TrackingAction
- modify ExN04PhysicsList::SetCuts
- modify ExN04PhysicsList::ConstructParticle
21st November 1998 John Allison
- Made ExN04Field compatible with G4Field.
+41 -1
View File
@@ -1,4 +1,4 @@
$Id: README,v 2.0 1998/07/02 14:08:56 gunter Exp $
$Id: README,v 1.2 1999/05/31 09:16:40 asaim Exp $
-------------------------------------------------------------------
=========================================================
@@ -8,3 +8,43 @@ $Id: README,v 2.0 1998/07/02 14:08:56 gunter Exp $
ExampleN04
----------
ExampleN04 has a simplified collider detector geometry. This example
demonstrates the following features.
1. PYTHIA primary events.
ExN04PrimaryGeneratorAction has G4HEPEvtInterface as the generator.
G4HEPEvtInterface accesses to "pythia_event.data", which contains three
events of Higgs generation produced by PYTHIA. "pythia_main.f" is an
example FORTRAN code of PYTHIA for generating this event sample.
2. Readout geometry
ExN04DetectorConstruction defines a simplified collider detecor
geometry, tracker made of cylindrical tubes, calorimeter made of
cylindrical tubes, and muon trackers made of planes.
Cylindrical calorimeter is made of tubes of lead and scintirator
without cut in phi nor z direction. Energy deposition in scintirator
is accumurated by ExN04CalorimeterSD sensitive detector, which has
a readout geometry to find the phi-z cell.
3. Full set of "ordinary" physics processes
ExN04PhysicsList defines almost all of leptons and hadrons which
Geant4 has dedicated classes for. Also almost all physics processes
Geant4 has are defined.
4. Event filtering by the stacking mechanism.
Higgs events in "pythia_event.data" have two lepton pairs produced
by the Higgs decay via Z0. At the first stage of each event, only the
primary muons are tracked without tracking secondaries. then the number
of hits on the muon trackers are examined. At the next stage, only
the primary charged particles are tracked only inside the barrel
tracking area and the isolation of the primary muons are examined.
At the third stage, all particles in the RoI (Region of Interest) along
the isolated muons are tracked. All these examinations are applied in
ExN04StackingAction.
+79 -47
View File
@@ -1,100 +1,132 @@
****************************************************************
****************************************************************
** **
** G4MuPairProduction : **
** cross section/energy loss is calculated using **
** the accurate cross section formula of R.Kokoulin, **
** ( building the tables takes a lot of time, **
** PLEASE BE PATIENT ! ) **
** sampling of the energy of the pair is generated **
** according to the sampling tables. **
** **
****************************************************************
****************************************************************
ionIoni: Knock-on electron cross sections .
MeanFreePath is computed at tracking time.
delta ray energy sampled from differential Xsection.
****************************************************************
****************************************************************
** **
** G4MuPairProduction : **
** cross section/energy loss is calculated using **
** the accurate cross section formula of R.Kokoulin, **
** ( building the tables takes a lot of time, **
** PLEASE BE PATIENT ! ) **
** sampling of the energy of the pair is generated **
** according to the sampling tables. **
** **
****************************************************************
****************************************************************
ExN04PhysicsList::SetCuts:CutLength : 1 (mm)
conv: Total cross sections from a parametrisation. Good description from 1.5 MeV to 100 GeV for all Z.
e+e- energies according Bethe-Heitler
PhysicsTables from 1.022 MeV to 100 GeV in 100 bins.
compt: Total cross sections from a parametrisation. Good description from 10 KeV to (100/Z) GeV.
Scattered gamma energy according Klein-Nishina.
PhysicsTables from 10 keV to 100 GeV in 100 bins.
phot: Total cross sections from a parametrisation. Good description from 10 KeV to 50 MeV for all ZSandia crossSection below 50 KeV
PhysicsTables from 50 keV to 50 MeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to 100 GeV.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
eBrem: Total cross sections from a parametrisation. Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
annihil: Total cross section from Heilter formula (annihilation into 2 photons).
gamma energies sampled according Heitler
PhysicsTables from 10 keV to 10 TeV in 100 bins.
hIoni: Knock-on electron cross sections .
Good description above the mean excitation energy.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuIoni: knock-on electron cross sections .
Good description above the mean excitation energy.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 1000 PeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuBrems: theoretical cross section
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 100 bins.
MuPairProd: theoretical cross sections
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 50 bins.
Idle> Idle> Idle> Idle> Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 0
5 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.277324 (GeV)
Total energy deposition in calorimeter : 0.582536 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 1
5 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.598772 (GeV)
Total energy deposition in calorimeter : 0.328112 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 2
24 hits are stored in ExN04TrackerHitsCollection.
6 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.768435 (GeV)
5 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.317862 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 3
5 hits are stored in ExN04TrackerHitsCollection.
15 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.260963 (GeV)
Total energy deposition in calorimeter : 0.695135 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 4
5 hits are stored in ExN04TrackerHitsCollection.
16 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.362545 (GeV)
Total energy deposition in calorimeter : 0.254739 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 5
32 hits are stored in ExN04TrackerHitsCollection.
10 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.333041 (GeV)
Total energy deposition in calorimeter : 0.399896 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 6
5 hits are stored in ExN04TrackerHitsCollection.
6 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.327284 (GeV)
23 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.258006 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 7
20 hits are stored in ExN04TrackerHitsCollection.
19 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.464026 (GeV)
Total energy deposition in calorimeter : 0.263667 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 8
15 hits are stored in ExN04TrackerHitsCollection.
27 hits are stored in ExN04TrackerHitsCollection.
4 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.322904 (GeV)
Total energy deposition in calorimeter : 0.2954 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 9
8 hits are stored in ExN04TrackerHitsCollection.
11 hits are stored in ExN04TrackerHitsCollection.
5 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.400399 (GeV)
Total energy deposition in calorimeter : 0.279685 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Idle>
+2 -2
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: exampleN04.cc,v 2.7 1998/12/08 16:37:31 allison Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: exampleN04.cc,v 1.1 1999/01/07 16:05:59 gunter Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// --------------------------------------------------------------
+24 -22
View File
@@ -1,26 +1,29 @@
ExN04PhysicsList::SetCuts:CutLength : 1 (mm)
conv: Total cross sections from a parametrisation(L.Urban). Good description from 1.5 MeV to 100 GeV for all Z.
ionIoni: Knock-on electron cross sections .
MeanFreePath is computed at tracking time.
delta ray energy sampled from differential Xsection.
conv: Total cross sections from a parametrisation. Good description from 1.5 MeV to 100 GeV for all Z.
e+e- energies according Bethe-Heitler
PhysicsTables from 1.022 MeV to 100 GeV in 100 bins.
compt: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to (100/Z) GeV.
compt: Total cross sections from a parametrisation. Good description from 10 KeV to (100/Z) GeV.
Scattered gamma energy according Klein-Nishina.
PhysicsTables from 10 keV to 100 GeV in 100 bins.
phot: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to 50 MeV for all Z
PhysicsTables from 10 keV to 50 MeV in 100 bins.
phot: Total cross sections from a parametrisation. Good description from 10 KeV to 50 MeV for all ZSandia crossSection below 50 KeV
PhysicsTables from 50 keV to 50 MeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to 100 GeV.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
eBrem: Total cross sections from a parametrisation(L.Urban). Good description from 1 KeV to 100 GeV.
eBrem: Total cross sections from a parametrisation. Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
@@ -37,7 +40,7 @@ hIoni: Knock-on electron cross sections .
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuIoni: knock-on electron cross sections .
Good description above the mean excitation energy.
@@ -47,23 +50,22 @@ MuIoni: knock-on electron cross sections .
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuBrems: cross sections from R. Kokoulin
MuBrems: theoretical cross section
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 100 bins.
MuPairProd: cross sections from R. Kokoulin
MuPairProd: theoretical cross sections
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 50 bins.
Idle> #
Idle> Idle> Idle> Idle> Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 0 isolated muon found.
++++++++ event aborted
Stage 1->2 : 1 isolated muon found.
>>> Event 0
437 hits are stored in ExN04TrackerHitsCollection.
2 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.00794845 (GeV)
140 hits are stored in ExN04TrackerHitsCollection.
53 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0.749993 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 0 hits found in the muon chamber.
++++++++ event aborted
@@ -72,12 +74,12 @@ Stage 0->1 : 0 hits found in the muon chamber.
0 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0 (GeV)
0 hits are stored in ExN04MuonHitsCollection.
Stage 0->1 : 0 hits found in the muon chamber.
++++++++ event aborted
Stage 0->1 : 1 hits found in the muon chamber.
Stage 1->2 : 1 isolated muon found.
>>> Event 2
0 hits are stored in ExN04TrackerHitsCollection.
0 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 0 (GeV)
0 hits are stored in ExN04MuonHitsCollection.
92 hits are stored in ExN04TrackerHitsCollection.
43 hits are stored in ExN04CalorimeterHitsCollection.
Total energy deposition in calorimeter : 1.02574 (GeV)
1 hits are stored in ExN04MuonHitsCollection.
Idle> #
Idle>
@@ -12,8 +12,8 @@ class ExN04EventAction : public G4UserEventAction
~ExN04EventAction();
public:
void BeginOfEventAction();
void EndOfEventAction();
void BeginOfEventAction(const G4Event*);
void EndOfEventAction(const G4Event*);
private:
G4int trackerCollID;
@@ -16,15 +16,21 @@ protected:
virtual void ConstructProcess();
//
virtual void SetCuts(G4double aCut);
virtual void SetCuts();
protected:
// these methods Construct physics processes and register them
void AddParameterisation();
virtual void ConstructGeneral();
virtual void ConstructEM();
virtual void ConstructHad();
virtual void ConstructLeptHad();
// these methods Construct all particles in each category
virtual void ConstructAllBosons();
virtual void ConstructAllLeptons();
virtual void ConstructAllMesons();
virtual void ConstructAllBarions();
virtual void ConstructAllIons();
virtual void ConstructAllShortLiveds();
};
#endif
@@ -17,15 +17,15 @@ class ExN04StackingAction : public G4UserStackingAction
{
public:
ExN04StackingAction();
~ExN04StackingAction();
virtual ~ExN04StackingAction();
public:
G4ClassificationOfNewTrack ClassifyNewTrack(G4Track *const aTrack);
void NewStage();
void PrepareNewEvent();
virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack);
virtual void NewStage();
virtual void PrepareNewEvent();
private:
G4bool InsideRoI(G4Track *const aTrack,G4double ang);
G4bool InsideRoI(const G4Track * aTrack,G4double ang);
G4VHitsCollection* GetCollection(G4String colName);
ExN04TrackerHitsCollection* trkHits;
@@ -9,9 +9,9 @@ class ExN04SteppingAction : public G4UserSteppingAction
{
public:
ExN04SteppingAction();
~ExN04SteppingAction();
virtual ~ExN04SteppingAction();
virtual void UserSteppingAction();
virtual void UserSteppingAction(const G4Step*);
};
#endif
@@ -9,9 +9,9 @@ class ExN04TrackingAction : public G4UserTrackingAction {
public:
ExN04TrackingAction(){};
~ExN04TrackingAction(){};
virtual ~ExN04TrackingAction(){};
void PreUserTrackingAction();
virtual void PreUserTrackingAction(const G4Track*);
};
+2 -4
View File
@@ -26,7 +26,7 @@ ExN04EventAction::ExN04EventAction()
ExN04EventAction::~ExN04EventAction()
{;}
void ExN04EventAction::BeginOfEventAction()
void ExN04EventAction::BeginOfEventAction(const G4Event*)
{
G4SDManager * SDman = G4SDManager::GetSDMpointer();
if(trackerCollID<0||calorimeterCollID<0||muonCollID<0)
@@ -43,10 +43,8 @@ void ExN04EventAction::BeginOfEventAction()
}
}
void ExN04EventAction::EndOfEventAction()
void ExN04EventAction::EndOfEventAction(const G4Event* evt)
{
const G4Event* evt = fpEventManager->GetConstCurrentEvent();
G4cout << ">>> Event " << evt->GetEventID() << endl;
if(trackerCollID<0||calorimeterCollID<0||muonCollID<0) return;
+63 -40
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN04PhysicsList.cc,v 1.12 1998/12/14 21:17:58 stesting Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN04PhysicsList.cc,v 1.5 1999/06/17 04:18:47 kurasige Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
@@ -19,6 +19,12 @@
#include "G4ProcessVector.hh"
#include "G4ParticleTypes.hh"
#include "G4ParticleTable.hh"
#include "G4BosonConstructor.hh"
#include "G4LeptonConstructor.hh"
#include "G4MesonConstructor.hh"
#include "G4BarionConstructor.hh"
#include "G4IonConstructor.hh"
#include "G4ShortLivedConstructor.hh"
#include "G4Material.hh"
#include "G4MaterialTable.hh"
#include "G4ios.hh"
@@ -29,6 +35,9 @@
ExN04PhysicsList::ExN04PhysicsList(): G4VUserPhysicsList()
{
// default cut value (1.0mm)
defaultCutValue = 1.0*mm;
SetVerboseLevel(1);
}
@@ -45,15 +54,19 @@ void ExN04PhysicsList::ConstructParticle()
// created in the program.
// create all particles
ConstructAllParticles();
ConstructAllBosons();
ConstructAllLeptons();
ConstructAllMesons();
ConstructAllBarions();
ConstructAllIons();
ConstructAllShortLiveds();
}
void ExN04PhysicsList::ConstructProcess()
{
AddTransportation();
AddParameterisation();
ConstructEM();
ConstructLeptHad();
ConstructHad();
ConstructGeneral();
}
@@ -610,9 +623,6 @@ void ExN04PhysicsList::ConstructHad()
}
void ExN04PhysicsList::ConstructLeptHad()
{;}
#include "G4Decay.hh"
void ExN04PhysicsList::ConstructGeneral()
{
@@ -630,40 +640,53 @@ void ExN04PhysicsList::ConstructGeneral()
}
}
}
void ExN04PhysicsList::AddParameterisation()
void ExN04PhysicsList::SetCuts()
{
G4FastSimulationManagerProcess*
theFastSimulationManagerProcess =
new G4FastSimulationManagerProcess();
theParticleIterator->reset();
while( (*theParticleIterator)() ){
G4ParticleDefinition* particle = theParticleIterator->value();
G4ProcessManager* pmanager = particle->GetProcessManager();
pmanager->AddDiscreteProcess(theFastSimulationManagerProcess);
}
// " G4VUserPhysicsList::SetCutsWithDefault" method sets
// the default cut value for all particle types
SetCutsWithDefault();
}
void ExN04PhysicsList::SetCuts(G4double cut)
void ExN04PhysicsList::ConstructAllBosons()
{
if (verboseLevel >0){
G4cout << "ExN04PhysicsList::SetCuts:";
G4cout << "CutLength : " << cut/mm << " (mm)" << endl;
}
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(cut, "gamma");
SetCutValue(cut, "e-");
SetCutValue(cut, "e+");
// set cut values for proton and anti_proton before all other hadrons
// because some processes for hadrons need cut values for proton/anti_proton
SetCutValue(cut, "proton");
SetCutValue(cut, "anti_proton");
SetCutValueForOthers(cut);
if (verboseLevel>1) {
DumpCutValuesTable();
}
// Construct all bosons
G4BosonConstructor pConstructor;
pConstructor.ConstructParticle();
}
void ExN04PhysicsList::ConstructAllLeptons()
{
// Construct all leptons
G4LeptonConstructor pConstructor;
pConstructor.ConstructParticle();
}
void ExN04PhysicsList::ConstructAllMesons()
{
// Construct all mesons
G4MesonConstructor pConstructor;
pConstructor.ConstructParticle();
}
void ExN04PhysicsList::ConstructAllBarions()
{
// Construct all barions
G4BarionConstructor pConstructor;
pConstructor.ConstructParticle();
}
void ExN04PhysicsList::ConstructAllIons()
{
// Construct light ions
G4IonConstructor pConstructor;
pConstructor.ConstructParticle();
}
void ExN04PhysicsList::ConstructAllShortLiveds()
{
// Construct resonaces and quarks
G4ShortLivedConstructor pConstructor;
pConstructor.ConstructParticle();
}
@@ -24,7 +24,7 @@ ExN04StackingAction::~ExN04StackingAction()
{ delete theMessenger; }
G4ClassificationOfNewTrack
ExN04StackingAction::ClassifyNewTrack(G4Track *const aTrack)
ExN04StackingAction::ClassifyNewTrack(const G4Track * aTrack)
{
G4ClassificationOfNewTrack classification = fWaiting;
switch(stage)
@@ -65,7 +65,7 @@ ExN04StackingAction::ClassifyNewTrack(G4Track *const aTrack)
return classification;
}
G4bool ExN04StackingAction::InsideRoI(G4Track *const aTrack,G4double ang)
G4bool ExN04StackingAction::InsideRoI(const G4Track * aTrack,G4double ang)
{
if(!muonHits)
{ muonHits = (ExN04MuonHitsCollection*)GetCollection("muonCollection"); }
@@ -15,10 +15,9 @@ ExN04SteppingAction::ExN04SteppingAction()
ExN04SteppingAction::~ExN04SteppingAction()
{;}
void ExN04SteppingAction::UserSteppingAction()
void ExN04SteppingAction::UserSteppingAction(const G4Step * theStep)
{
G4SteppingManager * SM = GetOmnipotentSteppingManager();
G4Step * theStep = SM->GetStep();
G4SteppingManager * SM = fpSteppingManager;
G4Track * theTrack = theStep->GetTrack();
// check if it is alive
@@ -4,16 +4,13 @@
#include "G4TrackingManager.hh"
#include "G4Track.hh"
void ExN04TrackingAction::PreUserTrackingAction()
void ExN04TrackingAction::PreUserTrackingAction(const G4Track* aTrack)
{
G4TrackingManager* trackingManager = GetOmnipotentTrackingManager();
G4Track* aTrack = trackingManager->GetTrack();
// Create trajectory only for primaries
if(aTrack->GetParentID()==0)
{ trackingManager->SetStoreTrajectory(true); }
{ fpTrackingManager->SetStoreTrajectory(true); }
else
{ trackingManager->SetStoreTrajectory(false); }
{ fpTrackingManager->SetStoreTrajectory(false); }
}
+1 -1
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 2.1 1998/07/02 15:27:15 gunter Exp $
# $Id: GNUmakefile,v 1.1 1999/01/07 16:06:09 gunter Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+8 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 2.6 1998/12/11 19:13:41 verderi Exp $
$Id: History,v 1.3 1999/04/23 04:42:43 kurasige Exp $
-------------------------------------------------------------------
=========================================================
@@ -14,6 +14,13 @@ track of all tags.
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
23th April 1999 H.Kurashige
- Remove ConstructHad and ConstructLeptHad in ExN05PhysicsList
16th April 1999 H.Kurashige
- modify ExN05RunAction ExN05SteppingAction ExN05TrackingAction
- modify ExN05PhysicsList::SetCuts
11 December 1998 M. Verderi
- fix made in ExN05CalorimeterSD to allow several instanciations of this class.
The problem was a static variable (HCID) used in EndOfEventAction which made
+1 -1
View File
@@ -1,4 +1,4 @@
$Id: README,v 2.1 1998/12/10 04:12:53 verderi Exp $
$Id: README,v 1.1 1999/01/07 16:06:10 gunter Exp $
-------------------------------------------------------------------
=========================================================
+10 -10
View File
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: exampleN05.cc,v 2.7 1998/12/10 04:14:01 verderi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: exampleN05.cc,v 1.2 1999/05/28 12:55:34 stesting Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
//
// --------------------------------------------------------------
@@ -21,6 +21,14 @@
// ie "Fast Simulation".
//-------------------------------------------------------------------
//------------------------------
// Run, Generator etc.. actions:
//------------------------------
#include "ExN05RunAction.hh"
#include "ExN05PrimaryGeneratorAction.hh"
#include "ExN05EventAction.hh"
#include "ExN05SteppingAction.hh"
//---------------------------
// Parameterisation manager:
//---------------------------
@@ -31,14 +39,6 @@
//--------------------
#include "ExN05DetectorConstruction.hh"
//------------------------------
// Run, Generator etc.. actions:
//------------------------------
#include "ExN05RunAction.hh"
#include "ExN05PrimaryGeneratorAction.hh"
#include "ExN05EventAction.hh"
#include "ExN05SteppingAction.hh"
//----------------------------------
// ExN05PhysicsList makes use of the
// G4ParameterisationManagerProcess
+152 -153
View File
@@ -2,29 +2,28 @@ RunManager construction starting....
ExN05DetectorConstruction....
ExN05PhysicsList::SetCuts:CutLength : 1 (mm)
conv: Total cross sections from a parametrisation(L.Urban). Good description from 1.5 MeV to 100 GeV for all Z.
conv: Total cross sections from a parametrisation. Good description from 1.5 MeV to 100 GeV for all Z.
e+e- energies according Bethe-Heitler
PhysicsTables from 1.022 MeV to 100 GeV in 100 bins.
compt: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to (100/Z) GeV.
compt: Total cross sections from a parametrisation. Good description from 10 KeV to (100/Z) GeV.
Scattered gamma energy according Klein-Nishina.
PhysicsTables from 10 keV to 100 GeV in 100 bins.
phot: Total cross sections from a parametrisation(L.Urban). Good description from 10 KeV to 50 MeV for all Z
PhysicsTables from 10 keV to 50 MeV in 100 bins.
phot: Total cross sections from a parametrisation. Good description from 10 KeV to 50 MeV for all ZSandia crossSection below 50 KeV
PhysicsTables from 50 keV to 50 MeV in 100 bins.
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
eIoni: delta cross sections from Moller+Bhabha. Good description from 1 KeV to 100 GeV.
delta ray energy sampled from differential Xsection.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
eBrem: Total cross sections from a parametrisation(L.Urban). Good description from 1 KeV to 100 GeV.
eBrem: Total cross sections from a parametrisation. Good description from 1 KeV to 100 GeV.
log scale extrapolation above 100 GeV
Gamma energy sampled from a parametrised formula.
PhysicsTables from 1 keV to 100 TeV in 100 bins.
@@ -41,7 +40,7 @@ hIoni: Knock-on electron cross sections .
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuIoni: knock-on electron cross sections .
Good description above the mean excitation energy.
@@ -51,13 +50,13 @@ MuIoni: knock-on electron cross sections .
msc: Tables of transport mean free paths.
New model of MSC , computes the lateral
displacement of the particle , too.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
PhysicsTables from 100 eV to 100 TeV in 100 bins.
MuBrems: cross sections from R. Kokoulin
MuBrems: theoretical cross section
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 100 bins.
MuPairProd: cross sections from R. Kokoulin
MuPairProd: theoretical cross sections
Good description up to 1000 TeV.
PhysicsTables from 1 GeV to 1000 PeV in 50 bins.
Closing FastSimulation
@@ -68,64 +67,64 @@ Idle> #/tracking/verbose 1
Idle> #
Idle> Idle> ### Run 0 start.
>>> Event 0
11 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999942 (GeV)
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.989868 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 1
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999939 (GeV)
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999881 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 2
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999914 (GeV)
11 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999781 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 3
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.98995 (GeV)
Total energy deposition in EM calorimeter crytals : 0.999913 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.989944 (GeV)
6 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999914 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
number of event = 5
Idle> #
Idle> Idle> ### Run 1 start.
>>> Event 0
11 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999949 (GeV)
7 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999926 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 1
12 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999942 (GeV)
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999915 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 2
8 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999939 (GeV)
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999908 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 3
8 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999933 (GeV)
Total energy deposition in EM calorimeter crytals : 0.999913 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999919 (GeV)
8 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999932 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
number of event = 5
Idle> #
Idle> Idle> ### Run 2 start.
>>> Event 0
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.99995 (GeV)
8 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999921 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 1
@@ -134,18 +133,18 @@ Idle> Idle> ### Run 2 start.
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 2
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999944 (GeV)
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999926 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 3
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999946 (GeV)
8 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999925 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999952 (GeV)
7 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999918 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
number of event = 5
@@ -153,27 +152,27 @@ Idle> #
Idle> Idle> ### Run 3 start.
>>> Event 0
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.989951 (GeV)
Total energy deposition in EM calorimeter crytals : 0.98991 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 1
12 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999941 (GeV)
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999866 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 2
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999934 (GeV)
Total energy deposition in EM calorimeter crytals : 0.999908 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 3
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999926 (GeV)
Total energy deposition in EM calorimeter crytals : 0.999495 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
10 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999887 (GeV)
11 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999931 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
number of event = 5
@@ -183,114 +182,114 @@ Idle> #
Idle> #
Idle> Idle> ### Run 4 start.
>>> Event 0
6 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.139991 (GeV)
10 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.559966 (GeV)
11 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.239984 (GeV)
9 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.419972 (GeV)
>>> Event 1
9 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.219987 (GeV)
15 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 1.13994 (GeV)
14 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.419972 (GeV)
11 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.899941 (GeV)
>>> Event 2
14 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.479968 (GeV)
15 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 1.39992 (GeV)
20 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.659957 (GeV)
11 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 1.45991 (GeV)
>>> Event 3
14 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.579963 (GeV)
17 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 1.91989 (GeV)
25 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.879944 (GeV)
12 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 1.95988 (GeV)
>>> Event 4
17 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.819949 (GeV)
17 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 2.35986 (GeV)
28 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.15993 (GeV)
13 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 2.35985 (GeV)
number of event = 5
Idle> #
Idle> Idle> ### Run 5 start.
>>> Event 0
20 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.879946 (GeV)
28 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 3.17982 (GeV)
29 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.17993 (GeV)
30 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 3.21981 (GeV)
>>> Event 1
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.939941 (GeV)
29 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 3.99975 (GeV)
30 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.19993 (GeV)
32 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 4.01977 (GeV)
>>> Event 2
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.979939 (GeV)
31 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 4.8797 (GeV)
33 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.27992 (GeV)
32 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 4.83973 (GeV)
>>> Event 3
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.979939 (GeV)
33 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 5.77966 (GeV)
34 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.29992 (GeV)
34 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 5.71969 (GeV)
>>> Event 4
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.979939 (GeV)
36 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 6.69962 (GeV)
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.31992 (GeV)
35 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 6.63964 (GeV)
number of event = 5
Idle> #
Idle> Idle> ### Run 6 start.
>>> Event 0
25 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.01994 (GeV)
46 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 7.61957 (GeV)
36 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.33992 (GeV)
48 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 7.55959 (GeV)
>>> Event 1
25 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.01994 (GeV)
37 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.35992 (GeV)
53 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 8.47953 (GeV)
Total energy deposition in HAD calorimeter towers : 8.47955 (GeV)
>>> Event 2
26 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.03994 (GeV)
53 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 9.37949 (GeV)
37 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.37992 (GeV)
55 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 9.33951 (GeV)
>>> Event 3
27 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.05993 (GeV)
54 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 10.2594 (GeV)
39 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.41991 (GeV)
57 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 10.1195 (GeV)
>>> Event 4
28 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.07993 (GeV)
56 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 11.1794 (GeV)
40 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.43991 (GeV)
58 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 10.8994 (GeV)
number of event = 5
Idle> #
Idle> Idle> ### Run 7 start.
>>> Event 0
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.25992 (GeV)
65 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 11.7194 (GeV)
>>> Event 1
40 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.39991 (GeV)
53 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.73989 (GeV)
68 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 12.2593 (GeV)
Total energy deposition in HAD calorimeter towers : 11.3394 (GeV)
>>> Event 1
63 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 2.01987 (GeV)
69 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 11.7994 (GeV)
>>> Event 2
44 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.5599 (GeV)
70 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 12.7193 (GeV)
68 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 2.27984 (GeV)
69 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 12.1593 (GeV)
>>> Event 3
49 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.71989 (GeV)
72 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 13.2592 (GeV)
71 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 2.45983 (GeV)
69 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 12.4793 (GeV)
>>> Event 4
51 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 1.91988 (GeV)
73 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 13.8192 (GeV)
75 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 2.75979 (GeV)
71 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 12.9192 (GeV)
number of event = 5
Idle> #
Idle> #
@@ -303,59 +302,59 @@ Idle> Idle> #
Idle> Idle> ### Run 8 start.
>>> Event 0
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.993405 (GeV)
2 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00516441 (GeV)
Total energy deposition in EM calorimeter crytals : 0.991074 (GeV)
5 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00616877 (GeV)
>>> Event 1
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.995341 (GeV)
1 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00035878 (GeV)
37 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.988936 (GeV)
5 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00810078 (GeV)
>>> Event 2
34 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.994058 (GeV)
2 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00263402 (GeV)
30 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.993177 (GeV)
4 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00529902 (GeV)
>>> Event 3
34 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.995217 (GeV)
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.997372 (GeV)
2 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00136661 (GeV)
>>> Event 4
35 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.996405 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
38 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.994244 (GeV)
3 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00232988 (GeV)
number of event = 5
Idle> #
Idle> # switch on UserLimits
Idle> Idle> #
Idle> Idle> ### Run 9 start.
>>> Event 0
16 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999924 (GeV)
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.997815 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 1
14 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.992427 (GeV)
25 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.990859 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 2
21 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.999946 (GeV)
22 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.993146 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 3
28 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.998739 (GeV)
23 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.996879 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
>>> Event 4
25 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.996411 (GeV)
3 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0.00221826 (GeV)
30 hits are stored in EM ExN05CalorimeterHitsCollection.
Total energy deposition in EM calorimeter crytals : 0.99664 (GeV)
0 hits are stored in HAD ExN05CalorimeterHitsCollection.
Total energy deposition in HAD calorimeter towers : 0 (GeV)
number of event = 5
Idle> #
Idle>
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: ExN05CalorimeterHit.hh,v 2.2 1998/07/12 02:42:10 urbi Exp $
// GEANT4 tag $Name: geant4-00 $
// $Id: ExN05CalorimeterHit.hh,v 1.2 1999/05/19 09:50:30 fbehner Exp $
// GEANT4 tag $Name: geant4-00-01 $
//
#ifndef ExN05CalorimeterHit_h
@@ -34,6 +34,10 @@ class ExN05CalorimeterHit : public G4VHit
inline void *operator new(size_t);
inline void operator delete(void *aHit);
void *operator new(size_t,void*p){return p;}
#ifndef G4NOT_ISO_DELETES
void operator delete(void *aHit,void*){}
#endif
void Draw();
void Print();
@@ -83,3 +87,4 @@ inline void ExN05CalorimeterHit::operator delete(void *aHit)
#endif

Some files were not shown because too many files have changed in this diff Show More