45 double sum_slopeyness;
47 double slopeyx,slopeyy,slopeyz;
49 void PrintAnglesofIncidence();
51 int GetRayIceSide(
const Vector &n_exit2bn,
52 const Vector &nsurf_rfexit,
57 int TraceRay(
Settings *settings1,
Anita *anita1,
int whichiteration,
double n_depth);
60 int GetSurfaceNormal(
Settings *settings1,
IceModel *antarctica,
Vector posnu,
double &slopeyangle,
int whichtry);
75 double posnu_length=posnu.Mag();
86 double costheta=-1*(posnu*ntemp)/posnu_length;
90 double b=-1*2*posnu_length*costheta;
91 double c=posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
98 distance=(-1*b+sqrt(b*b-4*a*c))/2;
101 r_out = posnu + distance*ntemp;
106 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
111 distance=distance/2.;
113 r_out = posnu + distance*ntemp;
116 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
118 distance=distance/2.;
120 r_out = posnu + distance*ntemp;
123 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
125 distance=distance/2.;
127 r_out = posnu + distance*ntemp;
130 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
137 r_out=antarctica->Surface(lon,lat)/posnu.Mag()*posnu;
141 distance=distance*1.5;
143 r_out = posnu + distance*ntemp;
146 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
148 distance=distance*2./3.;
149 r_out = posnu + distance*ntemp;
152 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
160 distance=distance*1.5;
162 r_out = posnu + distance*ntemp;
165 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
167 distance=distance*5./6.;
169 r_out = posnu + distance*ntemp;
172 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
174 distance=distance*4./5.;
175 r_out = posnu + distance*ntemp;
178 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
183 distance=distance*7./6.;
185 r_out = posnu + distance*ntemp;
188 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
191 distance=distance*6./7.;
193 r_out = posnu + distance*ntemp;
196 c = posnu_length*posnu_length - pow(antarctica->Surface(lon,lat),2);
202 distance=(-1*b+sqrt(b*b-4*a*c))/2;
203 r_out = posnu + distance*ntemp;
Radiation from interaction.
double Lat() const
Returns latitude, where the +z direction is at 0 latitude.
Reads in and stores input settings for the run.
This class is a 3-vector that represents a position on the Earth's surface.
Contains everything about positions within payload and signals it sees for each event, in both the trigger and signal paths.
static const int NLAYERS_MAX
max number of layers (in smex design, it's 4)
This class represents a three-vector. Operators are overloaded to provide for the familiar operations...
static const int NPHI_MAX
max number of antennas around in phi (in smex, 16)
double Lon() const
Returns longitude.
Ice thicknesses and water depth.