Ray tracing class.
More...
#include <ray_tracing.hpp>
|
| RayTracing (Vel2dModel *mod2d) |
|
RayInfo * | RayShoot (double f, double startX, double startZ, bool waySave, CodeAr rCode, bool calcSD, int_ar *bNums=NULL) |
|
void | AddObSysPtr (ObservSys *) |
|
void | SetDL (double dl) |
|
double | GetDL () |
|
void | CalcIntParams2 (double x, double z, double f, int rtr, double &x0, double &z0, double &x1, double &z1) |
|
|
static bool | Snellius (double vin, double teta0, double vout, int rtr, double iAngle, double &teta1) |
|
|
STEP_RESULT | RayStep (double &x, double &z, double &f, double &v, double df, double &dt, double &resultAngle, double &resultCurvity, int &iBoundNum, WAVE_TYPE vPS, bool prevInt, bool noIntersect=false) |
|
bool | CalcRayAmpl (RayInfo *Ray) |
|
double | CalcRayCoeff (double x, double z, double x0, double z0, double x1, double z1, int bn1, int bn2, int boundN, WAVE_TYPE wt1, WAVE_TYPE wt2, double iAngle) |
|
void | CalcIntParams (double x, double z, double x0, double z0, int rtr, double &x1, double &z1) |
|
void | CalcIntParams (double x, double z, double &x0, double &z0, int rtr, double f, double &x1, double &z1) |
|
Ray tracing class.
Basic class, containing all elementary procedures of the ray tracing (chord-step, ray-step, single ray tracing, see also ray_tracing.cpp)
Procedure of addition of the Observation System pointer (rays can be considered without Observation System, but then they wil not intersect the well)
void RayTracing::CalcIntParams |
( |
double |
x, |
|
|
double |
z, |
|
|
double |
x0, |
|
|
double |
z0, |
|
|
int |
rtr, |
|
|
double & |
x1, |
|
|
double & |
z1 |
|
) |
| |
|
protected |
Calculation of the next ray point after bound intersection (rt_calc.cpp)
void RayTracing::CalcIntParams2 |
( |
double |
x, |
|
|
double |
z, |
|
|
double |
f, |
|
|
int |
rtr, |
|
|
double & |
x0, |
|
|
double & |
z0, |
|
|
double & |
x1, |
|
|
double & |
z1 |
|
) |
| |
Calculation of the ray points before and after bound intersection (rt_calc.cpp)
bool RayTracing::CalcRayAmpl |
( |
RayInfo * |
Ray | ) |
|
|
protected |
Amplitude calculation (rt_calc.cpp)
double RayTracing::CalcRayCoeff |
( |
double |
x, |
|
|
double |
z, |
|
|
double |
x0, |
|
|
double |
z0, |
|
|
double |
x1, |
|
|
double |
z1, |
|
|
int |
bn1, |
|
|
int |
bn2, |
|
|
int |
boundN, |
|
|
WAVE_TYPE |
wt1, |
|
|
WAVE_TYPE |
wt2, |
|
|
double |
iAngle |
|
) |
| |
|
protected |
reflection/refraction coefficient calculation (rt_calc.cpp)
RayInfo* RayTracing::RayShoot |
( |
double |
f, |
|
|
double |
startX, |
|
|
double |
startZ, |
|
|
bool |
waySave, |
|
|
CodeAr |
rCode, |
|
|
bool |
calcSD, |
|
|
int_ar * |
bNums = NULL |
|
) |
| |
Single ray tracing procedure
STEP_RESULT RayTracing::RayStep |
( |
double & |
x, |
|
|
double & |
z, |
|
|
double & |
f, |
|
|
double & |
v, |
|
|
double |
df, |
|
|
double & |
dt, |
|
|
double & |
resultAngle, |
|
|
double & |
resultCurvity, |
|
|
int & |
iBoundNum, |
|
|
WAVE_TYPE |
vPS, |
|
|
bool |
prevInt, |
|
|
bool |
noIntersect = false |
|
) |
| |
|
protected |
Step along the ray; intersections with bounds and well are taken into account (ray_tracing.cpp)
static bool RayTracing::Snellius |
( |
double |
vin, |
|
|
double |
teta0, |
|
|
double |
vout, |
|
|
int |
rtr, |
|
|
double |
iAngle, |
|
|
double & |
teta1 |
|
) |
| |
|
static |
Calculation of the ray reflection/refraction angle on the bound (ray_tracing.cpp)
Pointer to the 2d-model object
Pointer to the Observation System
The documentation for this class was generated from the following file:
- /net/opt/univers/ubp-i-15.3-centos7-x64.urij/include/vel2dmod/ray_tracing.hpp