ampsci
c++ program for high-precision atomic structure calculations of single-valence systems
|
Performs interpolation using GSL (GNU Scientific Library) More...
#include <Interpolator.hpp>
Public Member Functions | |
Interp (const std::vector< double > &x, const std::vector< double > &y, Method method=Method::cspline) | |
x_in and y_in | |
Interp (const Interpolator::Interp &)=delete | |
Interp & | operator= (const Interpolator::Interp &)=delete |
double | interp (double x) const |
Evaluates interpolation function at point x. Does not extrapolate. | |
std::vector< double > | interp (const std::vector< double > &x) const |
Evaluates interpolation function at set of points {x}. Does not extrapolate. | |
double | operator() (double x) const |
Evaluates interpolation function at point x. Does not extrapolate. | |
std::vector< double > | operator() (const std::vector< double > &x) const |
Evaluates interpolation function at set of points {x}. Does not extrapolate. | |
Performs interpolation using GSL (GNU Scientific Library)
On construction takes in vectors x and y, to be interpolated. These are intepreted as function values y(x) at descrete points x. x and y dimensions must match. Given new x', will return y(x') based on interpolation. NOTE: Interpolates, but does NOT extrapolate! Everything outside the region (xmin,xmax) from initial input will be zero. It may use any interpolation method provided by GSL library. See Interpolator::Method for list of options. By default, cspline (cubic b-spline) method is used. Note: gsl function takes pointers to x and y data. Therefore, vectors x and y should outlive the Interp object