`#include <adevs_poly.h>`

Public Member Functions

InterPoly (const double *u, const double *t, unsigned int n)

InterPoly (const double *u, double dt, unsigned int n, double t0=0.0)

void setData (const double *u, const double *t=NULL)

double interpolate (double t) const

double operator() (double t) const

double derivative (double t) const

~InterPoly ()

Detailed Description

This class implements Lagrange interpolating polynomials of arbitrary order for functions of a single variable. This can be useful in many discrete event simulations where tabular values, possible produced by discrete time calculations, need to be interpolated for use in a discrete event system. GDEVS is one particular example of this.

Constructor & Destructor Documentation

 adevs::InterPoly::InterPoly ( const double * u, const double * t, unsigned int n )

Construct a polynomial to interpolate a function u(t). The u- values are the dependent variable and t- the independent variables.

 adevs::InterPoly::InterPoly ( const double * u, double dt, unsigned int n, double t0 = `0.0` )

Construct a polynomial to interpolate u(t) with data points that are regularly spaced in time from an offset t0

Destructor

Member Function Documentation

 double adevs::InterPoly::derivative ( double t ) const

Approximate the function derivative at t

 double adevs::InterPoly::interpolate ( double t ) const

Get the interpolated value at t

 double adevs::InterPoly::operator() ( double t ) const

Overloaded operator for the interpolate method

 void adevs::InterPoly::setData ( const double * u, const double * t = `NULL` )

Assign new values to the data set. If t is NULL, then only new u values will be assigned and the old t data is kept.

The documentation for this class was generated from the following file: