Interpolación y Aproximación con Polinomios
Para una lista de puntos (xi, yi), se determina un polinomio que está determinado por estos puntos.
n+1 vértices, cada uno con diferentes coordenadas x, determinan únicamente un polinomio de interpolación de grado n.
Primero hay que determinar el número de vértices. También puede especificar el grado del polinomio deseado.
Si no se especifica ningún grado de polinomio, se determina un polinomio según el número de puntos mediante interpolación.
Si el grado del polinomio especificado en n puntos es menor que n-1, un polinomio en el sentido del método de mínimos cuadrados se determina mediante una aproximación.
A diferencia de la interpolación, no todos los puntos tienen que tener coordenadas x diferentes. Es suficiente si al menos g+1 puntos tienen diferentes coordenadas x en el polinomio de grado g.
Los puntos (xi, yi) se pueden manipular usando la tabla o haciendo clic y arrastrando con el mouse.
Interpolación
Para determinar los coeficientes de un polinomio de grado n de la forma
anxn + an-1xn-1 + ... + a2x2 + a1x + a0
Se necesitan n+1 ecuaciones.
Para un sistema de n puntos Pi(xi/yi) se pueden crear n ecuaciones:
an-1x1n-1 + ... + a2x12 + a1x1 + a0 = y1
an-1x2n-1 + ... + a2x22 + a1x2 + a0 = y2
...
an-1xnn-1 + ... + a2xn2 + a1xn + a0 = yn
o en notación matricial:
X a = y
Si las coordenadas x de los n puntos son todas distintas, la matriz X es regular y el sistema de ecuaciones puede resolverse de forma única.
El vector solución a contiene entonces los coeficientes del polinomio de interpolación de grado n-1.
Ejemplo:
Se dan los tres puntos P1(-1/3), P2(0/1) und P3(1/3).
El sistema de ecuaciones es entonces:
1·a2 - 1·a1 + 1·a0 = 3
0·a2 + 0·a1 + 1·a0 = 1
1·a2 + 1·a1 + 1·a0 = 3
con la solución:
a2 = 2, a1 = 0, a0 = 1
Por lo tanto, el polinomio de interpolación es:
2·x2 + 1
Aproximación
Si dispone de más puntos de los necesarios para interpolar un polinomio, puede proceder formalmente de forma análoga al plantear las ecuaciones.
Sin embargo, la matriz X ya no es cuadrada. Tiene más filas que columnas.
El sistema de ecuaciones está sobredeterminado.
Para determinar la solución, se multiplican ambos lados del sistema de ecuaciones, comenzando por la izquierda, por XT. Esto da:
XTX a = XTy.
La matriz de coeficientes resultante XTX es ahora simétrica y regular si los puntos utilizados tienen tantos coordenadas x diferentes
como coeficientes polinómicos desconocidos por determinar en a.
La solución del sistema de ecuaciones produce entonces los coeficientes de un polinomio que sigue aproximadamente la trayectoria de los puntos.
Ejemplo:
Dados los tres puntos P1(0,0), P2(1,1) y P3(2,4).
Buscamos una línea recta que pueda determinarse aproximadamente utilizando estos puntos.
Esto inicialmente da como resultado las siguientes tres ecuaciones:
0·a1 + 1·a0 = 0
1·a1 + 1·a0 = 1
2·a1 + 1·a0 = 4
El sistema de ecuaciones es entonces:
5·a1 + 3·a0 = 9
3·a1 + 3·a0 = 5
con la solución:
a1 = 2, a0 = -1/3
Por lo tanto, el polinomio de aproximación es:
2·x - 1/3.
Nota:
Los polinomios de grado superior suelen tener un curso muy inestable durante la interpolación y, por lo tanto, no son adecuados para la representación fluida de curvas que deben pasar por muchos puntos.
En el caso de muchos puntos de apoyo, se puede reducir el grado del polinomio, mientras que el número de puntos permanece sin cambios. Luego se obtienen curvas que aproximan los puntos en promedio cuanto más se pueda.
Esto es posible aquí especificando el grado del polinomio que se utilizará además del número de puntos.
O puede utilizar los llamados splines cúbicos. Estos son polinomios de tercer grado, cada uno de los cuales se inserta entre 2 puntos adyacentes.
otras aplicaciones en JavaScript