icemc
 All Classes Namespaces Files Functions Variables Friends Macros Pages
roughness.hh
Go to the documentation of this file.
1 #ifndef ROUGHNESS_H_
2 #define ROUGHNESS_H_
3 
4 class Signal;
5 class TH2D;
6 class TF2;
7 class Ray;
8 class Vector;
9 class Settings;
10 class IceModel;
11 class Vector;
12 class Balloon;
13 class Interaction;
14 
16 //class Roughness:
18 // #include "vector.hh"
19 
21 class Roughness {
22 
23 private:
24 
25 
26 
27 
28 
29  double minfunc;
30  double maxfunc;
31 
32  double minfuncy;
33  double maxfuncy;
34 
35 
36  int nbinsx;
37  int nbinsy;
38 
39  double minhist;
40  double maxhist;
41 
42  TH2D *h2_pokey;
43  TH2D *h2_pokey_smeared;
44 
45  TH2D *h2_slappy;
46  TH2D *h2_slappy_smeared;
47 
48  TF2 *fpokey2;
49  TF2 *fslappy2;
50 
51 public:
52  // need to find balloon location in coordinates where
53  // the surface normal is the +z axis
54  // the x-z plane is defined by the neutrino trajectory
55  // these are set in getballoonlocation
56  double balloonphi;
57  double balloontheta;
58  double balloondist;
59 
60  double rough_sigma;
61  Roughness(Settings *settings1);
62  void GetExitforRoughness(Settings *settings1,IceModel *antarctica,double emfrac,double hadfrac,double deltheta_em_max,double deltheta_had_max,Ray *ray1,Vector &nnu,Vector &r_bn,Vector &posnu);
63  double GetPokey(double incident_angle,double transmitted_angle,
64  double emfrac,double hadfrac,double deltheta_em,double deltheta_had);
65  double GetSlappy(double incident_angle,double transmitted_angle,
66  double emfrac,double hadfrac,double deltheta_em,double deltheta_had);
67  double GetCombinedDeltheta(double emfrac,double hadrac,double deltheta_em_max,double deltheta_had_max);
68  void GetBalloonLocation(Interaction *interaction1,Ray *ray1,Balloon *bn1,IceModel *antarctica);
69 
70  Vector nrf_iceside_specular; // ice side "specular" ray - for now, this is just a line from the interaction to the specular exit point, since we are still working on the formula to trace the ray back to the interaction through the firn. For interactions within the firn, this will be equal to nrf_iceside[3]
71 
72 
73 
74 
75 
76 };
77 //double rough_sigma_0=0.002;
78 #endif