{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"\n",
"*This notebook contains an excerpt from the [Python Programming and Numerical Methods - A Guide for Engineers and Scientists](https://www.elsevier.com/books/python-programming-and-numerical-methods/kong/978-0-12-819549-9), the content is also available at [Berkeley Python Numerical Methods](https://pythonnumericalmethods.berkeley.edu/notebooks/Index.html).*\n",
"\n",
"*The copyright of the book belongs to Elsevier. We also have this interactive book online for a better learning experience. The code is released under the [MIT license](https://opensource.org/licenses/MIT). If you find this content useful, please consider supporting the work on [Elsevier](https://www.elsevier.com/books/python-programming-and-numerical-methods/kong/978-0-12-819549-9) or [Amazon](https://www.amazon.com/Python-Programming-Numerical-Methods-Scientists/dp/0128195495/ref=sr_1_1?dchild=1&keywords=Python+Programming+and+Numerical+Methods+-+A+Guide+for+Engineers+and+Scientists&qid=1604761352&sr=8-1)!*"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"< [17.2 Linear Interpolation](chapter17.02-Linear-Interpolation.ipynb) | [Contents](Index.ipynb) | [17.4 Lagrange Polynomial Interpolation](chapter17.04-Lagrange-Polynomial-Interpolation.ipynb) >"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Cubic Spline Interpolation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In **cubic spline interpolation** (as shown in the following figure), the interpolating function is a set of piecewise cubic functions. Specifically, we assume that the points $(x_i, y_i)$ and $(x_{i+1}, y_{i+1})$ are joined by a cubic polynomial $S_i(x) = a_i x^3 + b_i x^2 + c_i x + d_i$ that is valid for $x_i \\le x \\le x_{i+1}$ for $i = 1,\\ldots, n-1$. To find the interpolating function, we must first determine the coefficients $a_i, b_i, c_i, d_i$ for each of the cubic functions. For $n$ points, there are $n-1$ cubic functions to find, and each cubic function requires four coefficients. Therefore we have a total of $4(n-1)$ unknowns, and so we need $4(n-1)$ independent equations to find all the coefficients.\n",
"\n",
"\n",
"\n",
"First we know that the cubic functions must intersect the data the points on the left and the right:\n",
"\n",
"\\begin{eqnarray*}\n",
"S_i(x_i) &=& y_i,\\quad i = 1,\\ldots,n-1,\\\\\n",
"S_i(x_{i+1}) &=& y_{i+1},\\quad i = 1,\\ldots,n-1,\n",
"\\end{eqnarray*}\n",
"\n",
"which gives us $2(n-1)$ equations. Next, we want each cubic function to join as smoothly with its neighbors as possible, so we constrain the splines to have continuous first and second derivatives at the data points $i = 2,\\ldots,n-1$.\n",
"\n",
"\\begin{eqnarray*}\n",
"S^{\\prime}_i(x_{i+1}) &=& S^{\\prime}_{i+1}(x_{i+1}),\\quad i = 1,\\ldots,n-2,\\\\\n",
"S''_i(x_{i+1}) &=& S''_{i+1}(x_{i+1}),\\quad i = 1,\\ldots,n-2,\n",
"\\end{eqnarray*}\n",
"\n",
"which gives us $2(n-2)$ equations.\n",
"\n",
"Two more equations are required to compute the coefficients of $S_i(x)$. These last two constraints are arbitrary, and they can be chosen to fit the circumstances of the interpolation being performed. A common set of final constraints is to assume that the second derivatives are zero at the endpoints. This means that the curve is a \"straight line\" at the end points. Explicitly,\n",
"\n",
"\\begin{eqnarray*}\n",
"S''_1(x_1) &=& 0\\\\\n",
"S''_{n-1}(x_n) &=& 0.\n",
"\\end{eqnarray*}\n",
"\n",
"In Python, we can use *scipy's* function *CubicSpline* to perform cubic spline interpolation. Note that the above constraints are not the same as the ones used by scipy's *CubicSpline* as default for performing cubic splines, there are different ways to add the final two constraints in scipy by setting the *bc_type* argument (see the help for *CubicSpline* to learn more about this). \n",
"\n",
"**TRY IT!** Use *CubicSpline* to plot the cubic spline interpolation of the data set *x = [0, 1, 2]* and *y = [1, 3, 2]* for $0\\le x\\le2$. "
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"from scipy.interpolate import CubicSpline\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"plt.style.use('seaborn-poster')"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"x = [0, 1, 2]\n",
"y = [1, 3, 2]\n",
"\n",
"# use bc_type = 'natural' adds the constraints as we described above\n",
"f = CubicSpline(x, y, bc_type='natural')\n",
"x_new = np.linspace(0, 2, 100)\n",
"y_new = f(x_new)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"