Interpolation with cubic splines

In summary, we are looking at the proof of a theorem about a continuous function and a uniform partition. The theorem states that there is exactly one function meeting certain conditions. We use the linear Lagrange polynomial to find the function and integrate two times. Then, we try to find the constants using conditions. However, there may be an error in the given solution.
  • #1
evinda
Gold Member
MHB
3,836
0
Hello! :) I am looking at the proof of this theorem:
Let $f \in C^{1}([a,b]),P:a=x_{0}<x_{1}<...<x_{n}=b $ uniform partition of $[a,b]$.Then there is exactly one function $s \in S_{3}(P)$ so that $s(x_{i})=f(x_{i}),i=0,...,n$ and $s,s',s''$ continuous at $x_{i}$.Also,$s'(x_{0})=f'(x_{0}),s'(x_{n})=f'(x_{n})$.

but at some point I got stuck :confused:

Let $s'_{i}=s'(x_{i}),s''_{i}=s''(x_{i}),s_{i}=s(x_{i}),y_{i}=f(x_{i})$

From the linear Lagrange polynomial,we find that:
$$s''(x)=\frac{1}{h}[s''_{i}(x-x_{i-1})-s''_{i-1}(x-x_{i})] ,x \in [x_{i-1},x_{i}]$$

Then,integrating two times,we get:
$$s(x)=\frac{1}{6h}[s''_{i}(x-x_{i-1})^{3}-s''_{i-1}(x-x_{i})^{3}]+c_{i1}x+c_{i0}$$
Then using the conditions $s_{i-1}=y_{i-1},s_{i}=y_{i}$, we want to find the constants $c_{i1},c_{i0}$ .In my textbook,there is only the solution,which is $s(x)=\frac{1}{6h}[s''_{i}(x-x_{i-1})^{3}-s''_{i-1}(x-x_{i})^{3}]+(\frac{y_{i}}{h}-s''_{i}\frac{h}{6})(x-x_{i-1})-(\frac{y_{i-1}}{h}-s''_{i-1}\frac{h}{6})(x-x_{i})$

I tried to find the constants..For $c_{i1}$ I found $\frac{y_{i}-y_{i-1}}{h}-\frac{h}{6}(s''_{i}-s''_{i-1})$ ,but replacing the conditions and $c_{i1}$, I don't get the right result! Have I calculated wrong the value of $c_{i1}$ ?
From the condition $s_{i-1}=y_{i-1} \text{ and } c_{i1}$ I get $$c_{i0}=y_{i-1}-\frac{h^{2}}{6}s''_{i-1}-\frac{y_{i}-y_{i-1}}{h}x_{i-1}+\frac{h}{6}(s''_{i}-s''_{i-1})x_{i-1}$$
and from the condition $s_{i}=y_{i} \text{ and } c_{i1}$ I get $$c_{i0}=y_{i}-\frac{h^{2}}{6}s''_{i}-\frac{y_{i}-y_{i-1}}{h}x_{i}+\frac{h}{6}(s''_{i}-s''_{i-1})x_{i}$$
 
Mathematics news on Phys.org
  • #2
Hey evinda! :D

evinda said:
Hello! :) I am looking at the proof of this theorem:
Let $f \in C^{1}([a,b]),P:a=x_{0}<x_{1}<...<x_{n}=b $ uniform partition of $[a,b]$.Then there is exactly one function $s \in S_{3}(P)$ so that $s(x_{i})=f(x_{i}),i=0,...,n$ and $s,s',s''$ continuous at $x_{i}$.Also,$s'(x_{0})=f'(x_{0}),s'(x_{n})=f'(x_{n})$.

but at some point I got stuck :confused:

Let $s'_{i}=s'(x_{i}),s''_{i}=s''(x_{i}),s_{i}=s(x_{i}),y_{i}=f(x_{i})$

From the linear Lagrange polynomial,we find that:
$$s''(x)=\frac{1}{h}[s''_{i}(x-x_{i-1})-s''_{i-1}(x-x_{i})] ,x \in [x_{i-1},x_{i}]$$

Then,integrating two times,we get:
$$s(x)=\frac{1}{6h}[s''_{i}(x-x_{i-1})^{3}-s''_{i-1}(x-x_{i})^{3}]+c_{i1}x+c_{i0}$$
Then using the conditions $s_{i-1}=y_{i-1},s_{i}=y_{i}$, we want to find the constants $c_{i1},c_{i0}$ .In my textbook,there is only the solution,which is $s(x)=\frac{1}{6h}[s''_{i}(x-x_{i-1})^{3}-s''_{i-1}(x-x_{i})^{3}]+(\frac{y_{i}}{h}-s''_{i}\frac{h}{6})(x-x_{i-1})-(\frac{y_{i-1}}{h}-s''_{i-1}\frac{h}{6})(x-x_{i})$

I tried to find the constants..For $c_{i1}$ I found $\frac{y_{i}-y_{i-1}}{h}-\frac{h}{6}(s''_{i}-s''_{i-1})$ ,but replacing the conditions and $c_{i1}$, I don't get the right result! Have I calculated wrong the value of $c_{i1}$ ?

Nope. Your value of $c_{i1}$ is all good. (Nod)
Note that the given solution has factors $(x-x_i)$ and $(x-x_{i-1})$.
If you bundle the factors of $x$ from the solution, you get your $c_{i1}$.
From the condition $s_{i-1}=y_{i-1} \text{ and } c_{i1}$ I get $$c_{i0}=y_{i-1}-\frac{h^{2}}{6}s''_{i-1}-\frac{y_{i}-y_{i-1}}{h}x_{i-1}+\frac{h}{6}(s''_{i}-s''_{i-1})x_{i-1}$$
and from the condition $s_{i}=y_{i} \text{ and } c_{i1}$ I get $$c_{i0}=y_{i}-\frac{h^{2}}{6}s''_{i}-\frac{y_{i}-y_{i-1}}{h}x_{i}+\frac{h}{6}(s''_{i}-s''_{i-1})x_{i}$$

Well... I guess the solution should be of the form:
$$... + C(x-x_i) + D(x-x_{i-1}) + E$$
instead of
$$... + c_{i1}x+c_{i0}$$
I haven't checked, but presumably your $c_{i0}$ will be equal to $-Cx_i - Dx_{i-1}+E$.
 

FAQ: Interpolation with cubic splines

What is interpolation with cubic splines?

Interpolation with cubic splines is a mathematical technique used to construct a smooth curve that passes through a set of given data points. It is commonly used in data analysis and computer graphics to estimate values between known data points.

How does interpolation with cubic splines differ from linear interpolation?

Cubic splines use a piecewise polynomial function to approximate the curve between data points, whereas linear interpolation simply connects each data point with a straight line. This results in a smoother and more accurate curve with cubic splines.

What are the advantages of using cubic splines for interpolation?

Cubic splines provide a more accurate representation of the underlying data compared to linear interpolation. They also have the advantage of being able to handle discontinuous or unevenly spaced data points.

What are the limitations of interpolation with cubic splines?

Interpolation with cubic splines can be computationally intensive, especially for large datasets. It is also susceptible to overfitting if too many splines are used to fit the data, which can result in a less accurate curve.

How can I implement interpolation with cubic splines in my own data analysis?

There are several software packages and libraries that offer functions or algorithms for cubic spline interpolation, such as MATLAB, Python's SciPy library, and Microsoft Excel. These tools provide easy-to-use functions that allow you to input your data and generate a smooth spline curve. Alternatively, you can also code your own algorithm using the mathematical principles behind cubic splines.

Similar threads

Back
Top