OpendTect  7.0
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PolyTrend Class Reference

Polynomial trend with order 0 (mean), 1 (linear) or 2 (parabolic) The trend is derived from a set of values with positions and can be applied thereafter on any other position. More...

Public Types

enum  Order { None , Order0 , Order1 , Order2 }
 

Public Member Functions

 PolyTrend ()
 
template<class T >
void apply (const Coord &pos, bool dir, T &val) const
 
Order getOrder () const
 
bool operator== (const PolyTrend &) const
 
template<class IDXABLE >
bool set (const TypeSet< Coord > &, const IDXABLE &valuelistj)
 
void setOrder (PolyTrend::Order t)
 

Static Public Member Functions

static bool getOrder (int nrpoints, Order &, uiString *=0)
 
static const char * sKeyOrder ()
 

Protected Member Functions

void initCenter (const TypeSet< Coord > &)
 
void initOrder0 (const TypeSet< double > &)
 
void initOrder1 (const TypeSet< Coord > &, const TypeSet< double > &)
 
void initOrder2 (const TypeSet< Coord > &, const TypeSet< double > &)
 

Protected Attributes

double f0_
 
double f11_
 
double f12_
 
double f1_
 
double f22_
 
double f2_
 
Order order_
 
Coord posc_
 

Detailed Description

Polynomial trend with order 0 (mean), 1 (linear) or 2 (parabolic) The trend is derived from a set of values with positions and can be applied thereafter on any other position.

<>

Member Enumeration Documentation

◆ Order

Enumerator
None 
Order0 
Order1 
Order2 

Constructor & Destructor Documentation

◆ PolyTrend()

PolyTrend::PolyTrend ( )

Member Function Documentation

◆ apply()

template<class T >
void PolyTrend::apply ( const Coord pos,
bool  dir,
T &  val 
) const
inline

Applies the trend to a value tied to a position

Parameters
pos
dirtrue for detrend, false for restore
valresult after apply

◆ getOrder() [1/2]

Order PolyTrend::getOrder ( ) const
inline

◆ getOrder() [2/2]

static bool PolyTrend::getOrder ( int  nrpoints,
Order ,
uiString = 0 
)
static

◆ initCenter()

void PolyTrend::initCenter ( const TypeSet< Coord > &  )
protected

◆ initOrder0()

void PolyTrend::initOrder0 ( const TypeSet< double > &  )
protected

◆ initOrder1()

void PolyTrend::initOrder1 ( const TypeSet< Coord > &  ,
const TypeSet< double > &   
)
protected

◆ initOrder2()

void PolyTrend::initOrder2 ( const TypeSet< Coord > &  ,
const TypeSet< double > &   
)
protected

◆ operator==()

bool PolyTrend::operator== ( const PolyTrend ) const

◆ set()

template<class IDXABLE >
bool PolyTrend::set ( const TypeSet< Coord > &  poslist,
const IDXABLE &  valuelistj 
)
inline

Use after the order is set! Sets the trend from a list of values tied to a list of coordinates

◆ setOrder()

void PolyTrend::setOrder ( PolyTrend::Order  t)
inline

◆ sKeyOrder()

static const char* PolyTrend::sKeyOrder ( )
inlinestatic

Member Data Documentation

◆ f0_

double PolyTrend::f0_
protected

◆ f11_

double PolyTrend::f11_
protected

◆ f12_

double PolyTrend::f12_
protected

◆ f1_

double PolyTrend::f1_
protected

◆ f22_

double PolyTrend::f22_
protected

◆ f2_

double PolyTrend::f2_
protected

◆ order_

Order PolyTrend::order_
protected

◆ posc_

Coord PolyTrend::posc_
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2024