An InterpolatingFunction stores a cubic spline or piecewise linear representation of a set of x,y pairs. It can also transform the variable on input and output, so that the underlying spline may live in log-log space, but such transforms are transparent to the setup and use of the function. This makes it possible to store splines of, e.g., data which are very close to a power law, as a LogLogInterpolatingFunction, and to then have very accurate interpolation and extrapolation, since the curvature of such a function is small in log-log space. InterpolatingFunction(x, y, lowerSlope, upperSlope, XConversions, YConversions, cubic_spline) sets up a spline. If lowerSlope or upperSlope is None, the corresponding boundary is set to 'natural', with zero second derivative. XConversions is a list of g, g', g'' to evaluate for transforming the X axis. YConversions is a list of f, f', f'', f(-1) to evaluate for transforming the Y axis. Note that the y transform f and f(-1) MUST be exact inverses, or the system will melt. If cubic_spline is True (default), create a cubic spline, otherwise, create a piecewise linear interpolator.
An InterpolatingFunction stores a cubic spline representation of a set of x,y pairs. It can also transform the variable on input and output, so that the underlying spline may live in log-log space, but such transforms are transparent to the setup and use of the function. This makes it possible to store splines of, e.g., data which are very close to a power law, as a LogLogInterpolatingFunction, and to then have very accurate interpolation and extrapolation, since the curvature of such a function is small in log-log space.
InterpolatingFunction(x, y, lowerSlope, upperSlope, XConversions, YConversions) sets up a spline. If lowerSlope or upperSlope is None, the corresponding boundary is set to 'natural', with zero second derivative. XConversions is a list of g, g', g'' to evaluate for transforming the X axis. YConversions is a list of f, f', f'', f(-1) to evaluate for transforming the Y axis. Note that the y transform f and f(-1) MUST be exact inverses, or the system will melt.
Definition at line 1100 of file C2Functions.py.
Public Member Functions | |
def | __init__ |
def | value_with_derivatives |
get the value of the function, and its first & second derivative | |
def | SetLeftExtrapolation |
Set extrapolation on left end of data set. | |
def | SetRightExtrapolation |
Set extrapolation on right end of data set. | |
def | SetLowerExtrapolation |
set the extrapolation permitted on the left edge of the original data set (lowest x value) | |
def | SetUpperExtrapolation |
set the extrapolation permitted on the right edge of the original data set (hightest x value) | |
def | YtoX |
legacy... | |
def | UnaryOperator |
create new InterpolatingFunction C2source(self) evaluated pointwise | |
def | BinaryOperator |
create new InterpolatingFunction self +-*/ rhs (or any other binary operator) evaluated pointwise | |
def | __add__ |
python operator to return a new InterpolatingFunction self +right evaluated pointwise | |
def | __sub__ |
python operator to return a new InterpolatingFunction self -right evaluated pointwise | |
def | __mul__ |
python operator to return a new InterpolatingFunction self *right evaluated pointwise | |
def | __div__ |
python operator to return a new InterpolatingFunction self /right evaluated pointwise | |
Public Attributes | |
Xraw | |
xInverted | |
fYout | |
yNonLin | |
F | |
fXout | |
xNonLin | |
X | |
y2 | |
Static Public Attributes | |
YConversions = None | |
XConversions = None | |
string | name = 'data' |
string | ClassName = 'InterpolatingFunction' |