Professional Documents
Culture Documents
ejemplos de implementación:
>> t = [1 2 3 4 5];
>> p = [3 5 7 5 6];
>> x = 1:0.1:6;
>> y = interp1 (t, p, x, 'spline');
>> plot (t, p,'o',x, y)
Mario R. ROSENBERGER 1 de 4
Métodos Interpolación con MatLab 2 de 4
Graficando todos los métodos en una sola figura puede servir para su comparación. Ejecute la
siguiente serie de comandos, ya sea a través de la línea de comandos o mediante un archivo m.
t = [1 2 3 4 5 6 7 8];
p = [3 5 7 5 6 7 7 5];
% t=linspace(-1,1,10);
% p=1./(1+25*t.^2);
x = 1:0.1:8;
%x = linspace(-1,1,100);
y = interp1 (t, p, x, 'spline') ; plot (t, p,'o',x, y); hold on
y = interp1 (t, p, x, 'linear') ; plot (x, y,'r')
y = interp1 (t, p, x, 'nearest') ; plot (x, y,'g')
y = interp1 (t, p, x, 'pchip') ; plot (x, y,'b')
y = interp1 (t, p, x, 'cubic') ; plot (x, y,'c')
y = interp1 (t, p, x, 'v5cubic') ; plot (x, y,'m')
hold off
%
Mario R. ROSENBERGER
Métodos Interpolación con MatLab 3 de 4
El comando “spline”
Otra manera de realizar una interpolación de tipo spline, es invocando el comando spline, cuyo
formato se muestra a continuación:
Ejemplo:
x = 0:10;
y = sin(x);
xx = 0:.25:10;
yy = spline (x, y, xx);
plot (x, y, 'o', xx, yy) % el gráfico no se muestra en este ejemplo
El comando “polyfit”
Calcula los coeficientes de un polinomio de grado “n” que ajustan, mediante mínimos cuadrados, a una
serie de datos. El formato de este comando se resume, así:
Además, se usa el comando polyval para calcular el valor de un polinomio para un dado valor de x,
según la forma:
y = polyval ( p , x )
donde: p es el polinomio, ingresado como vector fila y x es el valor de la incógnita cuya imagen se
desea calcular.
Ejemplo:
>> t = [1 2 3 4 5];
>> m = [3 5 7 5 6];
Mario R. ROSENBERGER
Métodos Interpolación con MatLab 4 de 4
Mario R. ROSENBERGER