Típicamente se da un spline cúbico para un conjunto de puntos tal que para cada intervalo se ajusta una función cúbica a los puntos, con pendientes y curvatura coincidentes, así como los puntos finales tienen curvatura cero (2ª derivada). Esta es la definición de un spline natural.
En tu caso tienes 4 puntos y 3 intervalos. El número de incógnitas es 12, ya que por cada intervalo hay 4 incógnitas (la parte cúbica).
Sus limitaciones son:
- Puntos en nodos dados (4 ecuaciones)
- Los puntos finales del intervalo coinciden (2 ecuaciones)
- Coincidencia de las pendientes finales de los intervalos (2 ecuaciones)
- Coincidencia de curvatura final de intervalo (2 ecuaciones)
- Punto final cuvatura cero (2 ecuaciones)
En total tienes 12 ecuaciones con 12 incógnitas.
Véase http://www.physics.utah.edu/~detar/phys6720/handouts/cubic_spline/cubic_spline/node1.html para más detalles. También wikipedia tiene un buen artículo.
Para su caso la solución es
y(x)=\begin{cases} \frac{2x(7-2x^{2})}{5} & x=0\ldots1\\ \frac{5x^{3}-27x^{2}+41x-9}{5} & x=1\ldots2\\ \frac{-x^{3}+9x^{2}-31x+39}{5} & x=2\ldots3 \end{cases}
Detalles
Para encontrar los splines, para cada intervalo tienes una función como
y_i(x) = y_i + B_i (x-x_i) + C_i (x-x_i)^2 + D_i (x-x_i)^3
donde (x_i,y_i) son los pares de coordenadas la spline. En realidad, si defines el siguiente par como (x_i+h,y_{i+1}) donde h=x_{i+1}-x_i entonces
y_i(x) = y_i + \frac{y_{i+1}-y_i}{h} (x-x_i) + C_i (x-x_i) (x-x_i-h) + D_i (x-x_i) \left((x-x_i)^2-h^2\right) que por supuesto tiene y(x_{i+1}=x_i+h) = y_{i+1}
Esto conduce a las expresiones
y'(x) = \frac{y_{i+1}-y_i}{h} + C_i \left( 2 (x-x_i)-h\right) +D_i \left( 3 (x-x_i)^2-h^2 \right) \\ y''(x) = 2 C_i + 6 D_i (x-x_i)
Ahora, en los extremos del i th intervalo
\begin{aligned} {y'}_i & = \frac{y_{i+1}-y_i}{h} - C_i h - D_i h^2 & {y'}_{i+1} &= \frac{y_{i+1}-y_i}{h} + C_i h + 2 D_i h^2 \\ {y''}_i & = 2 C_i & {y''}_{i+1} & = 2 C_i + 6 D_i h \end{aligned}
Nuestras curvas ya pasan por los puntos, y hay que desarrollar restricciones de continuidad.
Una spline natural tiene el primer y el último punto con curvatura cero. Si hay n+1 puntos, con n intervalos, entonces los puntos extremos tienen
\begin{aligned} 2 C_1 & = 0 & 2 C_n + 6 D_n h & = 0 \end{aligned}
Entre cada intervalo con i=2\ldots n la pendiente y la curvatura coinciden
\begin{aligned} \frac{y_i-y_{i-1}}{h} + C_{i-1} h + 2 D_{i-1} h^2 &= \frac{y_{i+1}-y_i}{h} - C_i h - D_i h^2 \\ 2 C_{i-1} + 6 D_{i-1} h & = 2 C_i \end{aligned}
Se trata de 2 + 2 (n-1) = 2 n ecuaciones y hay n incógnitas de C_i y n incógnitas de D_i para un total de 2n desconocidos. El problema está bien definido en este punto y se puede resolver. Por favor, que alguien revise mis cálculos porque puede que me haya equivocado en alguna parte.
NOTA: He supuesto un intervalo constante con h = x_{i}-x_{i-1} pero también puede adaptarse a una rejilla variable.