Import Geant4 11.2.0.beta source tree
This commit is contained in:
@@ -11,7 +11,7 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo
|
||||
|
||||
|
||||
**************************************************************
|
||||
Geant4 version Name: geant4-11-01-patch-02 (15-June-2023)
|
||||
Geant4 version Name: geant4-11-01-ref-06 (30-June-2023)
|
||||
Copyright : Geant4 Collaboration
|
||||
References : NIM A 506 (2003), 250-303
|
||||
: IEEE-TNS 53 (2006), 270-278
|
||||
@@ -45,7 +45,9 @@ Registered graphics systems are:
|
||||
Qt3D (Qt3D)
|
||||
TOOLSSG_X11_GLES (TSG_X11_GLES, TSGX11, TSG_XT_GLES_FALLBACK)
|
||||
TOOLSSG_XT_GLES (TSG_XT_GLES, TSGXt, TSG_QT_GLES_FALLBACK)
|
||||
TOOLSSG_XT_ZB (TSG_XT_ZB, TSGXtZB)
|
||||
TOOLSSG_QT_GLES (TSG_QT_GLES, TSGQt, TSG)
|
||||
TOOLSSG_QT_ZB (TSG_QT_ZB, TSGQtZB)
|
||||
|
||||
Registering model factories...
|
||||
|
||||
@@ -244,7 +246,7 @@ eBrem: for e- XStype:4 SubType=3
|
||||
|
||||
CoulombScat: for e- XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 100 MeV Emax= 100 TeV
|
||||
|
||||
@@ -276,7 +278,7 @@ annihil: for e+ XStype:2 SubType=5 BuildTable=0
|
||||
|
||||
CoulombScat: for e+ XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from 100 MeV to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 100 MeV Emax= 100 TeV
|
||||
|
||||
@@ -308,7 +310,7 @@ hPairProd: for proton XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for proton XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -321,7 +323,6 @@ ionIoni: for GenericIon XStype:3 SubType=2
|
||||
dE/dx and range tables from 100 eV to 100 TeV in 84 bins
|
||||
Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1
|
||||
StepFunction=(0.2, 0.1 mm), integ: 3, fluct: 1, linLossLim= 0.02
|
||||
Stopping Power data for 17 ion/material pairs
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
BraggIon : Emin= 0 eV Emax= 2 MeV
|
||||
BetheBloch : Emin= 2 MeV Emax= 100 TeV
|
||||
@@ -367,7 +368,7 @@ hPairProd: for anti_proton XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for anti_proton XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -399,7 +400,7 @@ hPairProd: for kaon+ XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for kaon+ XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -431,7 +432,7 @@ hPairProd: for kaon- XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for kaon- XStype:1 SubType=1 BuildTable=1
|
||||
Used Lambda table of kaon+
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -463,7 +464,7 @@ muPairProd: for mu+ XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for mu+ XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -495,7 +496,7 @@ muPairProd: for mu- XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for mu- XStype:1 SubType=1 BuildTable=1
|
||||
Used Lambda table of mu+
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -527,7 +528,7 @@ hPairProd: for pi+ XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for pi+ XStype:1 SubType=1 BuildTable=1
|
||||
Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 0
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -559,7 +560,7 @@ hPairProd: for pi- XStype:1 SubType=4
|
||||
|
||||
CoulombScat: for pi- XStype:1 SubType=1 BuildTable=1
|
||||
Used Lambda table of pi+
|
||||
ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531
|
||||
ThetaMin(p) < Theta(degree) < 180, pLimit(GeV^1)= 0.139531
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
eCoulombScattering : Emin= 0 eV Emax= 100 TeV
|
||||
|
||||
@@ -944,12 +945,21 @@ CoulombScat: for pi- XStype:1 SubType=1 BuildTable=1
|
||||
|
||||
================================================================
|
||||
=======================================================================
|
||||
====== Pre-compound/De-excitation Physics Parameters ========
|
||||
====== Geant4 Native Pre-compound Model Parameters ========
|
||||
=======================================================================
|
||||
Type of pre-compound inverse x-section 3
|
||||
Pre-compound model active 1
|
||||
Pre-compound excitation low energy 100 keV
|
||||
Pre-compound excitation high energy 30 MeV
|
||||
Angular generator for pre-compound model 1
|
||||
Use NeverGoBack option for pre-compound model 0
|
||||
Use SoftCutOff option for pre-compound model 0
|
||||
Use CEM transitions for pre-compound model 1
|
||||
Use GNASH transitions for pre-compound model 0
|
||||
Use HETC submodel for pre-compound model 0
|
||||
=======================================================================
|
||||
====== Nuclear De-excitation Module Parameters ========
|
||||
=======================================================================
|
||||
Type of de-excitation inverse x-section 3
|
||||
Type of de-excitation factory Evaporation+GEM
|
||||
Number of de-excitation channels 68
|
||||
@@ -985,9 +995,10 @@ Setting was ignored.
|
||||
... open analysis file : B4.root - done
|
||||
Using
|
||||
--> Event 0 starts.
|
||||
---> End of event: 0
|
||||
Absorber: total energy: 259.894 MeV total track length: 18.9569 cm
|
||||
Gap: total energy: 17.4244 MeV total track length: 8.74398 cm
|
||||
--> End of event 0
|
||||
|
||||
|
||||
----> print histograms statistic for the entire run
|
||||
|
||||
@@ -1065,9 +1076,10 @@ hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest, dInela
|
||||
... open analysis file : B4.root - done
|
||||
Using
|
||||
--> Event 0 starts.
|
||||
---> End of event: 0
|
||||
Absorber: total energy: 278.136 MeV total track length: 20.1737 cm
|
||||
Gap: total energy: 19.9095 MeV total track length: 10.0917 cm
|
||||
--> End of event 0
|
||||
|
||||
|
||||
----> print histograms statistic for the entire run
|
||||
|
||||
@@ -1091,14 +1103,15 @@ View them with "/vis/plot" or "/vis/reviewPlots".
|
||||
... open analysis file : B4.root - done
|
||||
Using
|
||||
--> Event 0 starts.
|
||||
---> End of event: 0
|
||||
Absorber: total energy: 435.043 MeV total track length: 31.1955 cm
|
||||
Gap: total energy: 37.3961 MeV total track length: 18.5223 cm
|
||||
--> End of event 0
|
||||
|
||||
|
||||
----> print histograms statistic for the entire run
|
||||
|
||||
EAbs : mean = 435.043 MeV rms = 0 eV
|
||||
EGap : mean = 37.3961 MeV rms = 0 eV
|
||||
EAbs : mean = 0 eV rms = 0 eV
|
||||
EGap : mean = 0 eV rms = 0 eV
|
||||
LAbs : mean = 31.1955 cm rms = 0 fm
|
||||
LGap : mean = 18.5223 cm rms = 0 fm
|
||||
... write file : B4.root - done
|
||||
|
||||
@@ -54,7 +54,7 @@ const G4int kDim = 2;
|
||||
/// - fEdep[], fTrackLength[].
|
||||
///
|
||||
/// The data are collected step by step in SteppingAction, and
|
||||
/// the accumulated values are filled in histograms and entuple
|
||||
/// the accumulated values are filled in histograms and a Ntuple
|
||||
/// event by event in EventAction.
|
||||
|
||||
class RunData : public G4Run
|
||||
|
||||
@@ -28,16 +28,17 @@
|
||||
hist2->Draw("HIST");
|
||||
|
||||
// Draw Egap histogram in the pad 3
|
||||
// with logaritmic scale for y
|
||||
|
||||
TH1D* hist3 = (TH1D*)f.Get("Egap");
|
||||
c1->cd(3);
|
||||
gPad->SetLogy(1);
|
||||
// set logarithmic scale for y
|
||||
//gPad->SetLogy(1);
|
||||
hist3->Draw("HIST");
|
||||
|
||||
// Draw Lgap histogram in the pad 4
|
||||
// with logaritmic scale for y
|
||||
c1->cd(4);
|
||||
gPad->SetLogy(1);
|
||||
// set logarithmic scale for y
|
||||
//gPad->SetLogy(1);
|
||||
TH1D* hist4 = (TH1D*)f.Get("Lgap");
|
||||
hist4->Draw("HIST");
|
||||
}
|
||||
|
||||
@@ -28,15 +28,15 @@
|
||||
c1->cd(2);
|
||||
ntuple->Draw("Labs");
|
||||
|
||||
// Draw Egap histogram in the pad 3
|
||||
// with logaritmic scale for y ?? how to do this?
|
||||
// Draw Egap histogram in the pad
|
||||
c1->cd(3);
|
||||
gPad->SetLogy(1);
|
||||
//set logarithmic scale for y
|
||||
//gPad->SetLogy(1);
|
||||
ntuple->Draw("Egap");
|
||||
|
||||
// Draw Lgap histogram in the pad 4
|
||||
// with logaritmic scale for y ?? how to do this?
|
||||
c1->cd(4);
|
||||
gPad->SetLogy(1);
|
||||
ntuple->Draw("Egap");
|
||||
//set logarithmic scale for y
|
||||
//gPad->SetLogy(1);
|
||||
ntuple->Draw("Lgap");
|
||||
}
|
||||
|
||||
@@ -1,44 +1,40 @@
|
||||
# Macro file for example B4
|
||||
#
|
||||
#
|
||||
# Can be run in batch, without graphic
|
||||
# or interactively: Idle> /control/execute run1.mac
|
||||
#
|
||||
# Change the default number of workers (in multi-threading mode)
|
||||
#
|
||||
# change the default number of workers (in multi-threading mode)
|
||||
#/run/numberOfThreads 4
|
||||
#
|
||||
# Kind of tutorial:
|
||||
# interactively with visualization, issue the commands one by one:
|
||||
# Idle> gun/particle mu+
|
||||
# Idle> ...etc...
|
||||
#
|
||||
# Initialize kernel
|
||||
/run/initialize
|
||||
#
|
||||
# Default kinematics:
|
||||
# electron 50 MeV in direction (0.,0.,1.)
|
||||
# 1 event with tracking/verbose
|
||||
# muon 300 MeV in direction (0.,0.,1.)
|
||||
/gun/particle mu+
|
||||
/gun/energy 300 MeV
|
||||
#
|
||||
/tracking/verbose 1
|
||||
/run/beamOn 1
|
||||
#
|
||||
#
|
||||
# muon 300 MeV in direction (0.,0.,1.)
|
||||
# 3 events
|
||||
#
|
||||
/gun/particle mu+
|
||||
/gun/energy 3 MeV
|
||||
/run/beamOn 3
|
||||
#
|
||||
# 20 events
|
||||
#
|
||||
/tracking/verbose 0
|
||||
/run/printProgress 5
|
||||
/run/beamOn 20
|
||||
/run/beamOn 10
|
||||
#
|
||||
# Magnetic field
|
||||
#
|
||||
/globalField/setValue 0.2 0 0 tesla
|
||||
/run/beamOn 3
|
||||
# inactivate multiple scattering process
|
||||
/process/inactivate msc
|
||||
/run/beamOn 10
|
||||
#
|
||||
# Activate/inactivate physics processes
|
||||
# set a magnetic field
|
||||
/globalField/setValue 2 0 0 tesla
|
||||
/run/beamOn 10
|
||||
#
|
||||
/process/list
|
||||
/process/inactivate eBrem
|
||||
#
|
||||
/run/beamOn 20
|
||||
# re-activate multiple scattering
|
||||
/process/activate msc
|
||||
/run/beamOn 10
|
||||
#
|
||||
# verbosity
|
||||
/tracking/verbose 2
|
||||
/run/beamOn 1
|
||||
|
||||
@@ -1,17 +1,23 @@
|
||||
# Macro file for example B4
|
||||
#
|
||||
#
|
||||
# To be run preferably in batch, without graphics:
|
||||
# % exampleB4[a,b,c,d] run2.mac
|
||||
# % exampleB4[a,b,c,d] -m run2.mac
|
||||
#
|
||||
# Produce Histograms and Ntuples
|
||||
#
|
||||
#/run/numberOfThreads 4
|
||||
#/control/cout/ignoreThreadsExcept 0
|
||||
#
|
||||
# reduce the verbosity level for EM and hadronic physics
|
||||
#/process/em/verbose 0
|
||||
#/process/had/verbose 0
|
||||
#
|
||||
/run/initialize
|
||||
#
|
||||
# Default kinemtics:
|
||||
# electron 50 MeV in direction (0.,0.,1.)
|
||||
# 1000 events
|
||||
# Default kinemtics:
|
||||
# electron 300 MeV in direction (0.,0.,1.)
|
||||
# 10000 events
|
||||
#
|
||||
/run/printProgress 100
|
||||
/run/beamOn 1000
|
||||
/run/printProgress 1000
|
||||
/run/beamOn 10000
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ namespace B4b
|
||||
void EventAction::PrintEventStatistics(
|
||||
G4double absoEdep, G4double absoTrackLength,
|
||||
G4double gapEdep, G4double gapTrackLength) const
|
||||
{
|
||||
{
|
||||
// print event statistics
|
||||
G4cout
|
||||
<< " Absorber: total energy: "
|
||||
@@ -84,13 +84,12 @@ void EventAction::EndOfEventAction(const G4Event* event)
|
||||
auto eventID = event->GetEventID();
|
||||
auto printModulo = G4RunManager::GetRunManager()->GetPrintProgress();
|
||||
if ( ( printModulo > 0 ) && ( eventID % printModulo == 0 ) ) {
|
||||
G4cout << "---> End of event: " << eventID << G4endl;
|
||||
|
||||
PrintEventStatistics(
|
||||
runData->GetEdep(kAbs),
|
||||
runData->GetTrackLength(kAbs),
|
||||
runData->GetEdep(kGap),
|
||||
runData->GetTrackLength(kGap));
|
||||
G4cout << "--> End of event " << eventID << "\n" << G4endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ PrimaryGeneratorAction::PrimaryGeneratorAction()
|
||||
= G4ParticleTable::GetParticleTable()->FindParticle("e-");
|
||||
fParticleGun->SetParticleDefinition(particleDefinition);
|
||||
fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0.,0.,1.));
|
||||
fParticleGun->SetParticleEnergy(50.*MeV);
|
||||
fParticleGun->SetParticleEnergy(300.*MeV);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -62,11 +62,11 @@ RunAction::RunAction()
|
||||
//
|
||||
|
||||
// Creating histograms
|
||||
analysisManager->CreateH1("Eabs","Edep in absorber", 100, 0., 800*MeV);
|
||||
analysisManager->CreateH1("Egap","Edep in gap", 100, 0., 100*MeV);
|
||||
analysisManager->CreateH1("Labs","trackL in absorber", 100, 0., 1*m);
|
||||
analysisManager->CreateH1("Lgap","trackL in gap", 100, 0., 50*cm);
|
||||
|
||||
analysisManager->CreateH1("Eabs" ,"Edep in absorber", 110, 0., 330*MeV);
|
||||
analysisManager->CreateH1("Egap" ,"Edep in gap", 100, 0., 30*MeV);
|
||||
analysisManager->CreateH1("Labs" ,"trackL in absorber", 100, 0., 50*cm);
|
||||
analysisManager->CreateH1("Lgap" ,"trackL in gap", 100, 0., 50*cm);
|
||||
|
||||
// Creating ntuple
|
||||
//
|
||||
analysisManager->CreateNtuple("B4", "Edep and TrackL");
|
||||
|
||||
@@ -44,7 +44,7 @@ void RunData::FillPerEvent()
|
||||
auto analysisManager = G4AnalysisManager::Instance();
|
||||
|
||||
// accumulate statistic
|
||||
// in the order od the histograms, ntuple columns declarations
|
||||
// in the order of the histograms, ntuple columns declarations
|
||||
G4int counter = 0;
|
||||
for ( auto edep : fEdep ) {
|
||||
analysisManager->FillH1(counter, edep);
|
||||
@@ -54,6 +54,7 @@ void RunData::FillPerEvent()
|
||||
analysisManager->FillH1(counter, trackLength);
|
||||
analysisManager->FillNtupleDColumn(counter++, trackLength);
|
||||
}
|
||||
|
||||
analysisManager->AddNtupleRow();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user