[justify]Dada una serie de puntos [math]\left(x_1,y_1\right),...,\left(x_n,y_n\right)[/math] donde las abcisas no son necesariamente equidistantes pero si convenientemente ordenadas de forma que [math]a=x_1[/math]<...<[math]x_n=b[/math], diremos entonces que una función spline de grado [math]3[/math] o spline cúbica, es una función [math]S[/math] definida en el intervalo [math]\left[a,b\right][/math] compuesta por un conjunto de polinomios o trazadores cúbicos de la forma[br][br][math]S_k\left(x\right)=a_k+b_k\left(x-x_k\right)+c_k\left(x-x_k\right)^2+d_k\left(x-x_k\right)^3[/math] [math]\forall x\in\left[x_k,x_{k+1}\right][/math] para cada [math]k=1,...,n-1[/math][/justify]que satisfacen las siguientes condiciones:[br][br]a) [math]S_k\left(x_k\right)=y_k[/math] para cada [math]k=1,...,n[/math];[br]b) [math]S_{k+1}\left(x_{k+1}\right)=S_k\left(x_{k+1}\right)[/math] para cada [math]k=1,...,n-2[/math][br]c) [math]S'_{k+1}\left(x_{k+1}\right)=S'_k\left(x_{k+1}\right)[/math] para cada [math]k=1,...,n-2[/math][br]d) [math]S''_{k+1}\left(x_{k+1}\right)=S''_k\left(x_{k+1}\right)[/math]para cada [math]k=1,...,n-2[/math][br]e) Se cumple una de las siguientes condiciones de frontera[br][list][*][math]S''_1\left(x_1\right)=S''_{n-1}\left(x_n\right)=0[/math] (frontera libre o frontera natural, spline cúbica natural)[/*][*][math]S'_1\left(x_1\right)=\alpha[/math] y [math]S'_{n-1}\left(x_n\right)=\beta[/math], (spline cúbica fija con frontera sujeta) [/*][/list] donde [math]\alpha[/math] y [math]\beta[/math] son números dados.[br][br][justify]La ecuación a) indica que la spline cúbica se ajusta a cada uno de los puntos, b) que es continua, c) y d) que es continua en pendiente y curvatura a lo largo de toda la región generada por los puntos.[br][br]Observe que dados [math]n[/math] puntos a interpolar, se necesitarán [math]n-1[/math] trazadores cúbicos lo cual implica que tendremos como incógnitas a [math]a_k,b_k,c_k[/math] y [math]d_k[/math] para [math]k=1,...,n-1[/math]. A continuación veremos la forma de construir éstos trazadores y como hallar cada una de las incognitas.[/justify]
[justify]Para construir el spline cúbico [math]S[/math], se pueden aplicar las condiciones anteriores a los trazadores cúbicos. [br][br]Observe que si [math]x=x_k[/math] entonces [math]S_k\left(x_k\right)=a_k=y_k[/math] [br][br]y si se aplica la condición b), [br][br][math]a_{k+1}=S_{k+1}\left(x_{k+1}\right)=S_k\left(x_{k+1}\right)=a_k+b_k\left(x_{k+1}-x_k\right)+c_k\left(x_{k+1}-x_k\right)^2+d_k\left(x_{k+1}-x_k\right)^3[/math] para cada [math]k=1,...,n-2[/math].[br][br]Introducimos la notación [math]h_k=x_{k+1}-x_k[/math] para cada [math]k=1,...,n-1[/math][br][br]si además definimos [math]a_n=y_n[/math], se puede ver que ésto implica que la ecuación [br][br][math]a_{k+1}=a_k+b_kh_k+c_kh^2_k+d_kh^3_k[/math] para cada [math]k=1,...,n-1[/math].[br][br]De manera similar definimos [math]b_n=S'\left(x_n\right)[/math] y observamos[br][br][math]S'_k\left(x\right)=b_k+2c_k\left(x-x_k\right)+3d_k\left(x-x_k\right)^2[/math][br][br]para [math]x=x_k[/math]: [math]S'_k\left(x_k\right)=b_k[/math] para cada [math]k=1,...,n-1[/math],[br][br]aplicando la condición c),[br][br][math]b_{k+1}=S'_{k+1}\left(x_{k+1}\right)=S'_k\left(x_{k+1}\right)=b_k+2c_kh_k+3d_kh^2_k[/math] para cada [math]k=1,...,n-1[/math].[br][br]Otra relación entre los coeficientes se obtiene[br][br][math]S''_k\left(x\right)=2c_k+6d_k\left(x-x_k\right)[/math] [br][br]para [math]x=x_k[/math]: [math]S''_k\left(x_k\right)=2c_k[/math] para cada [math]k=1,...,n-1[/math],[br][br]aplicando la condición d) y definiendo [math]c_n=\frac{S''\left(x_n\right)}{2}[/math] [br][br][math]c_{k+1}=S''_{k+1}\left(x_{k+1}\right)=S''_k\left(x_{k+1}\right)=c_k+3d_kh_k[/math] para cada [math]k=1,...,n-1[/math][br][br]Despejando [math]d_k[/math] de la ecuación anterior y sustituyendo [br][br][math]d_k=\frac{c_{k+1}-c_k}{3h_k}[/math] [math]\left(1\right)[/math][br][br][math]a_{k+1}=a_k+b_kh_k+c_kh^{^2}_k+\frac{c_{k+1}-c_k}{3h_k}\cdot h^3_k=a_k+b_kh_k+\frac{h^{^2}_k}{3}\left(2c_k+2c_{k+1}\right)[/math] [math]\left(2\right)[/math][br][br][math]b_{k+1}=b_k+2c_kh_k+3d_kh^{^2}_k=b_k+2c_kh_k+\left(c_{k+1}-c_k\right)h_k=b_k+\left(c_k+c_{k+1}\right)h_k[/math] [math]\left(3\right)[/math][br] [br]para cada [math]k=1,...,n-1[/math] [br][br]y luego una reducción del indice[br][br][math]b_k=b_{k-1}+\left(c_k+c_{k-1}\right)h_{k-1}[/math] [math]\left(4\right)[/math] [br][br]de [math]\left(2\right)[/math] despejamos [math]b_k[/math], [br][br][math]b_k=\frac{a_{k+1}-a_k}{h_k}-\frac{h_k}{3}\left(2c_k+c_{k+1}\right)[/math] [math]\left(5\right)[/math] [br][br]con una reducción del indice [br][br][math]b_{k-1}=\frac{a_k-a_{k-1}}{h_{k-1}}-\frac{h_{k-1}}{3}\left(c_k+2c_{k-1}\right)[/math] [math]\left(6\right)[/math][br][br]reemplazando [math]\left(5\right)[/math] y [math]\left(6\right)[/math] en [math]\left(4\right)[/math], tenemos[/justify][math]\frac{a_{k+1}-a_k}{h_k}-\frac{h_k}{3}\left(2c_k+2c_{k+1}\right)=\frac{a_k-a_{k-1}}{h_{k-1}}-\frac{h_{k-1}}{3}\left(c_k+2c_{k-1}\right)+h_{k-1}\left(c_k+c_{k-1}\right)[/math] [br][br]operando algebraicamente, nos queda [br][br][math]h_{k-1}c_{k-1}+2\left(h_{k-1}+h_k\right)c_k+h_kc_{k+1}=3\left(\frac{a_{k+1}-a_k}{h_k}-\frac{a_k-a_{k-1}}{h_{k-1}}\right)[/math] [math]\left(7\right)[/math] [br][br]introduciendo la notación [math]v_k=3\left(\frac{a_{k+1}-a_k}{h_k}-\frac{a_k-a_{k-1}}{h_{k-1}}\right)[/math][br][br][math]h_{k-1}c_{k-1}+2\left(h_{k-1}+h_k\right)c_k+h_kc_{k+1}=v_k[/math] [math]\left(8\right)[/math] [br][br][br]para cada [math]k=1,...,n-1[/math]. Este sistema tiene como incógnitas sólo a [math]\left\{c_k\right\}_{k=1}^n[/math] ya que los valores [math]\left\{h_k\right\}_{k=1}^{n-1}[/math] y [math]\left\{a_k\right\}_{k=1}^{n-1}[/math] están dados por el espaciamiento entre las abcisas [math]\left\{x_k\right\}_{k=1}^n[/math] y sus respectivos valores de [math]y_k[/math]
[justify]Nótese que una vez que se conocen los valores de [math]c_k[/math], encontrar los valores de las constantes [math]b_k[/math] de la ecuación [math]\left(5\right)[/math], [math]d_k[/math] de la ecuación [math]\left(1\right)[/math] y construir los trazadores cúbicos [math]S_k[/math] resulta una cuestión sencilla.[br]Si se cumplen las condiciones de frontera libre [math]S''_1\left(x_1\right)=S''_{n-1}\left(x_n\right)=0[/math] implican que [br][br][math]0=S''_1\left(x_1\right)=2c_1+6d_1\left(x_1-x_1\right)[/math][br][br][math]\Rightarrow c_1=0[/math][br][br][math]c_n=\frac{S''_{n-1}\left(x\right)}{2}=0\Rightarrow c_n=0[/math][/justify][justify]De acuerdo con Zapata (s.f) las dos ecuaciones [math]c_1=0[/math] y [math]c_n=0[/math] junto con las ecuaciones en [math]\left(8\right)[/math] producen un sistema lineal descrito por la ecuación vectorial [math]AX=B[/math], lo que nos da un total de [math]n[/math] ecuaciones con [math]n[/math] incognitas [math]c_k[/math] lo cual puede escribirse en la forma matricial[/justify]