1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
2 | %%% magic-tdas.tex -- template to write MAGIC-TDAS documents
|
---|
3 | %%%-----------------------------------------------------------------
|
---|
4 | %%% Kopyleft (K) 2000 J C Gonzalez
|
---|
5 | %%% Max-Planck-Institut fuer Physik,
|
---|
6 | %%% Foehringer Ring 6, 80805 Muenchen, Germany
|
---|
7 | %%% E-mail: gonzalez@mppmu.mpg.de
|
---|
8 | %%%-----------------------------------------------------------------
|
---|
9 | %%% This program is free software; you can redistribute, copy,
|
---|
10 | %%% modify, use it and its documentation for any purpose,
|
---|
11 | %%% provided that the above copyright notice appear in all
|
---|
12 | %%% copies and that both that copyright notice and this
|
---|
13 | %%% permission notice appear in supporting documentation.
|
---|
14 | %%%
|
---|
15 | %%% This piece of code is distributed in the hope that it will
|
---|
16 | %%% be useful, but WITHOUT ANY WARRANTY; without even the
|
---|
17 | %%% implied warranty of FITNESS FOR A PARTICULAR PURPOSE.
|
---|
18 | %%%
|
---|
19 | %%% Although you can actually do whatever you want with this
|
---|
20 | %%% file (following the copyright notice above), your are
|
---|
21 | %%% strongly encouraged NOT to edit directly this file.
|
---|
22 | %%% Instead, make a copy and edit the copy for your purposes.
|
---|
23 | %%%
|
---|
24 | %%% Modifying thie original file means that you actually have
|
---|
25 | %%% the (very basic) knowledge needed to make things by your
|
---|
26 | %%% own, and therefore... you will not get _any_ additional
|
---|
27 | %%% support :-)
|
---|
28 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
29 | %%% Last update: Time-stamp: <Thu Mar 2 09:31:41 CET 2000>
|
---|
30 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
31 | %
|
---|
32 | \documentclass[12pt]{article}
|
---|
33 |
|
---|
34 | \usepackage{magic-tdas}
|
---|
35 |
|
---|
36 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
37 | %% BEGIN DOCUMENT
|
---|
38 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
39 | \begin{document}
|
---|
40 |
|
---|
41 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
42 | %% Please, for the formatting just include here the standard
|
---|
43 | %% elements: title, author, date, plus TDAScode
|
---|
44 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
45 | \title{ The Reflector simulation program v.0.5 }
|
---|
46 | \author{A.Moralejo\\
|
---|
47 | \texttt{<moralejo@pd.infn.it>}}
|
---|
48 | \date{June 04, 2002\\}
|
---|
49 | \TDAScode{MAGIC-TDAS 02-05\\ 020604/AMoralejo}
|
---|
50 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
51 |
|
---|
52 | %% title %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
53 | \maketitle
|
---|
54 |
|
---|
55 | %% abstract %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
56 | \begin{abstract}
|
---|
57 | In this document we provide a brief description of Reflector program
|
---|
58 | (version 0.5) and a guide to install and run it.
|
---|
59 | \end{abstract}
|
---|
60 |
|
---|
61 | %% contents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
62 | \thetableofcontents
|
---|
63 |
|
---|
64 | \newpage
|
---|
65 |
|
---|
66 | %% body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
67 |
|
---|
68 | %------------------------------------------------------------
|
---|
69 | \section{Introduction}
|
---|
70 |
|
---|
71 | The Reflector program was originally written by Jose Carlos Gonz\'alez
|
---|
72 | and then improved by Harald Kornmayer. In September 2001 D. Bastieri
|
---|
73 | and C. Bigongiari released a new version (v.0.4) to adapt it to a
|
---|
74 | format change in the MMCS output. The Reflector program reads in MMCS
|
---|
75 | output files (cerxxxxxx files from corsika) and writes an output file
|
---|
76 | with the information about all the photons which reach the telescope
|
---|
77 | focal plane (taking into account atmospheric and mirror absorption)
|
---|
78 | and which are within the camera radius defined in the file
|
---|
79 | {\bf magic.def}.
|
---|
80 |
|
---|
81 | %------------------------------------------------------------
|
---|
82 | \section{Description of simulation}
|
---|
83 |
|
---|
84 | The main steps of the simulation are:
|
---|
85 |
|
---|
86 | \begin{enumerate}
|
---|
87 |
|
---|
88 | \item Atmospheric absorption.
|
---|
89 |
|
---|
90 | \item Checking if the photon hits the dish.
|
---|
91 |
|
---|
92 | \item Aluminum absorption.
|
---|
93 |
|
---|
94 | \item Determination of the mirror hitted.
|
---|
95 |
|
---|
96 | \item Mirror reflection.
|
---|
97 |
|
---|
98 | \item Checking if the photon is inside the camera borders.
|
---|
99 |
|
---|
100 | \item Calculation of photon arrival time on camera.
|
---|
101 |
|
---|
102 | \end{enumerate}
|
---|
103 |
|
---|
104 | The reflection of each mirror element is simulated in a realistic way
|
---|
105 | by introducing a gaussian spread of the reflected photons positions on
|
---|
106 | the camera plane. The sigma of this PSF is defined via the
|
---|
107 | {\bf point\_spread} parameter in the telescope description file {\bf
|
---|
108 | magic.def}, and has a value of 0.5 cm, which corresponds approximately
|
---|
109 | to the quality of the MAGIC mirrors produced up to date. Also the
|
---|
110 | possible misalignment of mirror elements is simulated (see section
|
---|
111 | \ref{neededfiles}).
|
---|
112 |
|
---|
113 | \section{Notes on version 0.5}
|
---|
114 |
|
---|
115 | \begin{enumerate}
|
---|
116 |
|
---|
117 | \item An error was found by T. Hengstebeck in step 2 (see above) in version
|
---|
118 | 0.4. This was the main reason for the release of this corrected
|
---|
119 | version 0.5. The error was in {\bf ph2cph.c}, and was a confusion between
|
---|
120 | {\it CORSIKA}'s coordinate system and the coordinate system of the
|
---|
121 | telescope. The error had no effect when the telescope was pointing at
|
---|
122 | zenith, but resulted on a loss of photons (which should have been
|
---|
123 | reflected), which became larger with increasing $\theta$. The
|
---|
124 | fractions of lost photons were negligible up to $\theta \simeq
|
---|
125 | 10^\circ$ and then 0.006, 0.012, 0.019, 0.070, 0.286, 0.433
|
---|
126 | respectively for $\theta = $ 15, 20, 25, 40, 60 and $70^\circ$.
|
---|
127 |
|
---|
128 | \item NEW VARIABLES: some variables which were unused in the event
|
---|
129 | header of the output have changed meaning to incorporate
|
---|
130 | some relevant items. The header size is the same as before, so this
|
---|
131 | output files will be readable by all {\bf camera} versions at least up
|
---|
132 | to 0.5. The twelve new variables (see header structure in section
|
---|
133 | \ref{out}) are the following:
|
---|
134 | %
|
---|
135 | \begin{itemize}
|
---|
136 | \item {\bf TelescopePhi, TelescopeTheta:} telescope orientation chosen in
|
---|
137 | the input card (in degrees).
|
---|
138 | \item {\bf ViewConeRadius:} if ViewConeRadius $> 0$, indicates the outer radius
|
---|
139 | of the viewing cone chosen in {\it CORSIKA} via the \texttt{VIEWCONE}
|
---|
140 | option for the random generation of the of the primaries' incidence
|
---|
141 | directions. The inner radius is assumed 0, and the direction around
|
---|
142 | which the cone is defined is given by the header variables {\bf ThetaMin},
|
---|
143 | {\bf PhiMin} (which equal in that case {\bf ThetaMax}, {\bf PhiMax}). The
|
---|
144 | \texttt{VIEWCONE} option should be the standard for MAGIC MC
|
---|
145 | generation in the case of hadronic primaries. However, if ViewConeRadius
|
---|
146 | is 0, it will mean that the \texttt{VIEWCONE} option has not been used and
|
---|
147 | the generation of directions has been done in a ``square'' sky window
|
---|
148 | {\bf (PhiMin, PhiMax), (ThetaMin, ThetaMax)}, as in older versions of
|
---|
149 | {\it CORSIKA}.
|
---|
150 | \item {\bf num\_mirrors:} total number of mirrors in the dish. For
|
---|
151 | {\it historical} reasons we are using as default a dish with 920
|
---|
152 | mirrors. This should perhaps be updated in the future to the final
|
---|
153 | design with (may be) 956 mirrors. It is not a very critical detail,
|
---|
154 | since the only difference will be a global change in the amount of
|
---|
155 | light reaching the camera, and this amount depends also on other
|
---|
156 | factors like mirror reflectivity (which in the real telescope will
|
---|
157 | change with time).
|
---|
158 | \item {\bf mean\_reflectivity:} mean value of the mirror reflectivity values
|
---|
159 | in the range 270 - 610 nm, as read from the input file
|
---|
160 | {\bf reflectivity.dat}. No spectral weighting is done on this mean, since at
|
---|
161 | the time of the calculation the Cherenkov spectrum is not known by the
|
---|
162 | program. In principle, we will still use a constant reflectivity value of 0.9,
|
---|
163 | independent of wavelength, but this may change in the future to render
|
---|
164 | the simulation more realistic.
|
---|
165 | \item {\bf longi\_Nmax, logi\_t0, longi\_tmax, longi\_a, longi\_b, longi\_c,
|
---|
166 | longi\_chi2:} longitudinal charged particle distribution
|
---|
167 | parameters and $\chi^2$ of the fit. See {\it CORSIKA} manual for
|
---|
168 | precise meaning of these (which changed slightly from version
|
---|
169 | 5.61 onwards). The most important of them is {\bf longi\_tmax}, the
|
---|
170 | atmospheric depth (in g/cm$^2$) of the shower maximum.
|
---|
171 | \end{itemize}
|
---|
172 | %
|
---|
173 | \item We added an option to tell the Reflector program where (in
|
---|
174 | {\it CORSIKA}'s
|
---|
175 | coordinates) the telescope should be placed (see section
|
---|
176 | \ref{opt}). This is important because the cerxxxxxx files contain only
|
---|
177 | the photons which reach the ground
|
---|
178 | near the telescope (in the standard mode of production for MAGIC,
|
---|
179 | those hitting a sphere of 20 m diameter centered on the telescope),
|
---|
180 | and the previous versions of Reflector only worked if the
|
---|
181 | telescope was placed at its default position (0,0). For certain
|
---|
182 | studies it is sometimes necessary to shift the telescope to a
|
---|
183 | different position (for instance, to generate showers with impact
|
---|
184 | point fixed with respect to the telescope).
|
---|
185 |
|
---|
186 | \item In the magic.def file which comes with Reflector\_0.5 the value of the
|
---|
187 | parameter {\bf camera\_width} (radius around the center of the camera
|
---|
188 | beyond which the photons are not written to the Reflector output file)
|
---|
189 | has been changed from 100 to 70 cm, which allows to reduce the size of
|
---|
190 | the output files, while it is a value safe enough to keep all the
|
---|
191 | photons needed by the camera program.
|
---|
192 |
|
---|
193 | \item Removed some useless bits of code: in previous versions a
|
---|
194 | binary file, {\bf magic.def.mirr}, containing the mirror data was
|
---|
195 | created once the ASCII file {\bf magic.def} was read. Later, everytime the
|
---|
196 | Reflector was run, it read the mirror data from magi.def.mirr. Now
|
---|
197 | magic.def.mirr has been suppressed and the data are always read from
|
---|
198 | magic.def. Another obsolete file, {\bf focals.dat} has been removed
|
---|
199 | from the {\bf Data/} directory.
|
---|
200 |
|
---|
201 | \end{enumerate}
|
---|
202 |
|
---|
203 | %------------------------------------------------------------
|
---|
204 | \section{How to Install Reflector Program \label{installation}}
|
---|
205 |
|
---|
206 | You can get the current version of the Reflector Program from the
|
---|
207 | MAGIC web page: \\
|
---|
208 | {\bf http://hegra1.mppmu.mpg.de/MAGICWeb/ }\\
|
---|
209 | You can find
|
---|
210 | the latest public version of this program as tarred gzipped file in
|
---|
211 | the Monte Carlo Download area (you need the usual password). You have to
|
---|
212 | download the file reflector\_0.5.tar.gz and then follow the
|
---|
213 | instructions below:
|
---|
214 |
|
---|
215 | \begin{description}
|
---|
216 | \item[Decompress the file using:]
|
---|
217 | gunzip reflector*.tar.gz
|
---|
218 | \item[Unpack the tar file with:]
|
---|
219 | tar xvf reflector*.tar
|
---|
220 | \item[Make symbolic links running the script:]
|
---|
221 | refl-install
|
---|
222 | \item[Go to the directory where the source files are:]
|
---|
223 | cd MagicProgs/Simulation/Detector/Reflector\_0.5/
|
---|
224 | \item[Check if all dependencies are fulfilled:]
|
---|
225 | make depend
|
---|
226 | \item[Compile the program:]
|
---|
227 | make
|
---|
228 | \end{description}
|
---|
229 |
|
---|
230 | If everything goes right you should have an executable file called
|
---|
231 | {\bf reflector}.
|
---|
232 |
|
---|
233 | %------------------------------------------------------------
|
---|
234 | \section{How to Run Reflector Program \label{running}}
|
---|
235 |
|
---|
236 | You need a steering card to run the Reflector program. You can find an
|
---|
237 | example in the {\bf MagicProgs/Simulation/Detector/Reflector\_0.5/input.card}
|
---|
238 | file. You have to modify this file according to your needs (see below
|
---|
239 | for instructions about steering card) and then run the program with the
|
---|
240 | following statement:\\
|
---|
241 |
|
---|
242 | \hspace{1cm}{\bf reflector $<$ input.card}
|
---|
243 |
|
---|
244 | %------------------------------------------------------------
|
---|
245 | \section{Needed Files \label{neededfiles}}
|
---|
246 |
|
---|
247 | The Reflector program needs some other files to run. These files are
|
---|
248 | the following:
|
---|
249 | \begin{itemize}
|
---|
250 | \item {\bf magic.def}: contains the description of MAGIC telescope
|
---|
251 | geometry, together with some other parameters needed by the Reflector
|
---|
252 | program.
|
---|
253 | \item {\bf axisdev.dat}: contains data to simulate the possible
|
---|
254 | deviation of the spot of each single mirror on the camera plane due
|
---|
255 | to its non perfect alignment. The values are x, y coordinates
|
---|
256 | distributed at random (according to a gaussian with $\sigma \simeq
|
---|
257 | 0.5$ cm).
|
---|
258 | \item {\bf reflectivity.dat}: contains the mirror reflectivity index as
|
---|
259 | a function of the wavelength.
|
---|
260 | \end{itemize}
|
---|
261 |
|
---|
262 | All these files are usually in the {\bf
|
---|
263 | MagicProgs/Simulation/Detector/Data/} directory and in principle you
|
---|
264 | should {\bf not} make any change in them.
|
---|
265 |
|
---|
266 | %------------------------------------------------------------
|
---|
267 | \section{Steering Card}
|
---|
268 |
|
---|
269 | The steering card sets all the parameters and options
|
---|
270 | to steer the reflection simulation. Each line of the steering card is
|
---|
271 | a statement with its parameters, if it is the case. Lines beginning
|
---|
272 | with \# are considered comments. The Reflector program parses all the
|
---|
273 | lines sequentially. Then if you repeat a statement with different
|
---|
274 | options only the last one will be considered.
|
---|
275 |
|
---|
276 | \subsection{Mandatory Commands}
|
---|
277 |
|
---|
278 | \begin{description}
|
---|
279 |
|
---|
280 | \item[reflector 0.5]
|
---|
281 |
|
---|
282 | This statement must be the first line of the steering card
|
---|
283 | file. The Reflector program checks it to verify if it is reading
|
---|
284 | a steering card.
|
---|
285 |
|
---|
286 | \item[output\_file /disk99/reflex/Gamma\_0\_7\_1001to1010\_w0.rfl]
|
---|
287 |
|
---|
288 | The output\_file command specifies the name and the
|
---|
289 | path of the output file. The path can be absolute, like in the
|
---|
290 | example above, or relative. Although any name can be used,
|
---|
291 | conventionally the Reflector program
|
---|
292 | output file name has the .rfl extension, and starts with
|
---|
293 | the primary particle name. The first number indicates the
|
---|
294 | zenith angle of the incident primaries, the second one
|
---|
295 | indicates the production site (7 is for Padua) and is related
|
---|
296 | to the random number generator seed used by CORSIKA. Then the run
|
---|
297 | number range is shown (10 runs in this case, from 1001 to
|
---|
298 | 1010). Each run corresponds to 10000 showers. Finally, the
|
---|
299 | label "w0" means no wobble mode was used (telescope pointing
|
---|
300 | at the source). Alternatively, the "w+" or "w-" labels (only
|
---|
301 | in gamma files) refer to the two pointings in the
|
---|
302 | Wobble-observation mode (see TDAS 01-05 by W. Wittek).
|
---|
303 |
|
---|
304 | \item[ct\_file ../Data/magic.def]
|
---|
305 |
|
---|
306 | The ct\_file statement defines where the program can find the
|
---|
307 | telescope characteristics. The path in the example above is
|
---|
308 | correct to run reflector in
|
---|
309 | MagicProgs/Simu\-la\-tion/De\-tector/Reflector\_0.5/ directory.
|
---|
310 | If you want to run it in a different directory you have to modify the
|
---|
311 | path accordingly.
|
---|
312 |
|
---|
313 | \item[atm\_model ATM\_CORSIKA]
|
---|
314 | The atm\_model statement says to the program what kind of
|
---|
315 | atmospheric absorption model to use. Possible choices are:
|
---|
316 | ATM\_CORSIKA, ATM\_ISO\-THERMAL, ATM\_90\-PER\-CENT and
|
---|
317 | ATM\_NO\-ATMO\-SPHE\-RE.
|
---|
318 |
|
---|
319 | \item[fixed\_target 0. 90.]
|
---|
320 |
|
---|
321 | This statement fixes the telescope axis position. The first
|
---|
322 | number is the zenith angle $\theta$ (deg) while the second is
|
---|
323 | the azimuthal angle $\phi$ (deg). This corresponds to {\it
|
---|
324 | CORSIKA}'s definition of primary particle incident direction
|
---|
325 | (see {\it CORSIKA} manual). $\phi = 90^\circ$ means that the
|
---|
326 | telescope is pointing towards East (bear in mind that in {\it
|
---|
327 | CORSIKA} $(\phi, \theta)$ indicates the direction of the {\it
|
---|
328 | momentum} of the incident particle).
|
---|
329 |
|
---|
330 |
|
---|
331 | \item[cer\_files]
|
---|
332 |
|
---|
333 | All the lines following this statement are considered files to
|
---|
334 | be processed by the Reflector program, one for each line,
|
---|
335 | eventually with their paths (see the example below). Therefore this
|
---|
336 | command must be the last one.\\
|
---|
337 | \\
|
---|
338 | cer\_files\\
|
---|
339 | /disk99/cer001001\\
|
---|
340 | /disk99/cer001002\\
|
---|
341 | /disk99/cer001003\\
|
---|
342 | ........ \\
|
---|
343 | /disk99/cer001009\\
|
---|
344 | /disk99/cer001010\\
|
---|
345 | \\
|
---|
346 | The cer file name can be followed by two numbers, for example:
|
---|
347 | \\
|
---|
348 | /disk99/cer001001 376 5723\\
|
---|
349 | \\
|
---|
350 | In this case the program processes only the events between and
|
---|
351 | including the numbers given.
|
---|
352 |
|
---|
353 | \end{description}
|
---|
354 |
|
---|
355 | \subsection{Optional Commands \label{opt}}
|
---|
356 |
|
---|
357 | \begin{description}
|
---|
358 |
|
---|
359 | \item[verbose\_level 1]
|
---|
360 |
|
---|
361 | Sets the quantity of information printed out by Reflector
|
---|
362 | when running. Possible values are 0 to 4
|
---|
363 |
|
---|
364 | \item[max\_events 50000]
|
---|
365 |
|
---|
366 | Fixes the maximum number of events to process.
|
---|
367 |
|
---|
368 | \item[energy\_cuts 100 1000]
|
---|
369 |
|
---|
370 | This statement forces the Reflector to process only showers
|
---|
371 | with primary energy between the given values (GeV).
|
---|
372 |
|
---|
373 | \item[seeds n1 n2]
|
---|
374 |
|
---|
375 | Seeds for the random number generators to used by the program
|
---|
376 | for the simulation of the absorption (both in the atmosphere
|
---|
377 | and on the mirror). Default values are 3141592 and
|
---|
378 | 2718182.
|
---|
379 |
|
---|
380 | \item[telescope\_position x y]
|
---|
381 |
|
---|
382 | Option included in version 0.5 of Reflector. Usually it is
|
---|
383 | not needed, since for normal MC production for MAGIC the
|
---|
384 | telescope is placed at the origin of coordinates (0,0). But,
|
---|
385 | if for some reason, we produce cerxxxxxx files with the
|
---|
386 | telescope in a different position, we must inform the
|
---|
387 | Reflector program in the input card using this option
|
---|
388 | (otherwise Reflector will fail to {\it find} the photons
|
---|
389 | in the cer file).
|
---|
390 |
|
---|
391 | \item[reflectivity\_file /path/reflectivity.dat]
|
---|
392 |
|
---|
393 | File containing mirror reflectivity as a function of
|
---|
394 | wavelength (see section \ref{neededfiles}). If this option is
|
---|
395 | not supplied, the program will look for
|
---|
396 | ``../Data/reflectivity.dat'' as previous versions of
|
---|
397 | Reflector did.
|
---|
398 |
|
---|
399 | \item[axisdev\_file /path/axisdev.dat]
|
---|
400 |
|
---|
401 | File containing single mirror spot deviation in {\bf x} and
|
---|
402 | {\bf y} on the camera in cm (see section
|
---|
403 | \ref{neededfiles}) for each mirror. If this option is not
|
---|
404 | supplied, the program will look for ``../Data/axisdev.dat''
|
---|
405 | as previous versions of Reflector did.
|
---|
406 |
|
---|
407 | \end{description}
|
---|
408 |
|
---|
409 | %------------------------------------------------------------
|
---|
410 | \section{Output file \label{out}}
|
---|
411 |
|
---|
412 | The output file begins with some ascii lines:\\
|
---|
413 | \\
|
---|
414 | \verb"reflector 0.5" \\
|
---|
415 | \verb"START---RUN" \\
|
---|
416 | \verb"START-EVENT" \\
|
---|
417 | After the \verb"START-EVENT" flag there is a blank line and then the
|
---|
418 | binary event header, which contains the following informations (each
|
---|
419 | variable is a 4-byte float number):
|
---|
420 | \\
|
---|
421 |
|
---|
422 | \begin{tabular}{ll}
|
---|
423 |
|
---|
424 | Variable & Description \\
|
---|
425 | \hline
|
---|
426 |
|
---|
427 | EvtNumber & Event Number \\
|
---|
428 | PrimaryID & Primary particle identification code \\
|
---|
429 | Etotal & Primary particle total energy (GeV) \\
|
---|
430 | Thick0 & CORSIKA's starting altitude in g/cm2 \\
|
---|
431 | FirstTarget & CORSIKA's number of first target if fixed \\
|
---|
432 | zFirstInt & Height of first interaction in cm \\
|
---|
433 | p[3] & Primary particle momentum in x,y,-z directions (GeV) \\
|
---|
434 | Theta & Primary particle zenith angle (rad) \\
|
---|
435 | Phi & Primary particle azimuth angle (rad) \\
|
---|
436 |
|
---|
437 | NumRndSeq & Number of different CORSIKA random sequences (max. 10) \\
|
---|
438 | RndData[10][3] & RndData[i][0]: integer seed of sequence i \\
|
---|
439 | & RndData[i][1]: number of offset random calls (mod
|
---|
440 | $10^6$) of sequence i. \\
|
---|
441 | & RndData[i][2]: number of offset random calls ($/
|
---|
442 | 10^6$) of sequence i. \\
|
---|
443 |
|
---|
444 | RunNumber & Run number \\
|
---|
445 | DateRun & Date of run yymmdd \\
|
---|
446 | Corsika\_version & Version of {\it CORSIKA} \\
|
---|
447 |
|
---|
448 | NumObsLev & Number of observation levels (should be always 1 for
|
---|
449 | us) \\
|
---|
450 | HeightLev & Height of observation level in cm \\
|
---|
451 | num\_mirrors & Number of mirrors \\
|
---|
452 | mean\_reflectivity & Mean reflectivity between 270 and 610 nm \\
|
---|
453 | & \\
|
---|
454 | & 6 next variables: CORSIKA longitudinal particle fit parameters \\
|
---|
455 | & \hspace{0.5cm} (see CORSIKA manual for precise meaning and units)\\
|
---|
456 | longi\_Nmax & Numer of charged particles at maximum \\
|
---|
457 | longi\_t0 & Atmospheric depth of shower starting point (N=0) \\
|
---|
458 | longi\_tmax & Atmospheric depth of shower maximum (g/cm$^2$) \\
|
---|
459 | longi\_a & \\
|
---|
460 | longi\_b & For {\bf longi\_a}, {\bf longi\_b}, {\bf longi\_c}, see CORSIKA manual \\
|
---|
461 | longi\_c & \\
|
---|
462 | longi\_chi2 & $\chi^2/dof$ of the fit\\
|
---|
463 | & \\
|
---|
464 | SlopeSpec & Energy spectrum slope \\
|
---|
465 | ELowLim & Energy lower limit (GeV) \\
|
---|
466 | EUppLim & Energy upper limit (GeV) \\
|
---|
467 |
|
---|
468 | ThetaMin & Minimum Theta of primaries (deg) \\
|
---|
469 | ThetaMax & Maximum Theta of primaries (deg) \\
|
---|
470 | PhiMin & Minimum Phi of primaries (deg) \\
|
---|
471 | PhiMax & Maximum Phi of primaries (deg) \\
|
---|
472 |
|
---|
473 | CWaveLower & Wavelength lower limit (nm) \\
|
---|
474 | CWaveUpper & Wavelength upper limit (nm) \\
|
---|
475 | CorePos[2][20] & Core positions of randomized shower \\
|
---|
476 | TimeFirst & Arrival time on camera of first photon (ns) \\
|
---|
477 | TimeLast & Arrival time on camera of last photon (ns) \\
|
---|
478 |
|
---|
479 | & Next three variables changed meaning in version 0.5: \\
|
---|
480 |
|
---|
481 | telescopePhi & Telescope azimuth (rad). Measured from South, counter-clockwise \\
|
---|
482 | telescopeTheta & Telescope zenith angle (rad) \\
|
---|
483 |
|
---|
484 | ViewConeRadius & Outer radius (deg) in {\it CORSIKA}'s VIEWCONE
|
---|
485 | option, if used. Inner r is assumed 0.\\
|
---|
486 |
|
---|
487 |
|
---|
488 | \hline
|
---|
489 | \end{tabular}
|
---|
490 | %
|
---|
491 | \newpage
|
---|
492 | %
|
---|
493 | \begin{tabular}{ll}
|
---|
494 |
|
---|
495 | Variable & Description \\
|
---|
496 | \hline
|
---|
497 |
|
---|
498 |
|
---|
499 | CORSIKAPhs & Original photons written by {\it CORSIKA} \\
|
---|
500 | AtmAbsPhs & Photons absorbed by the atmosphere \\
|
---|
501 | MirrAbsPhs & Photons absorbed by the mirror \\
|
---|
502 | OutOfMirrPhs & Photons outside the mirror \\
|
---|
503 | BlackSpotPhs & Photons lost in the "black spot" \\
|
---|
504 | OutOfChamPhs & Photons outside the camera \\
|
---|
505 | CPhotons & Photons reaching the camera \\
|
---|
506 |
|
---|
507 | \hline
|
---|
508 | \end{tabular}
|
---|
509 |
|
---|
510 | \vspace*{1cm}
|
---|
511 | The event header is followed by 8-word blocks, one for each photon
|
---|
512 | that reaches the camera. A photon block contains the following
|
---|
513 | variables:
|
---|
514 |
|
---|
515 | \begin{tabular}{ll}
|
---|
516 | Variable & Description \\
|
---|
517 | \hline
|
---|
518 | w & Wavelength (nm) \\
|
---|
519 | x, y & Impact point in camera coordinates (cm) \\
|
---|
520 | u, v & Director cosines \\
|
---|
521 | t & Arrival time on camera (ns) \\
|
---|
522 | h & Production height (cm) \\
|
---|
523 | phi & Incidence angle with respect to camera plane (rad) \\
|
---|
524 | \hline
|
---|
525 | \end{tabular}
|
---|
526 |
|
---|
527 | After the last event photon block there is a blank line, an \verb$END---EVENT$
|
---|
528 | flag, another blank line and then the following event. After the last
|
---|
529 | event in a run it appears the flag \verb$END-----RUN$, while after every
|
---|
530 | processed runs, you can find a \verb$END----FILE$ flag.
|
---|
531 |
|
---|
532 |
|
---|
533 | %------------------------------------------------------------
|
---|
534 |
|
---|
535 | \section{Future improvements}
|
---|
536 | Possible improvements of the reflector simulation could be:
|
---|
537 | \begin{enumerate}
|
---|
538 | \item Introduce dependence of mirror reflectivity as a function of
|
---|
539 | wavelength using recent measurements performed on real mirrors.
|
---|
540 | \item Adittion of a Run header: some parameters which are the same for
|
---|
541 | each run are still kept (again for historical reasons) in the event
|
---|
542 | header. It would be better to move them to a Run header. This has not
|
---|
543 | yet been implemented in this version in order to make it compatible with
|
---|
544 | the corresponding version of the {\it camera} program. I would also
|
---|
545 | allow to include more detailed information on the used telescope
|
---|
546 | geometry (number and position of mirrors) and reflectivity (as a
|
---|
547 | function of wavelength).
|
---|
548 | \end{enumerate}
|
---|
549 | \par
|
---|
550 | Please contact \texttt{moralejo@pd.infn.it}. for suggestions on other
|
---|
551 | features to be implemented in future versions.
|
---|
552 |
|
---|
553 | \section{Appendix}
|
---|
554 |
|
---|
555 | The list of all Reflector files follows.
|
---|
556 | \begin{verbatim}
|
---|
557 |
|
---|
558 | refl-install
|
---|
559 |
|
---|
560 | MagicProgs/Simulation/Detector/Reflector_0.5/Makefile
|
---|
561 | MagicProgs/Simulation/Detector/Reflector_0.5/atm.c
|
---|
562 | MagicProgs/Simulation/Detector/Reflector_0.5/atm.h
|
---|
563 | MagicProgs/Simulation/Detector/Reflector_0.5/attenu.f
|
---|
564 | MagicProgs/Simulation/Detector/Reflector_0.5/config.mk.linux
|
---|
565 | MagicProgs/Simulation/Detector/Reflector_0.5/config.mk.linux-gnu
|
---|
566 | MagicProgs/Simulation/Detector/Reflector_0.5/config.mk.osf1
|
---|
567 | MagicProgs/Simulation/Detector/Reflector_0.5/diag.c
|
---|
568 | MagicProgs/Simulation/Detector/Reflector_0.5/diag.h
|
---|
569 | MagicProgs/Simulation/Detector/Reflector_0.5/geometry.c
|
---|
570 | MagicProgs/Simulation/Detector/Reflector_0.5/geometry.h
|
---|
571 | MagicProgs/Simulation/Detector/Reflector_0.5/header.c
|
---|
572 | MagicProgs/Simulation/Detector/Reflector_0.5/header.h
|
---|
573 | MagicProgs/Simulation/Detector/Reflector_0.5/init.c
|
---|
574 | MagicProgs/Simulation/Detector/Reflector_0.5/init.h
|
---|
575 | MagicProgs/Simulation/Detector/Reflector_0.5/input.card
|
---|
576 | MagicProgs/Simulation/Detector/Reflector_0.5/lagrange.h
|
---|
577 | MagicProgs/Simulation/Detector/Reflector_0.5/parms.c
|
---|
578 | MagicProgs/Simulation/Detector/Reflector_0.5/parms.h
|
---|
579 | MagicProgs/Simulation/Detector/Reflector_0.5/ph2cph.c
|
---|
580 | MagicProgs/Simulation/Detector/Reflector_0.5/reflector.c
|
---|
581 | MagicProgs/Simulation/Detector/Reflector_0.5/version.h
|
---|
582 |
|
---|
583 | MagicProgs/Simulation/Detector/Reflector_0.5/doc/magic-tdas.sty
|
---|
584 | MagicProgs/Simulation/Detector/Reflector_0.5/doc/magiclogo.eps
|
---|
585 | MagicProgs/Simulation/Detector/Reflector_0.5/doc/Tdas0205.ps
|
---|
586 | MagicProgs/Simulation/Detector/Reflector_0.5/doc/Tdas0205.tex
|
---|
587 |
|
---|
588 | MagicProgs/Simulation/Detector/Data/axisdev.dat
|
---|
589 | MagicProgs/Simulation/Detector/Data/magic.def
|
---|
590 | MagicProgs/Simulation/Detector/Data/reflectivity.dat
|
---|
591 |
|
---|
592 |
|
---|
593 | \end{verbatim}
|
---|
594 |
|
---|
595 | %%% BIBLIOGRAPHY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
596 |
|
---|
597 | %%>>>> Use the following if you are using BibTeX for bibliography
|
---|
598 | %\theBibliography
|
---|
599 |
|
---|
600 | %%>>>> Or the following if you include here by hand your
|
---|
601 | %%>>>> bibliographic entries
|
---|
602 |
|
---|
603 | \end{document}
|
---|
604 | %
|
---|
605 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
606 | %%% Upper-case A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
|
---|
607 | %%% Lower-case a b c d e f g h i j k l m n o p q r s t u v w x y z
|
---|
608 | %%% Digits 0 1 2 3 4 5 6 7 8 9
|
---|
609 | %%% Exclamation ! Double quote " Hash (number) #
|
---|
610 | %%% Dollar $ Percent % Ampersand &
|
---|
611 | %%% Acute accent ' Left paren ( Right paren )
|
---|
612 | %%% Asterisk * Plus + Comma ,
|
---|
613 | %%% Minus - Point . Solidus /
|
---|
614 | %%% Colon : Semicolon ; Less than <
|
---|
615 | %%% Equals = Greater than > Question mark ?
|
---|
616 | %%% At @ Left bracket [ Backslash \
|
---|
617 | %%% Right bracket ] Circumflex ^ Underscore _
|
---|
618 | %%% Grave accent ` Left brace { Vertical bar |
|
---|
619 | %%% Right brace } Tilde ~
|
---|
620 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
---|
621 | %% Local Variables:
|
---|
622 | %% mode:latex
|
---|
623 | %% mode:font-lock
|
---|
624 | %% mode:auto-fill
|
---|
625 | %% time-stamp-line-limit:100
|
---|
626 | %% End:
|
---|
627 | %% EOF
|
---|