![]()  | 
  
    UNIVERS
    15.3
    
   UNIVERS base processing software API 
   | 
 
#include <psc_solver.hpp>
Classes | |
| struct | Params | 
| struct | RowElem | 
| struct | TimeShift | 
Public Types | |
| enum | RowType { FIRST_ORDER_ROW_TYPE = 0, SECOND_ORDER_ROW_TYPE } | 
| typedef std::vector< RowElem > | RowElemVec | 
| typedef std::vector< TimeShift > | TimeShifts | 
Public Member Functions | |
| Solver (const Params ¶ms) | |
| virtual | ~Solver () | 
| bool | operator() (const WaveField &row, TimeShifts &time_shifts) const | 
| bool | operator() (RowElemVec &row_elem_vec, TimeShifts &time_shifts) const | 
| void | setParameters (const Params ¶ms) | 
| const Params & | getParameters () const | 
Protected Member Functions | |
| void | update_eq_data (const WaveField &row, RowElemVec &row_elem_vec) const | 
| bool | determine_statics (const RowElemVec &row_elem_vec, TimeShifts &time_shifts) const | 
| std::set< int > | get_row_ids (const RowElemVec &row_elem_vec) const | 
| bool | get_eq_row (const RowElem &row_elem, const std::set< int > &ids_set, std::vector< Trace::AmplT > &row_vec, Trace::TimeT &rp_elem) const | 
| bool | remove_low_freq (const size_t polynomial_degree, RowElemVec &row_elem_vec) const | 
| bool | remove_low_freq (const size_t polynomial_degree, RowElemVec::iterator elem_it1, RowElemVec::iterator elem_it2) const | 
| bool | remove_trend (const size_t trend_polynomial_degree, TimeShifts &time_shifts) const | 
| void | test_la_to_files (const std::string &matr_fname, const std::string &vec_fname, const LaGenMatDouble &Am, const LaVectorDouble &bv) const | 
Protected Attributes | |
| Params | m_params | 
Solve POLYCOR linear system using provided CCFs row.
| typedef std::vector<RowElem> psc::Solver::RowElemVec | 
Data for equations.
| typedef std::vector<TimeShift> psc::Solver::TimeShifts | 
Time shifts vector.
| enum psc::Solver::RowType | 
| psc::Solver::Solver | ( | const Params & | params | ) | 
Constructor with type of row provided.
      
  | 
  virtual | 
Destructor.
      
  | 
  protected | 
Determine statics from provided vector of row elements. Return false on error.
      
  | 
  protected | 
Get linear system equation row and right part vector element.
      
  | 
  protected | 
Get all indexies from provided vector of row elements.
| const Params& psc::Solver::getParameters | ( | ) | const | 
Get current parameters.
| bool psc::Solver::operator() | ( | const WaveField & | row, | 
| TimeShifts & | time_shifts | ||
| ) | const | 
Computes time shifts from provided CCFs row.
| bool psc::Solver::operator() | ( | RowElemVec & | row_elem_vec, | 
| TimeShifts & | time_shifts | ||
| ) | const | 
Computes time shifts from provided vector of row elements.
      
  | 
  protected | 
Remove low frequency using polynomial approximation
from provided time shifts of vector of row elements.
      
  | 
  protected | 
Remove low freq from time shifts of provided range of vector of row elements.
Return false on error.
      
  | 
  protected | 
Remove trend from provided time shifts (Using least squares linear approximation).
Return false on error.
| void psc::Solver::setParameters | ( | const Params & | params | ) | 
Set parameters.
      
  | 
  protected | 
Update equations data from provided accumulated CCFs row.
      
  | 
  protected | 
< Current parameters.
 1.8.5