You are on page 1of 5

Universidad Mayor de San Andrs

Ciencias Puras y Naturales


Informtica
Nombre: Rodrigo Diego Quispe Laura
Materia: Anlisis Numrico

Mtodos Interpolacin con MatLab


En matlab encontramos las siguientes funciones para interpolar dat os:
interp1 interpolacin de datos unidimensionales.
spline interpolacin con el mt odo de spline cbica
polyfit interpolacin con polinomios

El comando interp1
El comando interp1 se emplea para interpolar una serie de datos. El formato de este comando es:

yi = interp1(x, y, xi, mtodo)


Donde:
x : abscisa de los puntos a interpolar, expresada como vector fila.
y : ordenada de los puntos a interpolar, expresada como vector fila.
xi : abscisas para construir la funcin de interpolacin, expresada como vector fila. Si es un solo
valor, calcular el valor interpolando con la funcin declarada en mtodos.
mtodo: determina el mtodo de interpolacin, entre:
nearest interpolacin asignado el valor del vecino ms cercano.
linear interpolacin lineal (default)
spline interpolacin con spline cbica
pchip interpolacin con polinomios de Hermit e
cubic (igual que 'pchip')
v5cubic interpolacin Cbica usada in MA TLAB 5

Para calcular el valor interpolado, se puede proceder as:

Graficando todos los mtodos en una sola figura puede servir para su comparacin. Ejecute la siguiente
serie de comandos, ya sea a travs de la lnea de comandos o mediante un arc hivo m.

El comando spline
Otra manera de realizar una interpolacin de tipo spline, es invocando el comando spline, cuyo
formato se muestra a continuacin:

yy = spline (x, y, xx)


Donde:
x : abscisa de los puntos a interpolar, expresada como vector fila.
y : ordenada de los puntos a interpolar, expresada como vector fila.
xx : abscisas para construir la funcin de interpolacin, expresada como vector fila. Si es un
solo valor calcular el valor interpolando.
Ejemplo:

El comando polyfit
Calcula los coeficientes de un polinomio de grado n que ajustan, mediante mnimos cuadrados, a una
serie de datos. El formato de este comando se res ume, as:

yy = polyfit (x, y, orden)


x : abscisa de los puntos a interpolar, expresada como vector fila.
y : ordenada de los puntos a interpolar, expresada como vector fila.
orden: indica el orden del polinomio que se utilizar en el ajuste.
Adems, se usa el comando polyval para calcular el valor de un polinomio para un dado valor de x,

segn la forma:

y = polyval ( p , x )
donde: p es el polinomio, ingres ado como vector fila y x es el valor de la incgnita cuya imagen se
desea calcular.
Ejemplo:

Interpolacin con splines cbicos.


MATLAB trae implementada la funcin spline para la interpolacin por splines cbicos. El comando
yy = spline(x,y,xx)
efecta la interpolacin de la nube de puntos dada por los vectores x, y por medio de splines cbicos. En
la salida (variable yy) obtenemos los valores del spline evaluado en los puntos dados en el vector xx.
Si y es una matriz, la interpolacin se realiza para cada fila de y.
Por ejemplo, el listado
x = 0:10; y = sin(x);
xx = 0:.25:10;
yy = spline(x,y,xx);

plot(x,y,'o',xx,yy)
dibuja una aproximacin a la grfica de la funcin sen (t) a partir de la int erpolacin con splines cbicos.
Nota: Un resultado anlogo se puede obtener con la funcin interp1: yy = interp1(x,y,xx,'spline'); vea
ms detalles en la ayuda del programa.
Por defecto, se usan las condiciones "not-a-knot" (es decir, los nodos interiores extremos son pasivos).
Sin embargo, si el vector y contiene dos valores ms que el x, entonces el primer y el ltimo element o
del vector yse usan como valores de la derivada en los nodos extremos, y el spline construido es el
sujeto.
Por ejemplo, el listado
x = 0:10; y = sin(x);
ys=[-1, y, 5]; % Agregamos dos valores
xx = 0:.25:10;
yy = spline(x,ys,xx);
plot(x,y,'o',xx,yy)
dibuja una aproximacin a la grfica de la funcin sen (t) a partir de la int erpolacin con splines cbicos
sujetos, con pendientes -1 y 5 en los nodos 0 y 10, respectivamente.

Fuentes
http://www.matrixlab-examples.com/lagrange-interpolation.html
http://www.ual.es/~andrei/Practicas/practicaAM3.html

You might also like