Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
CubicSpline2d Class Reference

cubic spline interpolation as described in R.L. Burden, J.D. Faires, Numerical Analysis, 4th ed. PWS-Kent, 1989, ISBN 0-53491-585-X, pp. 126-131. More...

#include <OpenMS/MATH/MISC/CubicSpline2d.h>

Public Member Functions

 CubicSpline2d (const std::vector< double > &x, const std::vector< double > &y)
 constructor of spline interpolation More...
 
 CubicSpline2d (const std::map< double, double > &m)
 constructor of spline interpolation More...
 
double eval (double x) const
 evaluates the spline at position x More...
 
double derivatives (double x, unsigned order) const
 evaluates derivative of spline at position x More...
 

Private Member Functions

void init_ (const std::vector< double > &x, const std::vector< double > &y)
 initialize the spline More...
 

Private Attributes

std::vector< doublea_
 
std::vector< doubleb_
 
std::vector< doublec_
 
std::vector< doubled_
 
std::vector< doublex_
 

Detailed Description

cubic spline interpolation as described in R.L. Burden, J.D. Faires, Numerical Analysis, 4th ed. PWS-Kent, 1989, ISBN 0-53491-585-X, pp. 126-131.

Construction of the spline takes by far the most time. Evaluating it is rather fast (one evaluation is about 50x faster than construction – depending on number of points etc.).

Constructor & Destructor Documentation

◆ CubicSpline2d() [1/2]

CubicSpline2d ( const std::vector< double > &  x,
const std::vector< double > &  y 
)

constructor of spline interpolation

The coordinates must match by index. Both vectors must be the same size and sorted in x. Sortedness in x is required for

See also
SplinePackage.
Parameters
xx-coordinates of input data points (knots)
yy-coordinates of input data points

◆ CubicSpline2d() [2/2]

CubicSpline2d ( const std::map< double, double > &  m)

constructor of spline interpolation

Parameters
m(x,y) coordinates of input data points

Member Function Documentation

◆ derivatives()

double derivatives ( double  x,
unsigned  order 
) const

evaluates derivative of spline at position x

Parameters
xx-position
orderorder of the derivative Only order 1 or 2 make sense for cubic splines.

Referenced by MetaProSIPInterpolation::getHighPoints(), and PeakPickerHiRes::pick().

◆ eval()

double eval ( double  x) const

evaluates the spline at position x

Parameters
xx-position

Referenced by MetaProSIPInterpolation::getHighPoints(), and PeakPickerHiRes::pick().

◆ init_()

void init_ ( const std::vector< double > &  x,
const std::vector< double > &  y 
)
private

initialize the spline

Parameters
xx-coordinates of input data points (knots)
yy-coordinates of input data points

Member Data Documentation

◆ a_

std::vector<double> a_
private

◆ b_

std::vector<double> b_
private

◆ c_

std::vector<double> c_
private

◆ d_

std::vector<double> d_
private

◆ x_

std::vector<double> x_
private

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:07 using doxygen 1.8.13