DepositionCosmics
Status | Functional |
Maintainers |
Simon Spannagel (simon.spannagel@cern.ch) |
Output Objects |
DepositedCharge MCParticle MCTrack |
Description
This module simulates cosmic ray particle shower distributions and their energy deposition in all sensors of the setup. The cosmic ray particle showers are simulated using the Cosmic-ray shower generator (CRY) [@cry], the generated particles are transported through the setup by Geant4. More detailed information about CRY can be found in its physics description [@cryphysics] and user manual [@crymanual].
This module inherits functionality from the DepositionGeant4 module and several of its parameters have their origin there.
A detailed description of these configuration parameters can be found in the respective module documentation.
The parameter number_of_particles
here refers to full shower developments instead of individual particles, there can be multiple particles per shower.
The number of electron/hole pairs created by a given energy deposition is calculated using the mean pair creation energy [@chargecreation], fluctuations are modeled using a Fano factor assuming Gaussian statistics [@fano].
Default values of both parameters for different sensor materials are included and automatically selected for each of the detectors. A full list of supported materials can be found elsewhere in the manual.
These can be overwritten by specifying the parameters charge_creation_energy
and fano_factor
in the configuration.
The coordinate system for this module defines the z
axis orthogonal to the earth surface, pointing upwards.
This means shower particles travel along the negative z
axis and all detectors should be placed below the incidence plane at z = 0
.
The area on which incident particles will be simulated is automatically inferred from the total setup size, and the next larger set of tabulated data available is selected.
Data are tabulated for areas of 1m, 3m, 10m, 30m, 100m, and 300m. Particles outside the selected window are dropped.
The first shower particle arriving in the event has a timestamp of 0ns
, all subsequent particles of the same shower have the appropriate spacing in time.
It should be noted that the time difference between the arrival of different particles of the same shower can amount up to hundreds of microseconds.
If this behavior is not desired, all particle timestamps can be forced to 0ns
by enabling the reset_particle_time
switch.
The total time elapsed in the CRY simulation for the given number of showers is stored in the module configuration under the key total_time_simulated
. If the ROOTObjectWriter is used to store the simulation result, this value is available from the output file.
In other cases, the value can be obtained from the log output of the run.
Dependencies
This module inherits from and therefore requires the DepositionGeant4 module as well as an installation Geant4.
Parameters
data_path
: Directory to read the tabulated input data for the CRY framework from. By default, this is the standard installation path of the data files shipped with the framework.reset_particle_time
: Boolean to force resetting all particle timestamps to0ns
, even from different particles from the same shower. Defaults tofalse
, i.e. the first particle of a shower bears a timestamp of0ns
and all subsequent particles retain their time difference to the first one.
Relevant parameters inherited from DepositionGeant4
physics_list
: Geant4-internal list of physical processes to simulate, defaults to FTFP_BERT_LIV. More information about possible physics list and recommendations for defaults are available on the Geant4 website [@g4physicslists].enable_pai
: Determines if the Photoabsorption Ionization model is enabled in the sensors of all detectors. Defaults to false.pai_model
: Model can be pai for the normal Photoabsorption Ionization model or paiphoton for the photon model. Default is pai. Only used if enable_pai is set to true.charge_creation_energy
: Energy needed to create a charge deposit. Defaults to the energy needed to create an electron-hole pair in the respective sensor material (e.g. 3.64 eV for silicon sensors, [@chargecreation]). A full list of supported materials can be found elsewhere in the manual.fano_factor
: Fano factor to calculate fluctuations in the number of electron/hole pairs produced by a given energy deposition. Defaults are provided for different sensor materials, e.g. a value of 0.115 for silicon [@fano]. A full list of supported materials can be found elsewhere in the manual.max_step_length
: Maximum length of a simulation step in every sensitive device. Defaults to 1um.range_cut
: Geant4 range cut-off threshold for the production of gammas, electrons and positrons to avoid infrared divergence. Defaults to a fifth of the shortest pixel feature, i.e. either pitch or thickness.cutoff_time
: Maximum lifetime of particles to be propagated in the simulation. This setting is passed to Geant4 as user limit and assigned to all sensitive volumes. Particles and decay products are only propagated and decayed up the this time limit and all remaining kinetic energy is deposited in the sensor it reached the time limit in. Defaults to 221s (to ensure proper gamma creation for the Cs137 decay). Note: Neutrons have a lifetime of 882 seconds and will not be propagated in the simulation with the defaultcutoff_time
.number_of_particles
: Number of cosmic ray showers to generate in a single event. Defaults to one.output_plots
: Enables output histograms to be generated from the data in every step (slows down simulation considerably). Disabled by default.output_plots_scale
: Set the x-axis scale of the output plot, defaults to 100ke.
CRY Framework Parameters
latitude
: Latitude for which the incident particles from cosmic ray showers should be simulated. Should be between90.0
(north pole) and-90.0
(south pole). Defaults to53.0
(DESY).date
: Date for the simulation to account for the 11-year cycle of solar activity and related change in cosmic ray flux. Should be given as string in the formmonth-day-year
and defaults to the last day of 2020, i.e.12-31-2020
.return_neutrons
: Boolean to select whether neutrons should be returned to Geant4. Defaults totrue
.return_protons
: Boolean to select whether protons should be returned to Geant4. Defaults totrue
.return_gammas
: Boolean to select whether gammas should be returned to Geant4. Defaults totrue
.return_electrons
: Boolean to select whether electrons should be returned to Geant4. Defaults totrue
.return_muons
: Boolean to select whether muons should be returned to Geant4. Defaults totrue
.return_pions
: Boolean to select whether pions should be returned to Geant4. Defaults totrue
.return_kaons
: Boolean to select whether kaons should be returned to Geant4. Defaults totrue
.altitude
: Altitude for which the shower particles should be simulated. Possible values are0m
,2100m
and11300m
, defaults to sea level, i.e.0m
. It should be noted that the particle incidence plane is always located atz = 0
independent of the simulated altitude.min_particles
: Minimum number of particles required for a shower to be considered. Defaults to1
.max_particles
: Maximum number of particles in a shower before additional particles are cut off. Defaults to100000
area
: Side length of the squared area for which incident particles are simulated. This can maximally be300m
. By default, the maximum size is automatically derived from the dimensions of the detector setup of the current simulation.
Usage
[DepositionCosmics]
physics_list = FTFP_BERT_LIV
number_of_particles = 2
max_step_length = 10.0um
return_kaons = false
altitude = 0m
Licenses
CRY is published under a 3-Clause BSD-like license, which is available in the file cry/COPYRIGHT.TXT
.
The original software can be obtained from https://nuclear.llnl.gov/simulation/.