Import Geant4 11.4.0 source tree
This commit is contained in:
@@ -1,57 +0,0 @@
|
||||
|
||||
///\file "hadronic/Hadr08/.README.txt"
|
||||
///\brief Example Hadr08 README page
|
||||
|
||||
/*! \page ExampleHadr08 Example Hadr08
|
||||
|
||||
This is an example of how to use "generic biasing" to get the following
|
||||
functionality which is currently not available directly in the Geant4
|
||||
hadronic framework.
|
||||
|
||||
\section Hadr08_s1 PHYSICS LIST
|
||||
|
||||
We want to use the physics list FTFP_BERT everywhere in our detector,
|
||||
except that in one (or more) logical volume(s) we want to use a
|
||||
different combination of hadronic models, e.g. FTFP + INCLXX
|
||||
(instead of the default FTFP + BERT), for the final-state generation.
|
||||
|
||||
Notice that we use the powerful "generic biasing" machinery available
|
||||
in Geant4, but the actual weights of all tracks remain to the usual
|
||||
value (1.0) as in the normal (unbiased) case.
|
||||
|
||||
\section Hadr08_s2 MATERIALS AND GEOMETRY DEFINITION
|
||||
|
||||
In this example, the detector is very simple:
|
||||
- a homogeneous block of silicon, as a proxy of a tracker sub-detector;
|
||||
- followed by a crystal, as a proxy of an electromagnetic calorimeter;
|
||||
- followed by a homogeneous block of iron, as a proxy of a hadron
|
||||
calorimeter.
|
||||
We assume that the block of silicon is where we want to replace FTFP+BERT
|
||||
with FTFP+INCLXX for the final-state modeling of proton, neutron, pion-
|
||||
and pion+-inelastic interactions (of any energy).
|
||||
This silicon layer is made artificially thick (20 cm) in order to have
|
||||
more hadron inelastic interactions for testing.
|
||||
|
||||
This example has been tested only for G4 10.5.p01 and 10.6, but it should
|
||||
work also for previous recent releases (i.e. 10.4 and 10.3).
|
||||
The example works in both sequential and multi-threaded modes, and the
|
||||
CPU overhead due to "generic biasing" for this application seems to be
|
||||
very small (at the per-cent level).
|
||||
|
||||
\section Hadr08_s3 HOW TO START ?
|
||||
|
||||
To build it:
|
||||
\verbatim
|
||||
mkdir Build; cd Build
|
||||
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DGeant4_DIR=/path-to-geant4-libraries ../.
|
||||
make
|
||||
\endverbatim
|
||||
|
||||
To run it:
|
||||
\verbatim
|
||||
./Hadr08 hadr08.in
|
||||
\endverbatim
|
||||
which shoot 100 pion+ of 5 GeV kinetic energy.
|
||||
|
||||
*/
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file Hadr08.cc
|
||||
/// \brief Main program of the hadronic/Hadr08 example
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "ActionInitialization.hh"
|
||||
#include "DetectorConstruction.hh"
|
||||
|
||||
+12
-1
@@ -1,7 +1,11 @@
|
||||
\page ExampleHadr08 Example Hadr08
|
||||
|
||||
This is an example of how to use "generic biasing" to get the following
|
||||
functionality which is currently not available directly in the Geant4
|
||||
hadronic framework.
|
||||
|
||||
## PHYSICS LIST
|
||||
|
||||
We want to use the physics list FTFP_BERT everywhere in our detector,
|
||||
except that in one (or more) logical volume(s) we want to use a
|
||||
different combination of hadronic models, e.g. FTFP + INCLXX
|
||||
@@ -11,6 +15,8 @@ Notice that we use the powerful "generic biasing" machinery available
|
||||
in Geant4, but the actual weights of all tracks remain to the usual
|
||||
value (1.0) as in the normal (unbiased) case.
|
||||
|
||||
## MATERIALS AND GEOMETRY DEFINITION
|
||||
|
||||
In this example, the detector is very simple:
|
||||
- a homogeneous block of silicon, as a proxy of a tracker sub-detector;
|
||||
- followed by a crystal, as a proxy of an electromagnetic calorimeter;
|
||||
@@ -28,13 +34,18 @@ The example works in both sequential and multi-threaded modes, and the
|
||||
CPU overhead due to "generic biasing" for this application seems to be
|
||||
very small (at the per-cent level).
|
||||
|
||||
## HOW TO START ?
|
||||
|
||||
To build it:
|
||||
```
|
||||
mkdir Build; cd Build
|
||||
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DGeant4_DIR=/path-to-geant4-libraries ../.
|
||||
make
|
||||
```
|
||||
|
||||
To run it:
|
||||
```
|
||||
./Hadr08 hadr08.in
|
||||
```
|
||||
which shoot 100 pion+ of 5 GeV kinetic energy.
|
||||
|
||||
@@ -11,7 +11,7 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo
|
||||
|
||||
|
||||
**************************************************************
|
||||
Geant4 version Name: geant4-11-03-ref-06 (30-June-2025)
|
||||
Geant4 version Name: geant4-11-04-ref-00 (5-December-2025)
|
||||
Copyright : Geant4 Collaboration
|
||||
References : NIM A 506 (2003), 250-303
|
||||
: IEEE-TNS 53 (2006), 270-278
|
||||
@@ -81,7 +81,7 @@ Lowest muon/hadron kinetic energy 1 keV
|
||||
Use ICRU90 data 0
|
||||
Fluctuations of dE/dx are enabled 1
|
||||
Type of fluctuation model for leptons and hadrons Urban
|
||||
Use built-in Birks satuaration 0
|
||||
Use built-in Birks saturation 0
|
||||
Build CSDA range enabled 0
|
||||
Use cut as a final range enabled 0
|
||||
Enable angular generator interface 0
|
||||
@@ -218,7 +218,7 @@ hBrems: for proton XStype:3 SubType=3
|
||||
hPairProd: for proton XStype:3 SubType=4
|
||||
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
|
||||
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
|
||||
Sampling table 17x1001, from 7.50618 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -276,7 +276,7 @@ hBrems: for anti_proton XStype:1 SubType=3
|
||||
hPairProd: for anti_proton XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 17x1001 from 7.50618 GeV to 100 TeV
|
||||
Sampling table 17x1001, from 7.50618 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -308,7 +308,7 @@ hBrems: for kaon+ XStype:1 SubType=3
|
||||
hPairProd: for kaon+ XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
|
||||
Sampling table 18x1001, from 3.94942 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -340,7 +340,7 @@ hBrems: for kaon- XStype:1 SubType=3
|
||||
hPairProd: for kaon- XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 18x1001 from 3.94942 GeV to 100 TeV
|
||||
Sampling table 18x1001, from 3.94942 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -372,7 +372,7 @@ muBrems: for mu+ XStype:1 SubType=3
|
||||
muPairProd: for mu+ XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 21x1001 from 0.85 GeV to 100 TeV
|
||||
Sampling table 21x1001, from 0.85 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -404,7 +404,7 @@ muBrems: for mu- XStype:1 SubType=3
|
||||
muPairProd: for mu- XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 21x1001 from 0.85 GeV to 100 TeV
|
||||
Sampling table 21x1001, from 0.85 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -436,7 +436,7 @@ hBrems: for pi+ XStype:1 SubType=3
|
||||
hPairProd: for pi+ XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
|
||||
Sampling table 20x1001, from 1.11656 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -468,7 +468,7 @@ hBrems: for pi- XStype:1 SubType=3
|
||||
hPairProd: for pi- XStype:1 SubType=4
|
||||
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
|
||||
Sampling table 20x1001 from 1.11656 GeV to 100 TeV
|
||||
Sampling table 20x1001, from 1.11656 GeV to 100 TeV
|
||||
===== EM models for the G4Region DefaultRegionForTheWorld ======
|
||||
hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi
|
||||
|
||||
@@ -723,8 +723,8 @@ CoulombScat: for pi- XStype:1 SubType=1 BuildTable=1
|
||||
Type of pre-compound model 0
|
||||
Type of pre-compound inverse x-section 1
|
||||
Pre-compound model active 1
|
||||
Pre-compound excitation low energy 100 keV
|
||||
Pre-compound excitation high energy 30 MeV
|
||||
Pre-compound excitation low energy 0.1 MeV
|
||||
Pre-compound excitation high energy 15 MeV
|
||||
Angular generator for pre-compound model 1
|
||||
Use NeverGoBack option for pre-compound model 0
|
||||
Use SoftCutOff option for pre-compound model 0
|
||||
@@ -738,9 +738,8 @@ Type of de-excitation inverse x-section 3
|
||||
Type of de-excitation factory Evaporation+GEM
|
||||
Number of de-excitation channels 68
|
||||
Type of Fermi BreakUp model ModelVI
|
||||
Min excitation energy 10 eV
|
||||
Min energy per nucleon for multifragmentation 200 GeV
|
||||
Limit excitation energy for Fermi BreakUp 20 MeV
|
||||
Min excitation energy 0.01 keV
|
||||
Min energy per nucleon for multifragmentation 2e+05 MeV
|
||||
Level density (1/MeV) 0.075
|
||||
Use simple level density model 1
|
||||
Use discrete excitation energy of the residual 0
|
||||
@@ -788,8 +787,8 @@ Index : 3 used in the geometry : Yes
|
||||
Run terminated.
|
||||
Run Summary
|
||||
Number of events processed : 100
|
||||
User=2.780000s Real=6.317869s Sys=0.000000s
|
||||
User=2.700000s Real=3.113085s Sys=0.000000s
|
||||
================== Deleting memory pools ===================
|
||||
Number of memory pools allocated: 11 of which, static: 0
|
||||
Dynamic pools deleted: 11 / Total memory freed: 0.14 MB
|
||||
Dynamic pools deleted: 11 / Total memory freed: 0.15 MB
|
||||
============================================================
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file ActionInitialization.hh
|
||||
/// \brief Definition of the ActionInitialization class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef ActionInitialization_h
|
||||
#define ActionInitialization_h 1
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file BiasingOperation.hh
|
||||
/// \brief Definition of the BiasingOperation class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef BiasingOperation_hh
|
||||
#define BiasingOperation_hh 1
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file BiasingOperator.hh
|
||||
/// \brief Definition of the BiasingOperator class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef BiasingOperator_hh
|
||||
#define BiasingOperator_hh 1
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file DetectorConstruction.hh
|
||||
/// \brief Definition of the DetectorConstruction class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef DetectorConstruction_h
|
||||
#define DetectorConstruction_h 1
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file PrimaryGeneratorAction.hh
|
||||
/// \brief Definition of the PrimaryGeneratorAction class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef PrimaryGeneratorAction_h
|
||||
#define PrimaryGeneratorAction_h 1
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file ActionInitialization.cc
|
||||
/// \brief Implementation of the ActionInitialization class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "ActionInitialization.hh"
|
||||
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file BiasingOperation.cc
|
||||
/// \brief Implementation of the BiasingOperation class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "BiasingOperation.hh"
|
||||
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file BiasingOperator.cc
|
||||
/// \brief Implementation of the BiasingOperator class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "BiasingOperator.hh"
|
||||
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file DetectorConstruction.cc
|
||||
/// \brief Implementation of the DetectorConstruction class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "DetectorConstruction.hh"
|
||||
|
||||
|
||||
@@ -25,11 +25,6 @@
|
||||
//
|
||||
/// \file PrimaryGeneratorAction.cc
|
||||
/// \brief Implementation of the PrimaryGeneratorAction class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "PrimaryGeneratorAction.hh"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user