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 | Protected Attributes | List of all members
psc::Correlator Class Reference

#include <psc_correlator.hpp>

Classes

struct  Params
 

Public Member Functions

 Correlator (const Params &params)
 
virtual ~Correlator ()
 
virtual bool operator() (const dba::Seismic &in_seis_db, dba::Seismic &out_seis_db, WeightsStore *pwstore=NULL) const
 
virtual int ccfsTraceSize (const dba::Seismic &in_seis_db) const
 
const Paramsparams () const
 
void setParams (const Params &params)
 

Static Public Member Functions

static std::pair< int, int > gridStep (const unsigned int dir, const int stride, const std::pair< int, int > &sp_rp_ids)
 

Protected Types

typedef std::vector< std::pair
< unsigned int, unsigned int > > 
StrideDirVec
 

Protected Member Functions

virtual void progress (const int, const int) const
 
bool correlate (const StrideDirVec &dir_stride_vec, const dba::Seismic &in_seis_db, const Trace &tr, Trace &ccfs, WeightsStore *pwstore) const
 
bool calc_ccf (const int corr_dir, const unsigned int stride, const dba::Seismic &in_seis_db, const Trace &tr, Trace &ccfs) const
 
Trace::TimeT corr_trace_size () const
 
int corr_trace_size (const dba::Seismic &in_seis_db) const
 

Protected Attributes

Params m_params
 

Detailed Description

Provides first order correlations for surface seismic data. Used indexies are: NSP, NRP. For COMPLETE_2D directions mask CCFs packed as: ACF SHOT RECV CMP OFFSET SHOT RECV CMP OFFSET |--—||--—|--—|--—|--—|| ... ||--—|--—|--—|--—||—>t stride=1 stride=N

Member Typedef Documentation

typedef std::vector< std::pair <unsigned int, unsigned int> > psc::Correlator::StrideDirVec
protected

< Vector of pairs <correlation direction, stride> Current parameters.

Constructor & Destructor Documentation

psc::Correlator::Correlator ( const Params params)

Constructs correlator with parameters provided.

virtual psc::Correlator::~Correlator ( )
virtual

Destructs object.

Member Function Documentation

bool psc::Correlator::calc_ccf ( const int  corr_dir,
const unsigned int  stride,
const dba::Seismic in_seis_db,
const Trace tr,
Trace ccfs 
) const
protected

Calc CCF

virtual int psc::Correlator::ccfsTraceSize ( const dba::Seismic in_seis_db) const
virtual

Size of cross correlation functions trace in samples, <0 on error.

Trace::TimeT psc::Correlator::corr_trace_size ( ) const
protected

Resulted correlation trace size in ms.

int psc::Correlator::corr_trace_size ( const dba::Seismic in_seis_db) const
protected

Determine size of one correlation function. Return < 0 on error.

bool psc::Correlator::correlate ( const StrideDirVec dir_stride_vec,
const dba::Seismic in_seis_db,
const Trace tr,
Trace ccfs,
WeightsStore pwstore 
) const
protected

Calc correlations for provided trace.

static std::pair<int, int> psc::Correlator::gridStep ( const unsigned int  dir,
const int  stride,
const std::pair< int, int > &  sp_rp_ids 
)
static
Update provided indexies of shot and receiver using direction and stride. 

Return indexies updated.

virtual bool psc::Correlator::operator() ( const dba::Seismic in_seis_db,
dba::Seismic out_seis_db,
WeightsStore pwstore = NULL 
) const
virtual
Calculate field of CCFs with current parameters. 

Weights store will be updated if provided. Returns false on error.

const Params& psc::Correlator::params ( ) const

Get current parameters.

virtual void psc::Correlator::progress ( const int  ,
const int   
) const
inlineprotectedvirtual

Progress of calculations.

void psc::Correlator::setParams ( const Params params)

Set parameters. Return true if parameters is correct, otherwise return false.


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