Class interp_steffen (o2scl)¶
-
template<class vec_t, class vec2_t = vec_t>
class o2scl::interp_steffen : public o2scl::interp_base<vec_t, vec_t>¶ Steffen’s monotonicity-preserving interpolation.
Adapted from the GSL version by J.-F. Caron which was based on [Steffen90].
Storage for cubic spline interpolation
-
inline double copysign(const double x, const double y)¶
Flip the sign of x if x and y have different signs.
-
inline interp_steffen()¶
Create a base interpolation object.
-
inline virtual ~interp_steffen()¶
-
inline virtual void set(size_t size, const vec_t &xa, const vec2_t &ya)¶
Initialize interpolation routine.
-
inline virtual double eval(double x0) const¶
Give the value of the function \( y(x=x_0) \) .
-
inline virtual double deriv(double x0) const¶
Give the value of the derivative \( y^{\prime}(x=x_0) \) .
-
inline virtual double deriv2(double x0) const¶
Give the value of the second derivative \( y^{\prime \prime}(x=x_0) \) .
-
inline virtual double integ(double al, double bl) const¶
Give the value of the integral \( \int_a^{b}y(x)~dx \) .
-
inline virtual const char *type() const¶
Return the type,
"interp_steffen"
.
-
interp_steffen(const interp_steffen<vec_t, vec2_t>&)¶
-
interp_steffen<vec_t, vec2_t> &operator=(const interp_steffen<vec_t, vec2_t>&)¶
-
inline double copysign(const double x, const double y)¶