Analisis Numerico 75.12 - se rompiooo el read me, lean el codigo jaja
Interpolación por Spline
Objetivo
El objetivo del punto en cuestión es proveer una forma genérica de construir un spline cúbico de frontera ligada a partir de los datos iniciales, y luego aplicar lo concluído a los datos dados en el enunciado.
Para realizar esto, primero se plantea el problema de interpolación con Spline de frontera ligada.
Luego, a partir de las ecuaciones que conforman las condiciones necesarias para la construcción del Spline, se llega a un sistema de ecuaciones. A partir de la resolución del mismo, se podrá finalmente construir el Spline buscado.
En la resolución del punto además se brindan dos implementaciones que, a partir de datos iniciales, construyen el Spline Cúbico.
Por último, todo lo concluído se aplica a los datos iniciales brindados por el enunciado, obteniendo $3$ splines, los cuales son graficados para poder apreciar la aproximación resultante.
Planteo
Para poder construir un Spline Cúbico de frontera ligada, se requiere conocer los siguientes valores:
$\quad \bullet \quad$ Puntos a interpolar (coordenadas $x$ e $y$).
$\quad \quad \rightarrow \quad$ siendo el conjunto de $x$ escrito con la notación $a = x_0 < x_1< \dots < x_n = b.$
$\quad \bullet \quad$ Valor de la derivada primera de la función en los extremos de la misma.
Luego, se plantean $6$ condiciones que deben cumplirse para la construcción del polinomio interpolador.
Cada Spline estará conformado por polinomios cúbicos $S_j(x)$, definidos en el subintervalo $[x_j, x_{j+1}]$ para cada $j = 0, 1, \dots, n-1$, de la forma
$S_j(x) = a_j + b_j (x-x_j) + c_j (x-x_j)^2 + d_j (x-x_j)^3$.
Desarrollo de las ecuaciones
Se realiza un análisis del problema a partir de las ecuaciones escritas en el ítem anterior, tal que se finaliza con un sistema lineal de ecuaciones:
Al resolver dicho sistema lineal, se obtendran los coeficientes ${c_j}^n_{j = 0}$ que se utilizarán en la construcción del spline.
Código
Se realizan dos implementaciones para poder construir un Spline a partir de los datos iniciales.
La primera forma es realizada a partir de lo concluído previamente.
$\quad \bullet \quad$ Con los datos iniciales se arman las matrices $A$ y $b$. $\quad \bullet \quad$ Luego se resuelve el sistema mediante la factorización $LU$, obteniendo los coeficientes ${c_j}^n_{j = 0}$.
$\quad \bullet \quad$ Se calculan los coeficientes restantes, sabiendo además que los coeficientes ${a_j}^n_{j = 0}$ corresponden a la coordenada $y$ de cada nodo:
$\quad\quad - \quad$ Los $b_j$ se calculan como:
$$b_j = \frac{a_{j+1}-a_j}{x_{j+1}-x_j} - \frac{(x_{j+1}-x_j)(2c_j + c_{j+1})}{3}$$
$\quad\quad - \quad$ Los $d_j$ se calculan a partir de
$$d_j = \frac{(c_{j+1} - c_j)}{3(x_{j+1}-x_j)}$$
La segunda forma es una implementación realizada a partir de lo explicado en la bibliografía de la materia.