Import Geant4 11.0.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2021-06-25 16:12:29 +02:00
parent c968e26a39
commit 6399a014b6
4200 changed files with 207479 additions and 237366 deletions
@@ -1,9 +1,6 @@
#----------------------------------------------------------------------------
# Setup the project
cmake_minimum_required(VERSION 3.8...3.18)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
endif()
cmake_minimum_required(VERSION 3.12...3.20)
set(name microelectronics)
project(${name})
@@ -7,6 +7,13 @@
Package History file
--------------------
24 May 2021 - B. Morgan (microelectronics-V10-07-01)
- Bump required CMake version range to 3.12...3.20, matching core Geant4
21 March 2021 - V. Ivanchenko microelectronics-V10-07-00
- PhysicsList - update for 11.0
15 November 2020 - S. Guatelli microelectronics-V10-06-01
- Migration to G4RunManagerFactory
@@ -4,8 +4,14 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo
!!! WARNING - FPE detection is activated !!!
############################################
################################
!!! G4Backtrace is activated !!!
################################
**************************************************************
Geant4 version Name: geant4-10-07-patch-02 (11-June-2021)
Geant4 version Name: geant4-10-07-ref-06 (25-June-2021)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
@@ -75,92 +81,92 @@ Some /vis commands (optionally) take a string to specify colour.
Target 1 1 1
### === G4UAtomicDeexcitation::InitialiseForNewRun()
### === Auger cascade flag: 0
### === Auger flag: 1
### === Ignore cuts flag: 0
### === PIXE model for hadrons: Empirical
### === PIXE model for e+-: Livermore
msc: for e- SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
===== EM models for the G4Region Target ======
UrbanMsc : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
eIoni: for e- SubType=2
eIoni: for e- XStype:1 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, 1 mm), integ: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
MollerBhabha : Emin= 0 eV Emax= 100 TeV
MollerBhabha : Emin= 0 meV Emax= 100 TeV
===== EM models for the G4Region Target ======
MollerBhabha : Emin= 100 MeV Emax= 10 TeV
e-_G4MicroElecElastic: for e- SubType=51 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
DummyModel : Emin= 0 eV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
DummyModel : Emin= 0 meV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
===== EM models for the G4Region Target ======
MicroElecElasticModel : Emin= 0 eV Emax= 100 MeV
MicroElecElasticModel : Emin= 0 meV Emax= 100 MeV
e-_G4MicroElecInelastic: for e- SubType=53 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
DummyModel : Emin= 0 eV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
DummyModel : Emin= 0 meV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
===== EM models for the G4Region Target ======
MicroElecInelasticModel : Emin= 0 eV Emax= 100 MeV deltaVI Fluo
MicroElecInelasticModel : Emin= 0 meV Emax= 100 MeV deltaVI Fluo
msc: for proton SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV Nbins=84 100 eV - 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
hIoni: for proton SubType=2
hIoni: for proton XStype:1 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: 1, fluct: 1, linLossLim= 0.01
===== EM models for the G4Region DefaultRegionForTheWorld ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
===== EM models for the G4Region Target ======
Bragg : Emin= 0 eV Emax= 2 MeV
Bragg : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 10 GeV Emax= 10 TeV
p_G4MicroElecInelastic: for proton SubType=53 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
DummyModel : Emin= 0 eV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
DummyModel : Emin= 0 meV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
===== EM models for the G4Region Target ======
MicroElecInelasticModel : Emin= 50 keV Emax= 10 GeV deltaVI Fluo
DummyModel : Emin= 10 GeV Emax= 10 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
msc: for GenericIon SubType= 10
===== EM models for the G4Region DefaultRegionForTheWorld ======
UrbanMsc : Emin= 0 eV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1
UrbanMsc : Emin= 0 meV Emax= 100 TeV
StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llim=1 mm
ionIoni: for GenericIon SubType=2
ionIoni: for GenericIon XStype:1 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: 1, 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
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 2 MeV Emax= 100 TeV
===== EM models for the G4Region Target ======
BraggIon : Emin= 0 eV Emax= 2 MeV
BraggIon : Emin= 0 meV Emax= 2 MeV
BetheBloch : Emin= 10 GeV Emax= 10 TeV
ion_G4MicroElecInelastic: for GenericIon SubType=53 BuildTable=0
===== EM models for the G4Region DefaultRegionForTheWorld ======
DummyModel : Emin= 0 eV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
DummyModel : Emin= 0 meV Emax= 100 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
===== EM models for the G4Region Target ======
MicroElecInelasticModel : Emin= 50 keV Emax= 10 GeV deltaVI Fluo
DummyModel : Emin= 10 GeV Emax= 10 TeV
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1
StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llim=1 mm
Region <DefaultRegionForTheWorld> -- -- appears in <World> world volume
This region is in the mass world.
@@ -194,7 +200,7 @@ Index : 0 used in the geometry : Yes
Index : 1 used in the geometry : Yes
Material : G4_Si
Range cuts : gamma 1 nm e- 1 nm e+ 1 nm proton 1 nm
Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 0.1 eV
Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 100 meV
Region(s) which use this couple :
Target
@@ -208,14 +214,14 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics
G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model.
See commands in /vis/modeling/trajectories/ for other options.
### Run 0 starts.
##### Create analysis manager 0x1c45900
##### Create analysis manager 0x19ac820
Using Root analysis manager
... create file : microelectronics.root - done
... open analysis file : microelectronics.root - done
Run terminated.
Run Summary
Number of events processed : 10
User=0.010000s Real=0.014481s Sys=0.000000s
User=0.000000s Real=0.004297s Sys=0.000000s
... write file : microelectronics.root - done
... close file : microelectronics.root - done
Number and type of particles created outside region "Target" :
@@ -231,13 +237,17 @@ G4 kernel has come to Quit state.
UserDetectorConstruction deleted.
UserPhysicsList deleted.
UserActionInitialization deleted.
UserWorkerInitialization deleted.
UserWorkerThreadInitialization deleted.
UserRunAction deleted.
UserPrimaryGenerator deleted.
RunManager is deleting RunManagerKernel.
G4SDManager deleted.
EventManager deleted.
Units table cleared.
TransportationManager deleted.
Total navigation history collections cleaned: 7
G4RNGHelper object is deleted.
================== Deleting memory pools ===================
Pool ID '20G4NavigationLevelRep', size : 0.00769 MB
Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB
@@ -255,3 +265,4 @@ G4Allocator objects are deleted.
UImanager deleted.
StateManager deleted.
RunManagerKernel is deleted. Good bye :)
RunManager is deleted.
@@ -31,6 +31,36 @@
#include "PhysicsList.hh"
#include "G4SystemOfUnits.hh"
// Geant4-MicroElec MODELS
#include "G4MicroElecElastic.hh"
#include "G4MicroElecElasticModel.hh"
#include "G4MicroElecInelastic.hh"
#include "G4MicroElecInelasticModel.hh"
//
#include "G4LossTableManager.hh"
#include "G4EmConfigurator.hh"
#include "G4VEmModel.hh"
#include "G4DummyModel.hh"
#include "G4eIonisation.hh"
#include "G4hIonisation.hh"
#include "G4ionIonisation.hh"
#include "G4eMultipleScattering.hh"
#include "G4hMultipleScattering.hh"
#include "G4BraggModel.hh"
#include "G4BraggIonModel.hh"
#include "G4BetheBlochModel.hh"
#include "G4UrbanMscModel.hh"
#include "G4MollerBhabhaModel.hh"
#include "G4IonFluctuations.hh"
#include "G4UniversalFluctuation.hh"
#include "G4ElectronCapture.hh"
#include "G4UAtomicDeexcitation.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
PhysicsList::PhysicsList(): G4VUserPhysicsList()
@@ -94,38 +124,6 @@ void PhysicsList::ConstructProcess()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
// Geant4-MicroElec MODELS
#include "G4MicroElecElastic.hh"
#include "G4MicroElecElasticModel.hh"
#include "G4MicroElecInelastic.hh"
#include "G4MicroElecInelasticModel.hh"
//
#include "G4LossTableManager.hh"
#include "G4EmConfigurator.hh"
#include "G4VEmModel.hh"
#include "G4DummyModel.hh"
#include "G4eIonisation.hh"
#include "G4hIonisation.hh"
#include "G4ionIonisation.hh"
#include "G4eMultipleScattering.hh"
#include "G4hMultipleScattering.hh"
#include "G4BraggModel.hh"
#include "G4BraggIonModel.hh"
#include "G4BetheBlochModel.hh"
#include "G4UrbanMscModel.hh"
#include "G4MollerBhabhaModel.hh"
#include "G4IonFluctuations.hh"
#include "G4UniversalFluctuation.hh"
#include "G4ElectronCapture.hh"
#include "G4UAtomicDeexcitation.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
void PhysicsList::ConstructEM()
{
@@ -156,12 +154,12 @@ void PhysicsList::ConstructEM()
// MicroElec elastic is not active in the world
G4MicroElecElastic* theMicroElecElasticProcess = new G4MicroElecElastic("e-_G4MicroElecElastic");
theMicroElecElasticProcess->SetEmModel(new G4DummyModel(),1);
theMicroElecElasticProcess->SetEmModel(new G4DummyModel());
pmanager->AddDiscreteProcess(theMicroElecElasticProcess);
// MicroElec ionisation is not active in the world
G4MicroElecInelastic* microelecioni = new G4MicroElecInelastic("e-_G4MicroElecInelastic");
microelecioni->SetEmModel(new G4DummyModel(),1);
microelecioni->SetEmModel(new G4DummyModel());
pmanager->AddDiscreteProcess(microelecioni);
// THE FOLLOWING PROCESS WILL KILL ALL ELECTRONS BELOW A SELECTED ENERY THRESHOLD
@@ -182,8 +180,8 @@ void PhysicsList::ConstructEM()
// MicroElec ionisation is not active in the world
G4MicroElecInelastic* microelecioni = new G4MicroElecInelastic("p_G4MicroElecInelastic");
microelecioni->SetEmModel(new G4DummyModel(),1);
microelecioni->SetEmModel(new G4DummyModel(),2);
microelecioni->SetEmModel(new G4DummyModel());
microelecioni->SetEmModel(new G4DummyModel());
pmanager->AddDiscreteProcess(microelecioni);
} else if (particleName == "GenericIon") {
@@ -199,8 +197,8 @@ void PhysicsList::ConstructEM()
// MicroElec ionisation is not active in the world
G4MicroElecInelastic* microelecioni = new G4MicroElecInelastic("ion_G4MicroElecInelastic");
microelecioni->SetEmModel(new G4DummyModel(),1);
microelecioni->SetEmModel(new G4DummyModel(),2);
microelecioni->SetEmModel(new G4DummyModel());
microelecioni->SetEmModel(new G4DummyModel());
pmanager->AddDiscreteProcess(microelecioni);
}
}