adevs
Public Member Functions | List of all members
adevs::InterPoly Class Reference

#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

adevs::InterPoly::~InterPoly ( )

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: