Spline Functions

This page describes **AMA Spline Library** functions to evaluate, differentiate and integrate tensor product splines and other functions for manipulating a AMA_SPLINE structure.

The **AMA Spline Library** provides the Univariate Data Functions and Multivariate Data Functions to compute a spline which either approximates or interpolates univariate data, , or multivariate data, , respectively. These splines are represented as

where is a vector of independent variables . The 's are the coefficients of the tensor product B-splines

where the 's are the univariate B-splines of degree defined by the knot vector

This section presents **AMA Spline Library** functions which can be employed to compute the spline's partial derivative

where the partial order and is the partial order in , for ; to compute the spline's indefinite integral

where is the integral order in , for ; to compute the spline's value at a point ; and to compute the value of the spline's partial derivative

at a point . Functions for reading, writing, freeing and insuring the **AMA Spline Library** AMA_SPLINE structure is properly defined are also provided. Following is a list of the **AMA Spline Library** functions for working with the AMA_SPLINE structure:

- AMA_SplineCheck() -
**Check Validity of Spline Structure** - AMA_SplineFree() -
**Free a Spline Structure** - AMA_SplineIntegral() -
**Analytic Integral of a Spline** - AMA_SplinePartial() -
**Analytic Partial of a Spline** - AMA_SplinePartialValue() -
**Evaluate Partial Derivative of a Spline** - AMA_SplineRead() -
**Read a Spline** - AMA_SplineValue() -
**Evaluate a Spline** - AMA_SplineWrite() -
**Write a Spline**

The program exampleAMA_Spline.c provides an example of using these functions. It was used to produced **Figure** Interpolants, Derivatives and Integrals of Lift Coefficient which contains the interpolant of the data computed by AMA_UnvInterp() and the monotonic interpolant computed by AMA_UnvMonoInterp(), see Univariate Data Functions. Both interpolants are shown in the left hand panel where the AMA_UnvInterp() interpolant is given in blue and the interpolant computed by AMA_UnvMonoInterp() is given in green, the red squares represent the data. The center panel contains the derivative of the two interpolants computed with AMA_SplinePartial() and the right hand panel contains their indefinite integrals computed with AMA_SplineIntegral().

Interpolant of | Derivative of | Integral of |
---|---|---|

AMA Spline Library Document - Version:1.0.0-a Date:02/24/16 - Generated by 1.8.5