Last Modified: June 25, 2019

Returns a spline interpolated value at a single value given the tabulated values (*x*[*i*], *y*[*i*]) and the second derivatives of the cubic spline interpolating function that this node obtains from the Spline Interpolant node.

Tabulated value of the dependent variable.

This input accepts a double-precision, floating-point number or a 1D array of double-precision, floating-point numbers.

Tabulated value of the independent variable.

This input accepts a double-precision, floating-point number or a 1D array of double-precision, floating-point numbers.

Second derivative of the cubic spline interpolating function.

You can obtain **interpolant** from the Spline Interpolant node.

When **x** and **y** are 1D arrays of double-precision, floating-point numbers, the number of elements in **x**, **y**, and **interpolant** must be the same. Otherwise, this node sets **yi** to NaN and returns an error.

When **x** and **y** are double-precision, floating-point numbers, the number of elements in **interpolant** must equal **sample length**. Otherwise, this node sets **yi** to zero and returns an error.

A single value. **xi** must fall within the range [**x**_{0}, **x**_{n - 1}].

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an **error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Default: **No error

Length of each set of data. The node performs computation for each set of data.

**sample length** must be greater than zero.

This input is available only if you wire a double-precision, floating-point number to **x** or **y**.

**Default: **100

Cubic spline interpolation of *f* at the single value.

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

**error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

The points are formed by the input arrays **x** and **y**.

On the interval [*x*_{i}, *x*_{i + 1}], the following equation defines the interpolation value **yi**.

$\mathrm{yi}=A{y}_{i}+B{y}_{i+1}+C{y\prime \prime}_{i}+D{y\prime \prime}_{i+1}$

where

$A=\frac{{x}_{i+1}-x}{{x}_{i+1}-{x}_{i}}$

$B=1-A$

$C=\frac{1}{6}({A}^{3}-A){({x}_{i+1}-{x}_{i})}^{2}$

$D=\frac{1}{6}({B}^{3}-B){({x}_{i+1}-{x}_{i})}^{2}$

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported

Web Server: Not supported in VIs that run in a web application