source: trunk/Mars/mfileio/structures_rfl.h@ 13248

Last change on this file since 13248 was 2135, checked in by tbretz, 22 years ago
*** empty log message ***
File size: 6.6 KB
Line 
1#ifndef __RFL_HEADER__
2#define __RFL_HEADER__
3
4
5/* Event header of reflector files ver <= 0.5 */
6typedef struct
7{ float EvtNumber;
8 float PrimaryID;
9 float Etotal;
10 float Thick0;
11 float FirstTarget;
12 float zFirstInt;
13 float p[3];
14 float Theta;
15 float Phi;
16
17 float NumRndSeq;
18 float RndData[10][3];
19
20 float RunNumber;
21 float DateRun;
22 float Corsika_version;
23
24 float NumObsLev; /* Should be 1 for MAGIC simulation */
25 float HeightLev; /* Observation Level */
26
27 /* Changed meaning of next 9 variables. June 2002, A.Moralejo: */
28 float num_mirrors;
29 float mean_reflectivity;
30 float longi_Nmax;
31 float longi_t0;
32 float longi_tmax;
33 float longi_a;
34 float longi_b;
35 float longi_c;
36 float longi_chi2;
37
38 float SlopeSpec;
39 float ELowLim;
40 float EUppLim;
41
42 float ThetaMin;
43 float ThetaMax;
44 float PhiMin;
45 float PhiMax;
46
47 float CWaveLower;
48 float CWaveUpper;
49 float CorePos[2][20];
50 float TimeFirst;
51 float TimeLast;
52
53 /* AM, 23/05/2002: Changed meaning of following
54 * three variables (which were unused before):
55 */
56 float telescopePhi; /* rad */
57 float telescopeTheta; /* rad */
58
59 float ViewConeRadius; /* Degrees.
60 * Radius of "view cone" when the primaries'
61 * directions generated by Corsika lie within
62 * a cone around a fixed direction. This is
63 * only possible with Corsika>6 versions. In
64 * that case, PhiMin=PhiMax and
65 * ThetaMin=ThetaMax (also in this header)
66 * indicate the axis of this cone.
67 * If ViewConeRadius==0, it means that
68 * the VIEWCONE option was not used.
69 */
70
71
72 float CORSIKAPhs; /* Original photons written by Corsika */
73 float AtmAbsPhs; /* Photons absorbed by the atmosphere */
74 float MirrAbsPhs; /* Photons absorbed by the mirror */
75 float OutOfMirrPhs; /* Photons outside the mirror */
76 float BlackSpotPhs; /* Photons lost in the "black spot" */
77 float OutOfChamPhs; /* Photons outside the camera */
78 float CPhotons; /* Photons reaching the camera */
79
80} RflEventHeader_old;
81
82
83/* Reflector files run header (same as CORSIKA's cer files run header): */
84
85typedef struct
86{ char RUNH[4];
87 float RunNumber;
88 float date;
89 float Corsika_version;
90 float NumObsLev;
91 float HeightLev[10];
92 float SlopeSpec; /* Slope of primaries' energy spectrum */
93 float ELowLim;
94 float EUppLim; /* Limits of energy range for generation */
95 float EGS4_flag;
96 float NKG_flag;
97 float Ecutoffh;
98 float Ecutoffm;
99 float Ecutoffe;
100 float Ecutoffg;
101 /* Physical constants and interaction flags (see CORSIKA manual): */
102 float C[50];
103 float wobble_mode;
104 float atmospheric_model;
105 float dummy1[18]; /* not used */
106 float CKA[40];
107 float CETA[5];
108 float CSTRBA[11];
109 float dummy2[104]; /* not used */
110 float AATM[5];
111 float BATM[5];
112 float CATM[5];
113 float NFL[4];
114
115} RflRunHeader;
116
117
118/* Event header of reflector_0.6 files: */
119
120typedef struct
121{ char EVTH[4];
122 float EvtNumber;
123 float PrimaryID;
124 float Etotal;
125 float Thick0;
126 float FirstTarget;
127 float zFirstInt;
128 float p[3];
129 float Theta;
130 float Phi;
131
132 float NumRndSeq;
133 float RndData[10][3];
134
135 float RunNumber;
136 float DateRun;
137 float Corsika_version;
138
139 float NumObsLev;
140 float HeightLev[10];
141
142 float SlopeSpec;
143 float ELowLim;
144 float EUppLim;
145
146 float Ecutoffh;
147 float Ecutoffm;
148 float Ecutoffe;
149 float Ecutoffg;
150
151 float NFLAIN;
152 float NFLDIF;
153 float NFLPI0;
154 float NFLPIF;
155 float NFLCHE;
156 float NFRAGM;
157
158 float Bx;
159 float By;
160
161 float EGS4yn;
162 float NKGyn;
163 float GHEISHAyn;
164 float VENUSyn;
165 float CERENKOVyn;
166 float NEUTRINOyn;
167 float HORIZONTyn;
168 float COMPUTER;
169
170 float ThetaMin;
171 float ThetaMax;
172 float PhiMin;
173 float PhiMax;
174
175 float CBunchSize;
176 float CDetInX,CDetInY;
177 float CSpacInX,CSpacInY;
178 float CLenInX,CLenInY;
179 float COutput;
180
181 float AngleNorthX;
182 float MuonInfo;
183
184 float StepLength;
185 float CWaveLower;
186 float CWaveUpper;
187 float Multipl;
188 float CorePos[2][20];
189 float SIBYLL[2];
190 float QGSJET[2];
191 float DPMJET[2];
192 float VENUS_cross;
193 float mu_mult_scat;
194 float NKG_range;
195 float EFRCTHN[2];
196 float WMAX[2];
197 float rthin_rmax;
198
199 float viewcone_angles[2];
200 /* (degrees) Inner and outer angles in
201 * Corsika's VIEWCONE option. This is
202 * only possible with Corsika>6 versions. In
203 * that case, PhiMin=PhiMax and
204 * ThetaMin=ThetaMax (also in this header)
205 * indicate the axis of this cone.
206 */
207
208 /* ^^^ Up to here, the info from the CORSIKA event header. */
209
210 /* Telescope orientation: */
211 float telescopePhi; /* rad */
212 float telescopeTheta; /* rad */
213
214 /* Time of first and last photon: */
215 float TimeFirst;
216 float TimeLast;
217
218 /* 6 parameters and chi2 of the NKG fit to the longitudinal
219 * particle distribution (see CORSIKA manual for explanation):
220 */
221 float longi_Nmax;
222 float longi_t0;
223 float longi_tmax;
224 float longi_a;
225 float longi_b;
226 float longi_c;
227 float longi_chi2;
228
229 /* Now the photon statistics of the event: */
230 float CORSIKAPhs; /* Original photons written by Corsika */
231 float AtmAbsPhs; /* Photons absorbed by the atmosphere */
232 float MirrAbsPhs; /* Photons absorbed by the mirror */
233 float OutOfMirrPhs; /* Photons outside the mirror */
234 float BlackSpotPhs; /* Photons lost in the "black spot" */
235 float OutOfChamPhs; /* Photons outside the camera */
236 float CPhotons; /* Photons reaching the camera */
237
238 /* Now follow the fraction of photons reaching the camera produced by
239 * electrons, muons and other particles respectively:
240 */
241 float elec_cph_fraction;
242 float muon_cph_fraction;
243 float other_cph_fraction;
244
245 float dummy[7]; /* not used */
246} RflEventHeader;
247
248/*Photons data estructure*/
249typedef struct
250{ float w, /* cphoton wavelength (nm) */
251 x, y, /* (camera) imp. point (cm) */
252 u, v, /* direction cosines */
253 t, /* arrival time (ns) */
254 h, /* production height (cm) */
255 phi; /* (camera) inc. angle (rad) */
256 } cphoton;
257
258#endif
259
260
261
262
Note: See TracBrowser for help on using the repository browser.