Version:
[ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]
1 This is an example that aims to test the treatment of decays in Geant4.
2 In particular, we want to test the decays of the tau lepton, charmed and
3 bottom hadrons, and the use of pre-assigned decays.
4
5 Note that pre-assigned decays are decays that are usually specified by
6 Monte Carlo event generators. For simplicity, and to avoid dependencies
7 on external code, in this test we don't use any MC generator, and we
8 pre-assign decays by hand (using the Geant4 decay table: this is done
9 in the method SteppingAction::UserSteppingAction). But this does not
10 change anything regarding the testing of the pre-assignment mechanism
11 of Geant4.
12
13 The set-up is very simple: a cylindrical layer, 2 meter long, whose radii
14 (inner and outer) and material can be specified via UI commands. By default,
15 the material is Beryllium, with inner radius of 9 mm and outer radius of
16 11 mm (i.e. the default thickness is 2 mm). In the rest of the world volume,
17 is filled with G4_Galactic material (i.e. very low density gas).
18 There is an uniform and constant magnetic field along the z-axis, whose
19 value is set via UI command.
20
21 The primary particle, tau- by default, is shot along the x-axis, starting
22 from the center (0, 0, 0).
23 Its kinetic energy, by default 500 GeV, can be set via UI command.
24
25 All secondaries are killed immediately, so only the primary particle
26 is studied.
27
28 The only interesting part of this example is the SteppingAction.
29 The decay of the primary particle is pre-assigned there.
30 When the primary particle decays, the properties of the decay -
31 position, momentum, energy, etc. of the particle at the moment
32 of the decay - are collected and then used to:
33 - compute the difference between the "MC-truth" decay radius
34 (defined as the radius at which the primary would have decayed
35 if there were no magnetic field and interactions with matter,
36 i.e. no energy loss and no multiple scattering) and the real
37 decay radius
38 - compute the angular deflection (in degrees) between the initial
39 direction of the primary and its final direction at the moment
40 it decays
41 - the energy loss (i.e. the difference between the initial kinetic energy
42 of the primary and the its kinetic energy at the moment of the decay)
43 - the energy-momentum violation of the decay (i.e. the difference between
44 the sum of the 4-momenta of the decay products and the 4-momentum of
45 primary particle at the moment of its decay).
46 Some of these information are printed out for each decay, and a summary
47 statistics is printed out at the end of the application.
48
49 Look for the string "***LOOKHERE***" for those parameters/options that
50 are hardwired in the code (i.e. not available via UI command).
51
52 This example uses the physics list factory, therefore you can specify
53 the reference physics list you want to use via the PHYSLIST
54 environmental variable (by default, if you don't set it, the FTFP_BERT
55 physics list is used).
56
57 To build this example:
58
59 mkdir Build; cd Build
60 cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
61 -DGeant4_DIR=/path-to-geant4-libraries ../.
62 make
63
64 To run it:
65
66 ./Hadr10 hadr10.in
67
68 which shoots 500 GeV TeV particles - one run of 10'000 events for each
69 type of particle - along the x-axis, and print out some information
70 regarding their decays, as well as some summary information at the end
71 of each run.