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>
|
| 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 | derivative (double x) const |
| evaluates first derivative of spline at position x More...
|
|
double | derivatives (double x, unsigned order) const |
| evaluates derivative of spline at position x More...
|
|
|
void | init_ (const std::vector< double > &x, const std::vector< double > &y) |
| initialize the spline More...
|
|
|
std::vector< double > | a_ |
| constant spline coefficients More...
|
|
std::vector< double > | b_ |
| linear spline coefficients More...
|
|
std::vector< double > | c_ |
| quadratic spline coefficients More...
|
|
std::vector< double > | d_ |
| cubic spline coefficients More...
|
|
std::vector< double > | x_ |
| knots More...
|
|
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.).
◆ 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
-
x | x-coordinates of input data points (knots) |
y | y-coordinates of input data points |
◆ CubicSpline2d() [2/2]
constructor of spline interpolation
- Parameters
-
m | (x,y) coordinates of input data points |
◆ derivative()
double derivative |
( |
double |
x | ) |
const |
evaluates first derivative of spline at position x
- Parameters
-
◆ derivatives()
double derivatives |
( |
double |
x, |
|
|
unsigned |
order |
|
) |
| const |
evaluates derivative of spline at position x
- Parameters
-
x | x-position |
order | order of the derivative Only order 1 or 2 make sense for cubic splines. |
◆ eval()
double eval |
( |
double |
x | ) |
const |
evaluates the spline at position x
- Parameters
-
◆ init_()
void init_ |
( |
const std::vector< double > & |
x, |
|
|
const std::vector< double > & |
y |
|
) |
| |
|
private |
initialize the spline
- Parameters
-
x | x-coordinates of input data points (knots) |
y | y-coordinates of input data points |
◆ a_
constant spline coefficients
◆ b_
linear spline coefficients
◆ c_
quadratic spline coefficients
◆ d_
cubic spline coefficients
◆ x_