UNIVERS
15.3
UNIVERS base processing software API
|
#include <u3d_migr.hpp>
Public Member Functions | |
U3dMigr (U3dModel *model, U3dAbstractSeis *seis, float stpX, float stpY, float stpZ, double dfe, double mAngle, U3D_MIGR_TYPE mt, bool slave=true) | |
void | initMigrCube (ushort imx, ushort jmx, ushort kmx) |
bool | getMigrCubeSP (int sp_num, MigrCell *&cube, int &size) |
bool | getMigrCubeRec (int recNum, MigrCell *&cube, int &size) |
bool | getMigrCube (U3dPoint p, U3D_WAVE_TYPE wType) |
bool | getMigrCubeDummy (U3dPoint p, U3D_WAVE_TYPE wType) |
void | compMigrGrid (MigrCell *grid1, int size1, MigrCell *grid2, int size2, int recId, IPCell *&ip_info, int &ip_cell_num, int i_beg=-1, int i_end=-1) |
void | addIPInfo (MigrDataCube ip_data, IPCell *ip_info, int ip_cell_num) |
void | recalculateIPGrid (MigrDataCube ip_data) |
bool | loadSPTraces (int spId) |
double | getIPValue (const IPCell &ip_cell) |
void | calculateImageBox () |
ushort | getIMax () |
ushort | getJMax () |
ushort | getKMax () |
void | getSteps (float &step_x, float &step_y, float &step_z) |
U3dAbstractSeis * | getSeis () |
bool | getReady () |
bool | formMigrGrid (MigrCell *&grid, int &size) |
void | cleanMigrCube () |
void | freeMigrCube () |
void | freeNormCube () |
MigrDataCube | accessMigrCube () |
void | cleanMigrChildren () |
U3dRay * | testRayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave) |
time_t | startTimer () |
void | stopTimer (time_t beg, const char *message) |
void | prepareSecondStage () |
void | prepareThirdStage () |
U3dMigr (U3dModel *model, U3dAbstractSeis *seis, float stpX, float stpY, float stpZ, double dfe, double mAngle, U3D_MIGR_TYPE mt, bool slave=true) | |
void | initMigrCube (ushort imx, ushort jmx, ushort kmx) |
bool | getMigrCubeSP (int sp_num, MigrCell *&cube, int &size) |
bool | getMigrCubeRec (int recNum, MigrCell *&cube, int &size) |
bool | getMigrCube (U3dPoint p, U3D_WAVE_TYPE wType) |
bool | getMigrCubeDummy (U3dPoint p, U3D_WAVE_TYPE wType) |
void | compMigrGrid (MigrCell *grid1, int size1, MigrCell *grid2, int size2, int recId, IPCell *&ip_info, int &ip_cell_num, int i_beg=-1, int i_end=-1) |
void | addIPInfo (MigrDataCube ip_data, IPCell *ip_info, int ip_cell_num) |
void | recalculateIPGrid (MigrDataCube ip_data) |
bool | loadSPTraces (int spId) |
double | getIPValue (const IPCell &ip_cell) |
void | calculateImageBox () |
ushort | getIMax () |
ushort | getJMax () |
ushort | getKMax () |
void | getSteps (float &step_x, float &step_y, float &step_z) |
U3dAbstractSeis * | getSeis () |
bool | getReady () |
bool | formMigrGrid (MigrCell *&grid, int &size) |
void | cleanMigrCube () |
void | freeMigrCube () |
void | freeNormCube () |
MigrDataCube | accessMigrCube () |
void | cleanMigrChildren () |
U3dRay * | testRayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave) |
time_t | startTimer () |
void | stopTimer (time_t beg, const char *message) |
void | prepareSecondStage () |
void | prepareThirdStage () |
Public Member Functions inherited from U3dMigrRayShooter | |
U3dMigrRayShooter (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ) | |
U3dRay * | rayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave) |
U3dBox * | getImageBox () |
U3dMigrRayShooter (U3dModel *mod3d, U3dReflCoefType coeff_type=ZOEPPRITZ) | |
U3dRay * | rayShoot (U3dPoint startP, double f, double az, U3dCodeAr rCode, bool waySave) |
U3dBox * | getImageBox () |
Public Member Functions inherited from U3dAbstractRayShooter | |
U3dAbstractRayShooter (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ) | |
bool | findNextCell (int faceId, int &condId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0) |
bool | findNextCleanCell (int faceId, int &confId, int &resI, int &resJ, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0) |
bool | checkFaceZone (int faceId, int zoneId, int conf, int &conf_type, int &resI, int &recJ) |
bool | coverConf (int confId, int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type) |
bool | coverNhbCCross (int faceId, int ni, int nj, U3dPoint p, U3dCodeAr c, int &resi, int &resj) |
bool | coverNhbC1 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbC2 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | shootNhbC2Cross (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int i_n0, int j_n0, int i_n1, int j_n1) |
bool | coverNhbC3 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type) |
bool | coverNhbC4 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbC5 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbCSpiral (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
int | checkConf (int i0, int j0, int faceId) |
bool | checkConf (int confId, int i0, int j0, int faceId, int &conf_type) |
bool | checkConf1 (int i0, int j0, int faceId) |
bool | checkConf2 (int i0, int j0, int faceId) |
bool | checkConf3 (int i0, int j0, int faceId, int &conf_type) |
bool | checkConf4 (int i0, int j0, int faceId) |
bool | checkConf5 (int i0, int j0, int faceId) |
bool | checkConf6 (int i0, int j0, int faceId) |
bool | find2FilledNhbC3 (int faceId, int i0, int j0, int conf_type, int &i_n0, int &j_n0, int &i_n1, int &j_n1) |
bool | find3FilledNhbC4 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2) |
bool | find3FilledNhbC5 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2) |
bool | calcNhbCPlaneAngles (int faceId, int i0, int j0, int i_n0, int j_n0, int i_n1, int j_n1, int i_n2, int j_n2, float &stF, float &stAz) |
void | printConfCell (int i0, int j0, int faceId, int confId=3) |
void | printCellNhbC (int i0, int j0, int faceId, int nhb_num=7) |
int | checkNhbCell (int faceId, int i0, int j0) |
int | shootNcheckPh1 (int faceId, U3dPoint p, float f, float az, int ni, int nj, U3dCodeAr c, int &resI, int &resJ) |
bool | shootNcheckPh2 (int faceId, U3dPoint p, float f, float az, int i0, int j0, U3dCodeAr c, int &resI, int &resJ) |
bool | findFilledNhbCell (int faceId, int &i, int &j) |
bool | findFilledFaceNhbCell (U3dPoint p, int faceId, U3dCodeAr c, int &resI, int &resJ) |
bool | findCleanNhbCell (int faceId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num) |
bool | isFaceCellClean (int i, int j, int faceId) |
bool | isFaceCellShadowed (int i, int j, int faceId) |
bool | isFaceCellFilled (int i, int j, int faceId) |
char | getCellStatus (int i, int j, int faceId) |
virtual void | getFaceCellIJ (U3dPoint p, int faceId, int &i, int &j) |
virtual void | formFaceActiveZones (int faceId) |
U3dAbstractRayShooter (U3dModel *mod3d, U3dReflCoefType coeff_type=ZOEPPRITZ) | |
bool | findNextCell (int faceId, int &condId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0) |
bool | findNextCleanCell (int faceId, int &confId, int &resI, int &resJ, int &filled_cells_num, int &shadow_cells_num, int &conf_type, int debug_level=0) |
bool | checkFaceZone (int faceId, int zoneId, int conf, int &conf_type, int &resI, int &recJ) |
bool | coverConf (int confId, int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type) |
bool | coverNhbCCross (int faceId, int ni, int nj, U3dPoint p, U3dCodeAr c, int &resi, int &resj) |
bool | coverNhbC1 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbC2 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | shootNhbC2Cross (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int i_n0, int j_n0, int i_n1, int j_n1) |
bool | coverNhbC3 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c, int conf_type) |
bool | coverNhbC4 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbC5 (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
bool | coverNhbCSpiral (int faceId, int i0, int j0, U3dPoint p, U3dCodeAr c) |
int | checkConf (int i0, int j0, int faceId) |
bool | checkConf (int confId, int i0, int j0, int faceId, int &conf_type) |
bool | checkConf1 (int i0, int j0, int faceId) |
bool | checkConf2 (int i0, int j0, int faceId) |
bool | checkConf3 (int i0, int j0, int faceId, int &conf_type) |
bool | checkConf4 (int i0, int j0, int faceId) |
bool | checkConf5 (int i0, int j0, int faceId) |
bool | checkConf6 (int i0, int j0, int faceId) |
bool | find2FilledNhbC3 (int faceId, int i0, int j0, int conf_type, int &i_n0, int &j_n0, int &i_n1, int &j_n1) |
bool | find3FilledNhbC4 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2) |
bool | find3FilledNhbC5 (int faceId, int i0, int j0, int &i_n0, int &j_n0, int &i_n1, int &j_n1, int &i_n2, int &j_n2) |
bool | calcNhbCPlaneAngles (int faceId, int i0, int j0, int i_n0, int j_n0, int i_n1, int j_n1, int i_n2, int j_n2, float &stF, float &stAz) |
void | printConfCell (int i0, int j0, int faceId, int confId=3) |
void | printCellNhbC (int i0, int j0, int faceId, int nhb_num=7) |
int | checkNhbCell (int faceId, int i0, int j0) |
int | shootNcheckPh1 (int faceId, U3dPoint p, float f, float az, int ni, int nj, U3dCodeAr c, int &resI, int &resJ) |
bool | shootNcheckPh2 (int faceId, U3dPoint p, float f, float az, int i0, int j0, U3dCodeAr c, int &resI, int &resJ) |
bool | findFilledNhbCell (int faceId, int &i, int &j) |
bool | findFilledFaceNhbCell (U3dPoint p, int faceId, U3dCodeAr c, int &resI, int &resJ) |
bool | findCleanNhbCell (int faceId, int &i, int &j, int &filled_cells_num, int &shadow_cells_num) |
bool | isFaceCellClean (int i, int j, int faceId) |
bool | isFaceCellShadowed (int i, int j, int faceId) |
bool | isFaceCellFilled (int i, int j, int faceId) |
char | getCellStatus (int i, int j, int faceId) |
virtual void | getFaceCellIJ (U3dPoint p, int faceId, int &i, int &j) |
virtual void | formFaceActiveZones (int faceId) |
Public Member Functions inherited from U3dRayDynCalculator | |
U3dRayDynCalculator (U3dModel *mod3d, URayReflCoefType coeff_type=ZOEPPRITZ) | |
double | calcRTRCoeff (U3dRay *ray, int debug_level=0) |
Public Member Functions inherited from U3dRayTracing | |
U3dRayTracing (U3dModel *mod3d) | |
bool | snellius (double vin, double teta0, double az, double vout, int rtr, double iAngle, double iAz, double &teta1, double &az1) |
U3dModel * | getModel () const |
U3dRayTracing (U3dModel *mod3d) | |
bool | snellius (double vin, double teta0, double az, double vout, int rtr, double iAngle, double iAz, double &teta1, double &az1) |
U3dModel * | getModel () const |
Additional Inherited Members | |
Public Types inherited from U3dAbstractRayShooter | |
typedef std::vector< ARSFaceZone > | ARSFaceZonesAr |
typedef std::vector< ARSFaceZone > | ARSFaceZonesAr |
Public Attributes inherited from U3dAbstractRayShooter | |
ARSFaceZonesAr | m_face_active_zones |
Protected Member Functions inherited from U3dMigrRayShooter | |
void | markCell (ushort i, ushort j, ushort k, double f, double az, double t) |
void | addRayPoint (U3dPoint p0, U3dRayPoint rp1, U3D_WAVE_TYPE wType, double dt) |
void | addRayPoint2D (int ind1_0, int ind2_0, int ind1_cur, int ind2_cur, int ind1_step, int ind2_step, double coord1_step, double coord2_step, double coord1_2_mul, double coord2_1_mul, double coord3_1_mul, double coord3_2_mul, int ind_const, U3dRayPoint rp0, int plane, U3D_WAVE_TYPE wt, double end_time) |
void | setCurrentStartAngles (U3dPoint sp, double f, double az) |
bool | getCellIJK (U3dPoint point, ushort &i, ushort &j, ushort &k) |
void | getCellI (U3dPoint p, ushort &i) |
void | getCellJ (U3dPoint p, ushort &j) |
void | getCellK (U3dPoint p, ushort &k) |
int | getFaceId (U3dRay *r) |
int | getFaceIMax (int faceId) |
int | getFaceJMax (int faceId) |
void | getFaceCellIJ (U3dRay *r, int faceId, int &i, int &j) |
void | setShadowedFlag (int i, int j, int faceId) |
float | getFaceCellT (int i, int j, int faceId) |
float | getFaceCellStF (int i, int j, int faceId) |
float | getFaceCellStAz (int i, int j, int faceId) |
MigrInnerCell | getFaceCell (int i, int j, int faceId) |
void | markCell (ushort i, ushort j, ushort k, double f, double az, double t) |
void | addRayPoint (U3dPoint p0, U3dRayPoint rp1, U3D_WAVE_TYPE wType, double dt) |
void | addRayPoint2D (int ind1_0, int ind2_0, int ind1_cur, int ind2_cur, int ind1_step, int ind2_step, double coord1_step, double coord2_step, double coord1_2_mul, double coord2_1_mul, double coord3_1_mul, double coord3_2_mul, int ind_const, U3dRayPoint rp0, int plane, U3D_WAVE_TYPE wt, double end_time) |
void | setCurrentStartAngles (U3dPoint sp, double f, double az) |
bool | getCellIJK (U3dPoint point, ushort &i, ushort &j, ushort &k) |
void | getCellI (U3dPoint p, ushort &i) |
void | getCellJ (U3dPoint p, ushort &j) |
void | getCellK (U3dPoint p, ushort &k) |
int | getFaceId (U3dRay *r) |
int | getFaceIMax (int faceId) |
int | getFaceJMax (int faceId) |
void | getFaceCellIJ (U3dRay *r, int faceId, int &i, int &j) |
void | setShadowedFlag (int i, int j, int faceId) |
float | getFaceCellT (int i, int j, int faceId) |
float | getFaceCellStF (int i, int j, int faceId) |
float | getFaceCellStAz (int i, int j, int faceId) |
MigrInnerCell | getFaceCell (int i, int j, int faceId) |
Protected Member Functions inherited from U3dRayDynCalculator | |
dcomplex | getZoeppritzCoeff (double p1, U3D_WAVE_TYPE wt1, U3D_WAVE_TYPE wt2, bool transfer, double ro1, double vp1, double vs1, double ro2, double vp2, double vs2) |
dcomplex | cdet4 (dcomplex(*L4)[4]) |
U3D_RTR_TYPE | getRTRType (U3D_WAVE_TYPE wt0, U3D_WAVE_TYPE wt1) |
double | getApproxCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRDir (double f, double v0, double den0, double v1, double den1) |
double | getAkiRichardsRPPup (double f0, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRPSup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRPSdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRPS (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1, bool up=true) |
double | getAkiRichardsRSSup (double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRSPup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getAkiRichardsRSPdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyCoeff (int rtr_type, double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRDir (double f, double v0, double den0, double v1, double den1) |
double | getShueyRPPup (double f0, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRPSup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRPSdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRSSup (double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRSPup (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getShueyRSPdown (double f0, double f1, double vp0, double vs0, double den0, double vp1, double vs1, double den1) |
double | getA (double B, double sigma) |
double | getR0 (double vp0, double vp1, double den0, double den1) |
double | getB (double vp0, double vp1, double R0) |
double | getPoissonsRatio (double vp, double vs) |
Protected Member Functions inherited from U3dRayTracing | |
U3D_STEP_RESULT | RayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false) |
U3D_STEP_RESULT | rayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, int &bn1, int &bn2, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false) |
bool | intersectCellTriangles (const U3dGridCell *cell, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0) |
bool | processNeighbourCells (const U3dGridCell *cell1, const U3dGridCell *cell2, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0) |
double | getTime (U3dPoint p0, U3dPoint p1, double v0) |
bool | stepOnRay (U3dRayPoint p1, U3dRayPoint &p2, double df, U3D_WAVE_TYPE vPS, bool prevInt, double &vel) |
void | stepOnChord (double k, double fK, double azK, double df, double vel, U3dRayPoint rp0, U3dRayPoint &rp1) |
void | CalcIntParams (U3dRayPoint p, U3dPoint p0, int rtr, U3dPoint &p1) |
void | calcIntNeighPoints (U3dPoint p_int, double f, double az, U3dPoint &p0, U3dPoint &p1) |
void | getEndPoint (U3dPoint p0, U3dPoint &p1) |
U3D_STEP_RESULT | RayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false) |
U3D_STEP_RESULT | rayStep (U3dRayPoint &rp, double df, double &dt, double &iAngle, double &iAz, double &iCurvity, int &iBoundNum, int &bn1, int &bn2, U3D_WAVE_TYPE vPS, bool prevInt, bool noIntersect=false) |
bool | intersectCellTriangles (const U3dGridCell *cell, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0) |
bool | processNeighbourCells (const U3dGridCell *cell1, const U3dGridCell *cell2, U3dPoint p1, U3dPoint p2, U3dPoint &ip, int &iBoundNum, double &iAngle, double &iAz, int debug_level=0) |
double | getTime (U3dPoint p0, U3dPoint p1, double v0) |
bool | stepOnRay (U3dRayPoint p1, U3dRayPoint &p2, double df, U3D_WAVE_TYPE vPS, bool prevInt, double &vel) |
void | stepOnChord (double k, double fK, double azK, double df, double vel, U3dRayPoint rp0, U3dRayPoint &rp1) |
void | CalcIntParams (U3dRayPoint p, U3dPoint p0, int rtr, U3dPoint &p1) |
void | calcIntNeighPoints (U3dPoint p_int, double f, double az, U3dPoint &p0, U3dPoint &p1) |
void | getEndPoint (U3dPoint p0, U3dPoint &p1) |
Protected Attributes inherited from U3dMigrRayShooter | |
MigrDataCube | m_migr_cube |
U3dBox | m_imageBox |
float | m_stepX |
float | m_stepY |
float | m_stepZ |
ushort | m_i_max |
ushort | m_j_max |
ushort | m_k_max |
double | m_curStF |
double | m_curStAz |
U3dPoint | m_curSP |
Protected Attributes inherited from U3dRayDynCalculator | |
URayReflCoefType | m_coeff_type |
Protected Attributes inherited from U3dRayTracing | |
U3dModel * | m_model |
U3dBox * | m_modelBox |
double | dl |
Special object for all migration calculations
void U3dMigr::addIPInfo | ( | MigrDataCube | ip_data, |
IPCell * | ip_info, | ||
int | ip_cell_num | ||
) |
Addition of incident-point-cell structures array to a two-dimentional grid of migration-cell structures (incident points grid); in this case, field 'f' in each migration-cell structure contains out-ray angle; double-path cases are available: a few angle-time data may appear for one incident-point-cell (UNUSED)
void U3dMigr::addIPInfo | ( | MigrDataCube | ip_data, |
IPCell * | ip_info, | ||
int | ip_cell_num | ||
) |
Addition of incident-point-cell structures array to a two-dimentional grid of migration-cell structures (incident points grid); in this case, field 'f' in each migration-cell structure contains out-ray angle; double-path cases are available: a few angle-time data may appear for one incident-point-cell (UNUSED)
|
virtual |
Calculates migration image box (according to the SP and REC coordinates)
Reimplemented from U3dMigrRayShooter.
|
virtual |
Calculates migration image box (according to the SP and REC coordinates)
Reimplemented from U3dMigrRayShooter.
void U3dMigr::cleanMigrCube | ( | ) |
Cleans all children in migration cube
void U3dMigr::cleanMigrCube | ( | ) |
Cleans all children in migration cube
void U3dMigr::compMigrGrid | ( | MigrCell * | grid1, |
int | size1, | ||
MigrCell * | grid2, | ||
int | size2, | ||
int | recId, | ||
IPCell *& | ip_info, | ||
int & | ip_cell_num, | ||
int | i_beg = -1 , |
||
int | i_end = -1 |
||
) |
Comparison of two migration grids (shot point and reciever) to check the Snellius condition execution; the results are placed in incident-point-cell structures array
void U3dMigr::compMigrGrid | ( | MigrCell * | grid1, |
int | size1, | ||
MigrCell * | grid2, | ||
int | size2, | ||
int | recId, | ||
IPCell *& | ip_info, | ||
int & | ip_cell_num, | ||
int | i_beg = -1 , |
||
int | i_end = -1 |
||
) |
Comparison of two migration grids (shot point and reciever) to check the Snellius condition execution; the results are placed in incident-point-cell structures array
bool U3dMigr::formMigrGrid | ( | MigrCell *& | grid, |
int & | size | ||
) |
Reform 3d migration grid to a linear array
bool U3dMigr::formMigrGrid | ( | MigrCell *& | grid, |
int & | size | ||
) |
Reform 3d migration grid to a linear array
void U3dMigr::freeMigrCube | ( | ) |
Free memory, allocated for migration data cube
void U3dMigr::freeMigrCube | ( | ) |
Free memory, allocated for migration data cube
void U3dMigr::freeNormCube | ( | ) |
Free memory, allocated for normal 3d field
void U3dMigr::freeNormCube | ( | ) |
Free memory, allocated for normal 3d field
ushort U3dMigr::getIMax | ( | ) |
Returns maximal X-index of migration cell
ushort U3dMigr::getIMax | ( | ) |
Returns maximal X-index of migration cell
double U3dMigr::getIPValue | ( | const IPCell & | ip_cell | ) |
Returns amplitude value for the cell [i][j][k]: for "shooted" reciever (mentioned in cell) a full ray path time (from shot point up to reciever) is obtained from the corresponding seismic trace; the amplitude value is obtained in accordance to the full ray path time and well-in-ray direction (ip_cell->w_f, w_az)
double U3dMigr::getIPValue | ( | const IPCell & | ip_cell | ) |
Returns amplitude value for the cell [i][j][k]: for "shooted" reciever (mentioned in cell) a full ray path time (from shot point up to reciever) is obtained from the corresponding seismic trace; the amplitude value is obtained in accordance to the full ray path time and well-in-ray direction (ip_cell->w_f, w_az)
ushort U3dMigr::getJMax | ( | ) |
Returns maximal Y-index of migration cell
ushort U3dMigr::getJMax | ( | ) |
Returns maximal Y-index of migration cell
ushort U3dMigr::getKMax | ( | ) |
Returns maximal Z-index of migration cell
ushort U3dMigr::getKMax | ( | ) |
Returns maximal Z-index of migration cell
bool U3dMigr::getMigrCube | ( | U3dPoint | p, |
U3D_WAVE_TYPE | wType | ||
) |
Complex (x,y,z)-point migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCube | ( | U3dPoint | p, |
U3D_WAVE_TYPE | wType | ||
) |
Complex (x,y,z)-point migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeDummy | ( | U3dPoint | p, |
U3D_WAVE_TYPE | wType | ||
) |
Simple (x,y,z)-point migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeDummy | ( | U3dPoint | p, |
U3D_WAVE_TYPE | wType | ||
) |
Simple (x,y,z)-point migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeRec | ( | int | recNum, |
MigrCell *& | cube, | ||
int & | size | ||
) |
Receiver migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeRec | ( | int | recNum, |
MigrCell *& | cube, | ||
int & | size | ||
) |
Receiver migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeSP | ( | int | sp_num, |
MigrCell *& | cube, | ||
int & | size | ||
) |
Shot point migration grid calculation (TRUE - success)
bool U3dMigr::getMigrCubeSP | ( | int | sp_num, |
MigrCell *& | cube, | ||
int & | size | ||
) |
Shot point migration grid calculation (TRUE - success)
bool U3dMigr::getReady | ( | ) |
Returns object status flag (UNUSED)
bool U3dMigr::getReady | ( | ) |
Returns object status flag (UNUSED)
U3dAbstractSeis* U3dMigr::getSeis | ( | ) |
Returns pointer to the special object, containing seismic traces information
U3dAbstractSeis* U3dMigr::getSeis | ( | ) |
Returns pointer to the special object, containing seismic traces information
void U3dMigr::getSteps | ( | float & | step_x, |
float & | step_y, | ||
float & | step_z | ||
) |
Returns coordinate steps of migration 3d-grid
void U3dMigr::getSteps | ( | float & | step_x, |
float & | step_y, | ||
float & | step_z | ||
) |
Returns coordinate steps of migration 3d-grid
void U3dMigr::initMigrCube | ( | ushort | imx, |
ushort | jmx, | ||
ushort | kmx | ||
) |
Allocates memory for migration data cube
void U3dMigr::initMigrCube | ( | ushort | imx, |
ushort | jmx, | ||
ushort | kmx | ||
) |
Allocates memory for migration data cube
void U3dMigr::prepareSecondStage | ( | ) |
Prepares 3d field of fictive bounds normals for second stage; cleans 3d migration grid
void U3dMigr::prepareSecondStage | ( | ) |
Prepares 3d field of fictive bounds normals for second stage; cleans 3d migration grid
void U3dMigr::prepareThirdStage | ( | ) |
Cleans 3d field of fictive bounds normals
void U3dMigr::prepareThirdStage | ( | ) |
Cleans 3d field of fictive bounds normals
void U3dMigr::recalculateIPGrid | ( | MigrDataCube | ip_data | ) |
Incident points grid analysis and recalculation: if the cell contains a few angle-time data, they would be averaged (UNUSED)
void U3dMigr::recalculateIPGrid | ( | MigrDataCube | ip_data | ) |
Incident points grid analysis and recalculation: if the cell contains a few angle-time data, they would be averaged (UNUSED)