# Changeset 1644 for trunk/yat/regression/GSLInterpolation.h

Ignore:
Timestamp:
Dec 13, 2008, 9:14:51 AM (13 years ago)
Message:

Addresses #466. Changed to VectorBase? passing. Added documentation.

File:
1 edited

Unmodified
Added
Removed
• ## trunk/yat/regression/GSLInterpolation.h

 r1643 namespace yat { namespace utility { class VectorConstView; class VectorBase; } namespace regression { /** @brief Documentation please. \brief Base class for interfacing GSL interpolation. The GSL interpolation is descibed in http://www.gnu.org/software/gsl/manual/html_node/Interpolation.html. The GSL library provides a variety of interpolation methods, including Cubic splines and Akima splines. Interpolations can be defined for both normal and periodic boundary conditions. Additional functions are available for computing derivatives and integrals of interpolating functions. Given a set of data points \f\$ (x_1, y_1) \dots (x_n, y_n) \f\$ the sub classescompute a continuous interpolating function \f\$ y(x) \f\$ such that \f\$ y(x_i) = y_i \f\$. The interpolation is piecewise smooth, and its behavior at the end-points is determined by the type of interpolation used. */ class GSLInterpolation /** @brief Documentation please. \brief Calculate the interpolated value for \a x. \return The interpolated value of \f\$ y \f\$ for a given point \a x. */ double evaluate(const double x) const; protected: /** @brief The default constructor \brief The default constructor Initializion of the interpolation object for the data \f\$ (x, y) \f\$ where \a x and \a y are vector like objects of the same size. The content of \a x and \a y are copied for internal storage. \a x is always assumed to be strictly ordered, with increasing \a x values; the behavior for other arrangements is not defined. */ GSLInterpolation(const gsl_interp_type*, const utility::VectorConstView& x, const utility::VectorConstView& y); GSLInterpolation(const gsl_interp_type*, const utility::VectorBase& x, const utility::VectorBase& y); /** @brief The destructor \brief The destructor */ virtual ~GSLInterpolation(void); private: /** Copy Constructor. (not implemented) \brief Copy Constructor. (not implemented) */ GSLInterpolation(const GSLInterpolation&);
Note: See TracChangeset for help on using the changeset viewer.