UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
PolarityWaveDetector Class Reference
Inheritance diagram for PolarityWaveDetector:
AbstractWaveDetector

Classes

struct  PolarityParams
 

Public Member Functions

 PolarityWaveDetector (size_t time_base, size_t sb_size, size_t sb_step=1)
 
bool appendTracePointer (const Trace &tr) const
 
bool setTFB (size_t app_tfb)
 
void clear ()
 
- Public Member Functions inherited from AbstractWaveDetector
bool operator() (Trace &tr) const
 

Static Public Member Functions

static float calcRatio (const float &E1, const float &E2)
 

Protected Types

typedef std::vector
< PolarityParams
PolarityParamsAr
 

Protected Member Functions

virtual bool calc (Trace &tr) const
 
bool formDetectorData (Trace &tr) const
 
bool formParamsAr (PolarityParamsAr &) const
 
bool getWinPolarityParams (PolarityWaveDetector::PolarityParams &params, const size_t &s0, const size_t &s1) const
 
bool getPolarityParams (PolarityWaveDetector::PolarityParams &params) const
 
bool getMatrix (LaGenMatDouble &matrix) const
 
double getMatrixItem (size_t tr1, size_t tr2) const
 
double getAvValue (size_t tr) const
 

Static Protected Member Functions

static void interpolatePolParams (const size_t &, const size_t &, const PolarityWaveDetector::PolarityParams &, const PolarityWaveDetector::PolarityParams &, std::map< size_t, PolarityWaveDetector::PolarityParams > &)
 

Protected Attributes

std::vector< const Trace * > m_traces
 
size_t m_tfb
 
size_t m_time_base
 
size_t m_sbase
 
size_t m_sb_step
 
bool m_ready
 

Member Function Documentation

bool PolarityWaveDetector::appendTracePointer ( const Trace tr) const

Add new trace pointer to array under process

virtual bool PolarityWaveDetector::calc ( Trace tr) const
protectedvirtual

Main calculation method. ATTENTION: only 3-components case is cupported!

Reimplemented from AbstractWaveDetector.

static float PolarityWaveDetector::calcRatio ( const float &  E1,
const float &  E2 
)
static

Copy of EnergyWaveDetector::calc_ratio() method

void PolarityWaveDetector::clear ( )

Clear inner traces pointers array. Set inner FBT to zero.

bool PolarityWaveDetector::formParamsAr ( PolarityParamsAr &  ) const
protected

Calculate polarization parameters array in terms of PolarityParams structures. Contains cycle with sliding base (set by m_sbase) inside whole time window (set by m_time_base).

double PolarityWaveDetector::getAvValue ( size_t  tr) const
protected

Get average value of amplitude for given trace. Time window should be set ealier.

bool PolarityWaveDetector::getMatrix ( LaGenMatDouble &  matrix) const
protected

Form 3x3 matrix for given traces set, based on displacements values in different components. Time window should be set ealier. Eigen values of this matrix define polarization parameters.

double PolarityWaveDetector::getMatrixItem ( size_t  tr1,
size_t  tr2 
) const
protected

Calculate item of 3x3 matrix for two given indexes (traces with different components). Time window should be set ealier.

bool PolarityWaveDetector::getPolarityParams ( PolarityWaveDetector::PolarityParams params) const
protected

Calculate polarization parameters for given traces set. Time window should be set ealier.

bool PolarityWaveDetector::getWinPolarityParams ( PolarityWaveDetector::PolarityParams params,
const size_t &  s0,
const size_t &  s1 
) const
protected

Calculate polarization parameters for current traces set in given time window. Time window is defined for traces array by Trace::set_window() method, so methods below do not know anything about it and work with traces themselves.

static void PolarityWaveDetector::interpolatePolParams ( const size_t &  ,
const size_t &  ,
const PolarityWaveDetector::PolarityParams ,
const PolarityWaveDetector::PolarityParams ,
std::map< size_t, PolarityWaveDetector::PolarityParams > &   
)
staticprotected

Interpolate polarization parameters for given time window

bool PolarityWaveDetector::setTFB ( size_t  app_tfb)

Set starting time of processed window for current traces set. Default value = 0.

Member Data Documentation

bool PolarityWaveDetector::m_ready
protected

Object correct initialization state

size_t PolarityWaveDetector::m_sb_step
protected

Step (samples count) of sliding base

size_t PolarityWaveDetector::m_sbase
protected

Length (samples count) of sliding base

size_t PolarityWaveDetector::m_tfb
protected

Starting time (sample id) of processed traces time window

size_t PolarityWaveDetector::m_time_base
protected

Length (samples count) of processed time window

std::vector<const Trace*> PolarityWaveDetector::m_traces
mutableprotected

Traces pointers array


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