26 #ifndef O2SCL_INTERP2_H 27 #define O2SCL_INTERP2_H 29 #include <boost/numeric/ublas/vector.hpp> 30 #include <boost/numeric/ublas/matrix.hpp> 32 #ifndef DOXYGEN_NO_O2NS 38 template<
class vec_t=boost::numeric::ublas::vector<
double>,
39 class mat_t=boost::numeric::ublas::matrix<
double> >
42 #ifdef O2SCL_NEVER_DEFINED 56 virtual double eval(
double x,
double y)
const=0;
66 virtual double deriv_x(
double x,
double y)
const=0;
70 virtual double deriv_xx(
double x,
double y)
const=0;
75 virtual double integ_x(
double x0,
double x1,
double y)
const=0;
79 virtual double deriv_y(
double x,
double y)
const=0;
83 virtual double deriv_yy(
double x,
double y)
const=0;
88 virtual double integ_y(
double x,
double y0,
double y1)
const=0;
93 virtual double deriv_xy(
double x,
double y)
const=0;
117 virtual double eval_gen(
int ix,
int iy,
double x0,
double x1,
118 double y0,
double y1)
const=0;
120 #ifndef DOXYGEN_INTERNAL 148 #ifndef DOXYGEN_NO_O2NS virtual double operator()(double x, double y) const
Perform the 2-d interpolation.
virtual double eval_gen(int ix, int iy, double x0, double x1, double y0, double y1) const =0
Compute a general interpolation result.
The main O<span style='position: relative; top: 0.3em; font-size: 0.8em'>2</span>scl O$_2$scl names...
size_t ny
The number of y grid points.
virtual double deriv_xy(double x, double y) const =0
Compute the mixed partial derivative .
virtual double deriv_x(double x, double y) const =0
Compute the partial derivative in the x-direction.
virtual double integ_y(double x, double y0, double y1) const =0
Compute the integral in the y-direction between y=y0 and y=y1.
virtual double deriv_yy(double x, double y) const =0
Compute the partial second derivative in the y-direction.
virtual double integ_x(double x0, double x1, double y) const =0
Compute the integral in the x-direction between x=x0 and x=x1.
virtual double deriv_y(double x, double y) const =0
Compute the partial derivative in the y-direction.
size_t nx
The number of x grid points.
virtual double deriv_xx(double x, double y) const =0
Compute the partial second derivative in the x-direction.
virtual double eval(double x, double y) const =0
Perform the 2-d interpolation.
Two-dimensional interpolation base class [abstract].
static const double x1[5]