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

#include <psc_ts_optimizer.hpp>

Classes

struct  Params
 
struct  Results
 

Public Member Functions

 TsOptimizer (const Params &params)
 
virtual ~TsOptimizer ()
 
bool operator() (TsDispersionResidual &dr, Solver::TimeShifts *const p_shots_statics, Solver::TimeShifts *const p_recvs_statics, Results *const p_results=NULL) const
 

Protected Member Functions

double statics_iter (TsDispersionResidual &dr, const Trace::Header::AttrId &attr_id, Solver::TimeShifts &statics) const
 
double calc_dispersion (TsDispersionResidual &dr, const Trace::Header::AttrId &attr_id) const
 
double dummy_minimize (const TsDispersionResidual &dr, Trace::TimeT &min_dt) const
 
double minimize (const TsDispersionResidual &dr, Trace::TimeT &min_dt) const
 
double least_squares_minimize (const TsDispersionResidual &dr, Trace::TimeT &min_dt) const
 
virtual void progress (const int cur, const int max) const
 

Protected Attributes

Params m_params
 

Detailed Description

Optimization of CCFs rows time shifts.

Constructor & Destructor Documentation

psc::TsOptimizer::TsOptimizer ( const Params params)

Default constructor with parameters provided.

virtual psc::TsOptimizer::~TsOptimizer ( )
virtual

Destructor.

Member Function Documentation

double psc::TsOptimizer::calc_dispersion ( TsDispersionResidual dr,
const Trace::Header::AttrId attr_id 
) const
protected

Calculates full dispersion for provided header attribute (TA_NSP or TA_NRP).

double psc::TsOptimizer::dummy_minimize ( const TsDispersionResidual dr,
Trace::TimeT min_dt 
) const
protected

Dummy dispersion residual minimization.

double psc::TsOptimizer::least_squares_minimize ( const TsDispersionResidual dr,
Trace::TimeT min_dt 
) const
protected

Minimize dispersion using least squares.

double psc::TsOptimizer::minimize ( const TsDispersionResidual dr,
Trace::TimeT min_dt 
) const
protected

Minimize dispersion residual.

bool psc::TsOptimizer::operator() ( TsDispersionResidual dr,
Solver::TimeShifts *const  p_shots_statics,
Solver::TimeShifts *const  p_recvs_statics,
Results *const  p_results = NULL 
) const
Calculate statics for shots (not NULL) and/or receivers (not NULL) 

by time shifts optimization.

virtual void psc::TsOptimizer::progress ( const int  cur,
const int  max 
) const
protectedvirtual

Progress of computation, can be reimplemented.

double psc::TsOptimizer::statics_iter ( TsDispersionResidual dr,
const Trace::Header::AttrId attr_id,
Solver::TimeShifts statics 
) const
protected

Staics iteration, calc and apply. Return dispersion value.

Member Data Documentation

Params psc::TsOptimizer::m_params
protected

< Current parameters of optimization.


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