Funciones > Análisis de datos > Interpolación y predicción > Interpolación B-spline
  
Interpolación B-spline
Las B-splines son un conjunto ponderado de funciones básicas para splines polinomiales.
bspline(vx, vy, u, n): permite devolver un vector vs, utilizado por interp, de los siguientes arrays anidados: un señalizador para interp, un array cuyas columnas contienen los coeficientes de una B-spline de grado n para los datos de vx y vy, dados los valores nudo de u, y un array cuyas columnas contienen los puntos finales de los intervalos especificados por los nudos.
La función bspline puede crear una spline lineal, cuadrática o cúbica. La spline resultante difiere de lspline, pspline o cspline en que bspline une los segmentos polinomiales en nudos que pueden ser diferentes de las ubicaciones de los puntos de datos.
Las funciones siguientes aceptan pesos sobre valores de datos, que reflejan el nivel de error relativo. El algoritmo de software calcula una cadena de nudos mediante la estadística de Durbin-Watson para decidir si debe aceptar o rechazar los ajustes de spline. De este modo, las B-splines estadísticas proporcionan un número mínimo de nudos para reflejar todas las funcionalidades de datos.
Spline2(vx, vy, n, [vw], [u], [level]): permite devolver el conjunto óptimo de nudos de B-spline de orden n para su interpolación en los datos vx y vy, con pesos opcionales vw, nudos deseados opcionales u y un nivel de rechazo opcional. El vector devuelto pasa a ser el segundo argumento de Binterp.
Binterp(x, b): permite devolver un valor interpolado y de B-spline correspondiente a x utilizando el vector de salida b de la función Spline2, así como la primera, la segunda y la tercera derivadas.
DWS(b): permite devolver la estadística de Durbin-Watson para el vector de salida b de la función Spline2.
La interpolación B-spline le permite trazar una curva por un conjunto de puntos tomando tres puntos adyacentes y creando un polinomio de grado n que pase por tales puntos. Estos polinomios se unen en los nudos para formar la curva completa. Si tiene menos nudos que puntos de datos, pero aún puede formar una aproximación razonable a y, B-splines es un buen método para la compresión de datos.
Las funciones B-spline anteriores se basan en el software Spline2, desarrollado por B. J. Thijsse y M. A. Hollanders (este software se documenta en http://dutsm183.stm.tudelft.nl/software/software.dita y su uso se hace con permiso).
Argumentos
vx, vy son vectores reales de valores de datos con la misma longitud.
u es un vector real de nudos en orden ascendente, con n − 1 elementos menos que vx. Los nudos son aquellos valores donde se ajustan entre sí los polinomios B-spline individuales, a diferencia de otros splines, donde los nudos tienen que ser los valores x. El primer elemento de u debe ser menor o igual que el primer elemento de vx. El último elemento de u debe ser mayor o igual que el último elemento de vx.
n es un entero igual a 1, 2 ó 3, que indica el grado de los ajustes de polinomios individuales por tramos lineales (n = 1), cuadráticos (n = 2) o cúbicos (n = 3) utilizados en B-spline.
vw es un vector opcional de pesos para la spline que tiene la misma longitud que vx y vy.
level es el nivel de rechazo, expresado como un porcentaje entre 0 y 1, ambos incluidos.
b es un vector generado por Spline2.
x es el valor de la variable independiente en el que desea evaluar la curva de interpolación. Para lograr los mejores resultados posibles, x debería estar en el rango comprendido entre los valores de vx.