A class for interpolating data with arbitrary. More...
#include <cubicspline.h>
Collaboration diagram for Mezzanine::CubicSpline< TimeSeriesType, DataSeriesType >:Public Types | |
| typedef ContainerType::const_iterator | const_iterator |
| An iterator suitable for the metadata this spline uses that will not allow changes to the underlying data. | |
| typedef std::vector< element_type > | ContainerType |
| The underlying type of the container that actually stores the instances of ContainerType. | |
| typedef CubicSplineElement< TimeSeriesType, DataSeriesType > | element_type |
| The meta data type stored by this container. | |
| typedef ContainerType::iterator | iterator |
| An iterator suitable for the metadata this spline uses. | |
Public Member Functions | |
| CubicSpline () | |
| Create an empty, invalid spline. | |
| CubicSpline (const std::vector< DataSeriesType > &y) | |
| Create a Spline with a time series spread evenly between 0 and 1. More... | |
| CubicSpline (const std::vector< TimeSeriesType > &x, const std::vector< DataSeriesType > &y) | |
| A spline with custom time and data series values. | |
| iterator | begin () |
| const_iterator | begin () const |
| iterator | end () |
| const_iterator | end () const |
| DataSeriesType | interpolate (const TimeSeriesType &x) const |
| std::vector< DataSeriesType > | interpolate (const std::vector< TimeSeriesType > &xx) const |
| DataSeriesType | operator[] (const TimeSeriesType &x) const |
| std::vector< DataSeriesType > | operator[] (const std::vector< TimeSeriesType > &xx) const |
| void | push_back (const DataSeriesType &DataToAdd) |
| Add another entry to the spline. More... | |
Public Attributes | |
| ContainerType | DataElements |
| The actual container of Metadata. | |
Protected Member Functions | |
| void | CalculateElements (const std::vector< TimeSeriesType > &x, const std::vector< DataSeriesType > &y) |
A class for interpolating data with arbitrary.
Templated on type of X, Y. X and Y must have operator +, -, *, /. Y must have defined a constructor that takes a scalar.
Definition at line 109 of file cubicspline.h.
|
inline |
Create a Spline with a time series spread evenly between 0 and 1.
| y | The data series. |
Definition at line 129 of file cubicspline.h.
|
inline |
Add another entry to the spline.
Adjust the time series to evenly distribute it between 0 and 1 for each entry, including the new one DataToAdd
Definition at line 173 of file cubicspline.h.
1.8.9.1. Thanks to the
Open Icon Library
for help with some of the icons.