A Linear Spline Class.
More...
#include <linspline.h>
|
| LinSpline ()=default |
|
| ~LinSpline () override=default |
|
void | Interpolate (const Eigen::VectorXd &x, const Eigen::VectorXd &y) override |
| Calculate interpolating spline for given (x,y) values. Points on resulting spline can be obtained via Calculate().
|
|
void | Fit (const Eigen::VectorXd &x, const Eigen::VectorXd &y) override |
| Fit spline through noisy (x,y) values. Points on resulting fitted spline can be obtained via Calculate().
|
|
double | Calculate (double r) override |
| Calculate spline function value for a given x value on the spline created by Interpolate() or Fit()
|
|
double | CalculateDerivative (double r) override |
| Calculate y value for a given x value on the derivative of the spline created by function Interpolate or Fit.
|
|
Eigen::VectorXd | Calculate (const Eigen::VectorXd &x) |
| Calculate spline function values for given x values on the spline created by Interpolate() or Fit()
|
|
Eigen::VectorXd | CalculateDerivative (const Eigen::VectorXd &x) |
| Calculate y values for given x values on the derivative of the spline created by function Interpolate or Fit.
|
|
| Spline ()=default |
|
virtual | ~Spline ()=default |
|
void | setBC (eBoundary bc) |
| Set the boundary type of the spline.
|
|
void | setBCInt (Index bc) |
| Set the boundary type of the spline.
|
|
double | getGridPoint (int i) |
| Get the grid point of certain index.
|
|
Eigen::VectorXd | Calculate (const Eigen::VectorXd &x) |
| Calculate spline function values for given x values on the spline created by Interpolate() or Fit()
|
|
Eigen::VectorXd | CalculateDerivative (const Eigen::VectorXd &x) |
| Calculate y values for given x values on the derivative of the spline created by function Interpolate or Fit.
|
|
void | Print (std::ostream &out, double interval) |
| Print spline values (using Calculate()) on output "out" on the entire grid in steps of "interval".
|
|
Index | getInterval (double r) |
| Determine the index of the interval containing value r.
|
|
Index | GenerateGrid (double min, double max, double h) |
| Generate the grid for fitting from "min" to "max" in steps of "h".
|
|
Eigen::VectorXd & | getX () |
| Get the grid array x.
|
|
const Eigen::VectorXd & | getX () const |
|
A Linear Spline Class.
class supports linear interpolation and linear fit of data
Definition at line 34 of file linspline.h.
◆ LinSpline()
votca::tools::LinSpline::LinSpline |
( |
| ) |
|
|
default |
◆ ~LinSpline()
votca::tools::LinSpline::~LinSpline |
( |
| ) |
|
|
overridedefault |
◆ Calculate() [1/2]
Eigen::VectorXd votca::tools::Spline::Calculate |
( |
const Eigen::VectorXd & | x | ) |
|
Calculate spline function values for given x values on the spline created by Interpolate() or Fit()
- Parameters
-
- Returns
- vector of y value
Definition at line 116 of file spline.cc.
◆ Calculate() [2/2]
double votca::tools::LinSpline::Calculate |
( |
double | x | ) |
|
|
overridevirtual |
◆ CalculateDerivative() [1/2]
Eigen::VectorXd votca::tools::Spline::CalculateDerivative |
( |
const Eigen::VectorXd & | x | ) |
|
Calculate y values for given x values on the derivative of the spline created by function Interpolate or Fit.
- Parameters
-
- Returns
- vector of y value
Definition at line 124 of file spline.cc.
◆ CalculateDerivative() [2/2]
double votca::tools::LinSpline::CalculateDerivative |
( |
double | x | ) |
|
|
overridevirtual |
Calculate y value for a given x value on the derivative of the spline created by function Interpolate or Fit.
- Parameters
-
- Returns
- y value of derivative
Implements votca::tools::Spline.
Definition at line 35 of file linspline.cc.
◆ Fit()
void votca::tools::LinSpline::Fit |
( |
const Eigen::VectorXd & | x, |
|
|
const Eigen::VectorXd & | y ) |
|
overridevirtual |
Fit spline through noisy (x,y) values. Points on resulting fitted spline can be obtained via Calculate().
- Parameters
-
x | values of data to be fitted |
y | values of data to be fitted both vectors must be of same size |
Implements votca::tools::Spline.
Definition at line 80 of file linspline.cc.
◆ Interpolate()
void votca::tools::LinSpline::Interpolate |
( |
const Eigen::VectorXd & | x, |
|
|
const Eigen::VectorXd & | y ) |
|
overridevirtual |
Calculate interpolating spline for given (x,y) values. Points on resulting spline can be obtained via Calculate().
- Parameters
-
x | values of data to be interpolated |
y | values of data to be interpolated both vectors must be of same size |
Implements votca::tools::Spline.
Definition at line 40 of file linspline.cc.
Eigen::VectorXd votca::tools::LinSpline::a |
|
protected |
Eigen::VectorXd votca::tools::LinSpline::b |
|
protected |
The documentation for this class was generated from the following files: