source: JEM-EUSO/esaf_lal/tags/v1_r0/esaf/packages/simulation/detector/optics/include/Mtrace_optF1v4.hh @ 117

Last change on this file since 117 was 117, checked in by moretto, 11 years ago

ESAF version compilable on mac OS

File size: 2.4 KB
Line 
1/* -------------------------------------------------------------------------
2 *   trace_optF1v4.h
3 *
4 *   --- header file for trace_optF1v4.h
5 *
6 * Copyright (c) 2000-2007 N.Sakaki, Y.Takizawa, Y.Kawasaki
7 * All rights reserved.
8 * $Id$
9 * -------------------------------------------------------------------------
10 */
11#ifndef _MTRACE_OPTF1V4_H
12#define _MTRACE_OPTF1V4_H
13
14#include <stdio.h>
15#include "Mtracemain_optF1v4.hh"
16#include "Rtypes.h"
17
18/* the following numbers are related to the data files. */
19
20#define Acryl_N 71
21#define Cytop_N 71
22#define Bg3_N   22
23
24#define RT_NO_SPINTERSECTION       -2
25#define RT_HIT_SIDE_WALL           -3
26#define RT_NO_INTERSECTION1        -4
27#define RT_NO_INTERSECTION2        -5
28#define RT_OUT_OF_SURFACE1         -6
29#define RT_OUT_OF_SURFACE2         -7
30#define RT_REFLECTION_DISCARDED    -8
31#define RT_NO_REFRACTED_LIGHT      -9
32#define RT_REFLECTED_IN_REF       -10
33#define RT_ABSORBED               -11
34#define RT_OUT_OF_IRIS            -12
35#define RT_STRAY_LIGHT            -13
36#define RT_ESCAPE_FROM_ENTRANCE   -14
37#define RT_EXCEED_ITER_MAX        -15
38#define RT_OUT_OF_DOES            -16
39
40#define RT_REFRACTED                1
41#define RT_REFLECTED                2
42
43#define SURFACE0                    0
44#define SURFACE1                -1000
45#define SURFACE2                -2000
46#define SURFACE3                -3000
47#define SURFACE4                -4000
48#define SURFACED                -5000
49#define SURFACE5                -5000
50#define SURFACE6                -6000
51#define SURFACE7                -7000
52#define SURFACE_FS             -8000
53
54/* speed of light in mm/ns */
55//#define C0 299.792458
56/* the current optics is designed to be put in air.
57Maybe little change for vacuum.  */
58#define REFRACTIVE_IDX_MEDIA 1.0003   /* air */
59
60int ReadLensData(Mtel_param *param, FILE *fplog);
61double Get_n_Acryl(double lambda);
62double Get_n_Cytop(double lambda);
63double Get_k_Acryl(double lambda);
64double Get_k_Cytop(double lambda);
65int refract(double in_ph[3],double nnn[3],double n1,double n2);
66int trace_lens(Mtel_param *param, double ph_in[], double ph_out[], FILE *fplog);
67int CalSpheVec(double aX, double aY, double aZ, double aCZ, double nnnDIFF[3]);
68int ReadDiffractData(char *dirname, FILE *fplog);
69double Cal_D(double r);
70int diffract(int ID, double in_phdir[3],
71         double x3, double y3, double z3, double Zc,
72         double n1, double n2, double wl, double wl0, int m);
73int CheckRcut(Mtel_param *p, double phot[6], int flag);
74#endif
Note: See TracBrowser for help on using the repository browser.