UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
U3dAbstractWField Class Referenceabstract

Classes

struct  U3dRayPathSt
 

Public Member Functions

 U3dAbstractWField (int spn, U3dObservSys *os, float tmax, float dt, U3dWaveletType signal_type, float signal_freq, bool save_rp=false)
 
void addWave (int spn, U3dWaveDynHodo wh)
 
int getRecNum ()
 
int getSPN ()
 
int getTrLen ()
 
virtual bool saveAllHods (const char *file_name)=0
 
bool addRayPath (U3dWaveHodoCell whc, int rp_id)
 
virtual bool saveAllRays (char *file_name, int pid)
 

Protected Member Functions

bool getHodName (U3dComplexWaveHod hod, char *name)
 
int getSampleNum (double t)
 
float getSampleTime (int sn)
 
void addWHCell (U3dSPHods &sp_hods, U3dWaveHodoCell whi)
 
void recalcShearDirection (double &f, double &az)
 

Protected Attributes

bool m_ready
 
float m_dt
 
float m_tmax
 
int m_trlen
 
U3dObservSysm_os
 
int m_spn
 
int m_recnum
 
U3dTracem_traces
 
U3dSignalm_signal
 
U3dSPHodsAr m_sp_hods
 
bool m_save_rays_paths
 
U3dRayPathSt m_rp_st
 

Static Protected Attributes

static int m_ray_path_id
 
static double m_max_ampl
 

Constructor & Destructor Documentation

U3dAbstractWField::U3dAbstractWField ( int  spn,
U3dObservSys os,
float  tmax,
float  dt,
U3dWaveletType  signal_type,
float  signal_freq,
bool  save_rp = false 
)
Parameters
spnshot point number
osobservation system object
tmaxtrace length (ms)
dttrace time step (ms)
signal_typesource impulse type (see u3d_rtmod_defines.hpp)
signal_freqsource impulse frequency
save_rpflag to save ray paths or not

Member Function Documentation

bool U3dAbstractWField::addRayPath ( U3dWaveHodoCell  whc,
int  rp_id 
)

Analyse wave code to determine the type of the ray (see u3d_rtmod_defines.hpp) and save it in " m_rp_st.ray_type " class member Add current ray path to the whole raya paths array

void U3dAbstractWField::addWave ( int  spn,
U3dWaveDynHodo  wh 
)

Add information about calculated wave to the wave field

void U3dAbstractWField::addWHCell ( U3dSPHods sp_hods,
U3dWaveHodoCell  whi 
)
protected

Add wave hodograph item to inner hodographs storage

bool U3dAbstractWField::getHodName ( U3dComplexWaveHod  hod,
char *  name 
)
protected

Form hodograph name (for saving in DB) according to the wave code

int U3dAbstractWField::getRecNum ( )
inline

Return number of receivers in Observation system

int U3dAbstractWField::getSampleNum ( double  t)
inlineprotected

Returns sample number according to the time (ms)

float U3dAbstractWField::getSampleTime ( int  sn)
inlineprotected

Returns time (ms) according to the sample number

int U3dAbstractWField::getSPN ( )
inline

Returns ID of shot point

int U3dAbstractWField::getTrLen ( )
inline

Returns output wave field traces length (ms)

virtual bool U3dAbstractWField::saveAllHods ( const char *  file_name)
pure virtual

Save hodographs in DB

virtual bool U3dAbstractWField::saveAllRays ( char *  file_name,
int  pid 
)
virtual

Save all rays paths in binary file, in program directory

Member Data Documentation

float U3dAbstractWField::m_dt
protected

time step (ms)

double U3dAbstractWField::m_max_ampl
staticprotected

Maximal amplitude, during all waves addition (DEBUG)

U3dObservSys* U3dAbstractWField::m_os
protected

pointer to the observation system object

int U3dAbstractWField::m_ray_path_id
staticprotected

Unique (for current process) ID of the added ray path

bool U3dAbstractWField::m_ready
protected

object status flag

int U3dAbstractWField::m_recnum
protected

number of receivers in observation system

U3dRayPathSt U3dAbstractWField::m_rp_st
protected

rays paths storage

bool U3dAbstractWField::m_save_rays_paths
protected

flag to save rays paths or not

U3dSignal* U3dAbstractWField::m_signal
protected

impulse

U3dSPHodsAr U3dAbstractWField::m_sp_hods
protected

hodographs storage

int U3dAbstractWField::m_spn
protected

shot point identifier

float U3dAbstractWField::m_tmax
protected

maximal time value (ms)

U3dTrace* U3dAbstractWField::m_traces
protected

traces data storage

int U3dAbstractWField::m_trlen
protected

trace length (number of samples)


The documentation for this class was generated from the following file: