Interpolation with cubic splines!!

evinda

Well-known member
MHB Site Helper
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

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}$$

Klaas van Aarsen

MHB Seeker
Staff member
Hey evinda!

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

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.
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$$
$$... + c_{i1}x+c_{i0}$$
I haven't checked, but presumably your $c_{i0}$ will be equal to $-Cx_i - Dx_{i-1}+E$.