Import Geant4 11.4.0 source tree

This commit is contained in:
Gabriele Cosmo
2025-12-05 08:54:02 +01:00
parent a499fb82e9
commit b4a16de652
6484 changed files with 232674 additions and 221097 deletions
@@ -1,72 +0,0 @@
-------------------------------------------------------------------
=========================================================
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
=========================================================
Example Par01
-------------
Example Par01 provides examples of the use of parameterisation facilities.
It was moved in extended examples from novice/N05 with removal of
novice examples.
Geometry, sensitive detector, hits, processes are defined respectively in:
Par01DetectorConstruction
Par01CalorimeterSD
Par01CalorimeterHit
The particularities are:
o The parameterisation models:
o Par01EMShowerModel which provides a crude
parameterisation for e+/e-/gamma. This model
is bound to the EM calorimeter.
o Par01PionShowerModel: an even more crude
parameterisation for pi+/pi-. This model
is bound to a ghost volume.
Those two models produces "hits": ie the energy
of the incident particle is distributed into
the volume of the envelope throught energy spots
(class Par01EnergySpot), those energy spots being
recorded in the sensitive detector at this point
if any.
They are rather similar from a technical point of vue.
They both make use of a private G4Navigator to set
their energy spots into the sensitive volumes.
However, we don't take care of putting every spot into
a sensitive (which is recommended in a "serious"
parameterisation !).
Those two models trigger their parameterisation
on the first step the particle does in the envelope,
but it would be perfectly possible to wait that the
particle is far enough from the boundary of the envelope
for example.
o Par01PiModel: just there to show how a parameterisation
can create secondaries, but not used.
o Par01DetectorConstruction::Construct: in this method, the parameterisation
models are built and bound to envelopes:
o Par01EMShowerModel is bound to the electromagnetic
calorimeter
o Par01PionShowerModel is bound to a ghost volume
which encompasses the electromagnetic and
hadronic calorimters
o The Physics list used is FTFP_BERT which is augmented using the
G4FastSimulationPhysics physics constructor to insert the
G4FastSimulationManagerProcess that is making the interface
between the fast simulation and the tracking.
The configuration is shown in examlePar01.cc.
@@ -1,8 +1,4 @@
///\file "parameterisations/Par01/.README.txt"
///\brief Example Par01 README page
/*! \page ExamplePar01 Example Par01
\page ExamplePar01 Example Par01
Example Par01 provides examples of the use of parameterisation facilities.
It was moved in extended examples from novice/N05 with removal of
@@ -48,12 +44,6 @@ The particularities are:
- Par01PiModel: just there to show how a parameterisation
can create secondaries, but not used. \n\n
- Par01PhysicsList::AddParameterisation(). A method which
sets the G4FastSimulationManagerProcess in the process
manager of all the particles. This process provides
the INTERFACE between the tracking and the parameterisation
models. \n\n
- In Par01DetectorConstruction::Construct(): the parameterisation
models are built and bound to envelopes: \n\n
@@ -62,15 +52,11 @@ The particularities are:
- Par01PionShowerModel is bound to a ghost volume
which encompasses the electromagnetic and
hadronic calorimters \n\n
hadronic calorimeters \n\n
- The Physics list used is FTFP_BERT which is augmented using the
- The physics list used is FTFP_BERT which is augmented using the
G4FastSimulationPhysics physics constructor to insert the
G4FastSimulationManagerProcess that is making the interface
between the fast simulation and the tracking.
The configuration is shown in examlePar01.cc.
*/
The configuration is shown in main() in examplePar01.cc.
@@ -23,12 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/examplePar01.cc
/// \brief Main program of the Par01 example
//
//
//
//
/// \file examplePar01.cc
/// \brief Main program of the parameterisations/Par01 example
// --------------------------------------------------------------
// Geant4 - examplePar01
// --------------------------------------------------------------
File diff suppressed because it is too large Load Diff
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
/// \file Par01ActionInitialization.hh
/// \brief Definition of the Par01ActionInitialization class
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01CalorimeterHit.hh
/// \file Par01CalorimeterHit.hh
/// \brief Definition of the Par01CalorimeterHit class
//
//
//
#ifndef Par01CalorimeterHit_h
#define Par01CalorimeterHit_h 1
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01CalorimeterSD.hh
/// \file Par01CalorimeterSD.hh
/// \brief Definition of the Par01CalorimeterSD class
//
//
//
#ifndef Par01CalorimeterSD_h
#define Par01CalorimeterSD_h 1
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01DetectorConstruction.hh
/// \file Par01DetectorConstruction.hh
/// \brief Definition of the Par01DetectorConstruction class
//
//
//
#ifndef Par01DetectorConstruction_h
#define Par01DetectorConstruction_h 1
@@ -23,12 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01EMShowerModel.hh
/// \file Par01EMShowerModel.hh
/// \brief Definition of the Par01EMShowerModel class
//
//
//
//
//----------------------------------------------
// Parameterisation of e+/e-/gamma producing hits
// The hits are the same as defined in the detailed
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01EnergySpot.hh
/// \file Par01EnergySpot.hh
/// \brief Definition of the Par01EnergySpot class
//
//
//
#ifndef Par01EnergySpot_h
#define Par01EnergySpot_h
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01ParallelWorldForPion.hh
/// \file Par01ParallelWorldForPion.hh
/// \brief Definition of the Par01ParallelWorldForPion class
//
//
//
#ifndef Par01ParallelWorldForPion_hh
#define Par01ParallelWorldForPion_hh
@@ -23,12 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01PiModel.hh
/// \file Par01PiModel.hh
/// \brief Definition of the Par01PiModel class
//
//
//
//
//----------------------------------------
// Simple example of a "parameterisation".
//----------------------------------------
@@ -23,12 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01PionShowerModel.hh
/// \file Par01PionShowerModel.hh
/// \brief Definition of the Par01PionShowerModel class
//
//
//
//
//----------------------------------------------
// Parameterisation for pi+/pi- producing hits.
//----------------------------------------------
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/include/Par01PrimaryGeneratorAction.hh
/// \file Par01PrimaryGeneratorAction.hh
/// \brief Definition of the Par01PrimaryGeneratorAction class
//
//
//
#ifndef Par01PrimaryGeneratorAction_h
#define Par01PrimaryGeneratorAction_h 1
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
/// \file Par01ActionInitialization.cc
/// \brief Implementation of the Par01ActionInitialization class
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01CalorimeterHit.cc
/// \file Par01CalorimeterHit.cc
/// \brief Implementation of the Par01CalorimeterHit class
//
//
//
#include "Par01CalorimeterHit.hh"
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01CalorimeterSD.cc
/// \file Par01CalorimeterSD.cc
/// \brief Implementation of the Par01CalorimeterSD class
//
//
//
#include "Par01CalorimeterSD.hh"
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01DetectorConstruction.cc
/// \file Par01DetectorConstruction.cc
/// \brief Implementation of the Par01DetectorConstruction class
//
//
//
#include "Par01DetectorConstruction.hh"
#include "Par01CalorimeterSD.hh"
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01EMShowerModel.cc
/// \file Par01EMShowerModel.cc
/// \brief Implementation of the Par01EMShowerModel class
//
//
//
#include "Par01EMShowerModel.hh"
#include "Par01EnergySpot.hh"
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01EnergySpot.cc
/// \file Par01EnergySpot.cc
/// \brief Implementation of the Par01EnergySpot class
//
//
//
#include "Par01EnergySpot.hh"
#include "G4Colour.hh"
@@ -23,10 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01ParallelWorldForPion.cc
/// \file Par01ParallelWorldForPion.cc
/// \brief Implementation of the Par01ParallelWorldForPion class
//
//
#include "Par01ParallelWorldForPion.hh"
#include "Par01PionShowerModel.hh"
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01PiModel.cc
/// \file Par01PiModel.cc
/// \brief Implementation of the Par01PiModel class
//
//
//
#include "Par01PiModel.hh"
#include "G4Gamma.hh"
@@ -23,11 +23,9 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01PionShowerModel.cc
/// \file Par01PionShowerModel.cc
/// \brief Implementation of the Par01PionShowerModel class
//
//
//
#include "Par01PionShowerModel.hh"
#include "Par01EnergySpot.hh"
@@ -23,11 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file Par01/src/Par01PrimaryGeneratorAction.cc
/// \file Par01PrimaryGeneratorAction.cc
/// \brief Implementation of the Par01PrimaryGeneratorAction class
//
//
//
#include "Par01PrimaryGeneratorAction.hh"