1 | |
---|
2 | ============================================================== |
---|
3 | Geant4 - an Object-oriented Toolkit for Simulation HEP |
---|
4 | ============================================================== |
---|
5 | |
---|
6 | Rich Detector for LHCb |
---|
7 | ---------------------------------- |
---|
8 | |
---|
9 | This example is intended to simulate the TestBeam Setup of the Rich detector |
---|
10 | at the LHCb to test the performance of the aerogel radiator. |
---|
11 | The goal of the Rich is the proper identification of charged particles |
---|
12 | in a momentum range of 1-150 GeV/c and to assist in the separation of |
---|
13 | signal and background. |
---|
14 | |
---|
15 | |
---|
16 | 1. GEOMETRY DEFINITION |
---|
17 | ----------------------------- |
---|
18 | |
---|
19 | It consists on 2 detector; RICH1, RICH2 which have to cover |
---|
20 | the full LHCb momentum range: |
---|
21 | |
---|
22 | RICH1: Aerogel 2 to 10 GeV/c |
---|
23 | C4F10 < 70 GeV/c |
---|
24 | |
---|
25 | RICH2: CF4 < 150 GeV/c |
---|
26 | |
---|
27 | |
---|
28 | The geometry (defined inside RichDetectorConstruction class) consists of |
---|
29 | 4 Hpd, a target containing the aerogel and a spherical mirror. |
---|
30 | The TestbeamSetUp is related to changes in teils, distances between elements |
---|
31 | of the testbeam and types. All the possible configurations are considered |
---|
32 | by a loop inside the MaterialParameters class. |
---|
33 | |
---|
34 | |
---|
35 | 2. AN EVENT: THE PRIMARY GENERATOR |
---|
36 | ------------------------------------- |
---|
37 | |
---|
38 | The primary kinematic consists of a single charge particle (normally pions) |
---|
39 | which is sent towards the target producing a rain of photons reflected and |
---|
40 | focused by the spherical mirrors and recolected after in the Hpd. |
---|
41 | |
---|
42 | The aim of the testbeam is to perform resolutions measurements with |
---|
43 | and without the aerogel to probe the improvement of its use. Comparisons |
---|
44 | between simulation and data are performed to determine the angle defined |
---|
45 | between the simmetry axis of the system (axis z) and the distance to the |
---|
46 | interaction point of the produced photons in the Hpd. |
---|
47 | |
---|
48 | The information related to type of particles to be sent, their energy |
---|
49 | and directions is included inside the PrimaryGeneratorAction class. |
---|
50 | These parameters can be changed interactively using an extern macro |
---|
51 | (run1.mac). It is recomended the use of such macro for changes because |
---|
52 | it avoids further compilations. |
---|
53 | |
---|
54 | A RUN is a set of events. |
---|
55 | |
---|
56 | |
---|
57 | 3. VISUALIZATION |
---|
58 | -------------------- |
---|
59 | |
---|
60 | The Visualization manager is set in the main(). |
---|
61 | Before running events, the visualization must be initialized by: |
---|
62 | |
---|
63 | > /control/execute/vis.mac |
---|
64 | |
---|
65 | The detector has longitudinal view of the geometry as default. |
---|
66 | |
---|
67 | The tracks are drawn at the end of event, and erased at the end of the run. |
---|
68 | |
---|
69 | |
---|
70 | 4. PHYSICS DEMO |
---|
71 | ---------------- |
---|
72 | |
---|
73 | The particles type and physics processes which will be available in |
---|
74 | this example are set in PhysicsList class. |
---|
75 | |
---|
76 | In addition a built-in interactive command (process/inactivate proname) |
---|
77 | allows to activate/inactivatethe processes one by one. |
---|
78 | |
---|
79 | 5. HOW TO START? |
---|
80 | ----------------- |
---|
81 | |
---|
82 | - compile and link to generate an executable |
---|
83 | % cd geant4/examples/advanced/Rich/ |
---|
84 | % gmake |
---|
85 | |
---|
86 | - execute the program in 'batch' mode from macro files |
---|
87 | % RichTbSim run1.mac |
---|
88 | |
---|
89 | - execute tests in 'interactive mode' |
---|
90 | % RichTbSim |
---|
91 | ..... |
---|
92 | |
---|
93 | Idle> type your commands |
---|
94 | ..... |
---|
95 | Idle> exit |
---|
96 | |
---|
97 | |
---|
98 | 6. HISTOGRAMS |
---|
99 | --------------- |
---|
100 | |
---|
101 | This example produces 7 histograms (saved as rich.his generated automatically |
---|
102 | during the running time) which illustrate the final state of the most important |
---|
103 | information of the example: |
---|
104 | |
---|
105 | histo1 --> Number of Photon Hits per Track |
---|
106 | histo2 --> Number of Photons before Mirror |
---|
107 | histo3 --> WaveLength of Photons before Mirror |
---|
108 | histo4 --> WaveLength of Photons after Mirror |
---|
109 | histo5 --> Cherekov Angle at roduction all angles |
---|
110 | histo6 --> Z of the Photon Emission Point |
---|
111 | histo7 --> Cherenkov Ring Radius |
---|
112 | |
---|
113 | See their definition on AnalysisManager. |
---|
114 | |
---|
115 | Note that histograms are disabled via the flag G4ANALYSIS_USE in GNUmakefile. |
---|
116 | |
---|
117 | |
---|
118 | 7. Using the PI implementation of the AIDA histograms: |
---|
119 | ------------------------------------------------------ |
---|
120 | |
---|
121 | In order to setup the proper environmental variables, needed for |
---|
122 | running AIDA / PI , run the script: |
---|
123 | |
---|
124 | --- For c-shell : source setupAidaPi.csh |
---|
125 | |
---|
126 | --- For bash-shell : . setupAidaPi.sh |
---|
127 | |
---|
128 | Notice that you need g++ 3.2 or 3.23. |
---|
129 | |
---|