This class takes in x-dependent data and interpolates it to a given x on request.
More...
#include <interpolation.hh>
|
| Barycentric (std::vector< double > &x, std::vector< double > &y, uint order=1, bool copy=true) |
| Construct a new Interpolator object.
|
|
| Barycentric (const std::vector< double > &x, const std::vector< double > &y, uint order=1) |
| Construct a new Interpolator object.
|
|
| Barycentric () |
| Construct an empty Interpolator object.
|
|
bool | check_consistency (double tolerance) const |
| Check whether the interpolator is consistent with the original data. The interpolator checks if it can reproduce the original data with a given relative precision.
|
|
double | operator() (double x) const |
| Interpolate the data to a given x.
|
|
double | value (double x) const |
| Interpolate the data to a given x.
|
|
double | derivative (double x) const |
| Interpolate the derivative of the data to a given x.
|
|
|
std::unique_ptr< boost::math::interpolators::barycentric_rational< double > > | interpolator |
|
This class takes in x-dependent data and interpolates it to a given x on request.
Note, that interpolations beyond the range of the data will return the value at the closest boundary.
Internally, the boost barycentric rational interpolator is used.
◆ Barycentric() [1/3]
DiFfRG::Interpolation::Barycentric::Barycentric |
( |
std::vector< double > & | x, |
|
|
std::vector< double > & | y, |
|
|
uint | order = 1, |
|
|
bool | copy = true ) |
Construct a new Interpolator object.
- Parameters
-
x | The x values of the data. |
y | The y values of the data. |
order | The order of the interpolator. |
copy | Whether to copy the data or move it into the interpolator, making the original data unusable. |
◆ Barycentric() [2/3]
DiFfRG::Interpolation::Barycentric::Barycentric |
( |
const std::vector< double > & | x, |
|
|
const std::vector< double > & | y, |
|
|
uint | order = 1 ) |
Construct a new Interpolator object.
- Parameters
-
x | The x values of the data. |
y | The y values of the data. |
order | The order of the interpolator. |
◆ Barycentric() [3/3]
DiFfRG::Interpolation::Barycentric::Barycentric |
( |
| ) |
|
Construct an empty Interpolator object.
◆ check_consistency()
bool DiFfRG::Interpolation::Barycentric::check_consistency |
( |
double | tolerance | ) |
const |
Check whether the interpolator is consistent with the original data. The interpolator checks if it can reproduce the original data with a given relative precision.
- Parameters
-
tolerance | The relative precision to use. |
- Returns
- true If the interpolator is consistent with the original data.
◆ derivative()
double DiFfRG::Interpolation::Barycentric::derivative |
( |
double | x | ) |
const |
Interpolate the derivative of the data to a given x.
- Parameters
-
x | The x to interpolate to. |
- Returns
- double The interpolated derivative.
◆ operator()()
double DiFfRG::Interpolation::Barycentric::operator() |
( |
double | x | ) |
const |
Interpolate the data to a given x.
- Parameters
-
x | The x to interpolate to. |
- Returns
- double The interpolated data.
◆ value()
double DiFfRG::Interpolation::Barycentric::value |
( |
double | x | ) |
const |
Interpolate the data to a given x.
- Parameters
-
x | The x to interpolate to. |
- Returns
- double The interpolated data.
◆ interpolator
std::unique_ptr<boost::math::interpolators::barycentric_rational<double> > DiFfRG::Interpolation::Barycentric::interpolator |
|
private |
The documentation for this class was generated from the following file: